System and method for synchronizing data records between multiple databases
First Claim
1. A method of synchronizing data records stored in a first and second database, comprising the steps of:
- associating a pair of synchronization parameters with each data record stored in the first and second databases, the pair including a first synchronization parameter associated with the first database, and a second synchronization parameter associated with the second database;
updating a data record at the first database;
incrementing the first synchronization parameter associated with the updated data record at the first database;
transmitting a first update message from the first database to the second database, the first update message including the incremented first synchronization parameter, the second synchronization parameter, and the updated data record from the first database;
receiving the first update message at the second database; and
updating the data record at the second database using the information from the first update message.
4 Assignments
0 Petitions
Accused Products
Abstract
A system and method for synchronizing data records between multiple databases is provided. Each database includes data records that are modified to include at least one pair of synchronization parameters. In a two-database system including a first database and a second database, each data record is modified to include synchronization parameters for both the first and second databases. When an update is made to a data record at one of the databases, an update message is transmitted to the other database including both synchronization parameters from the database where the update is made, along with the updated data record. An efficient master-slave configuration between the databases then enables either database to resolve conflicts without further communications. The system and method scale to systems having more than two databases by modifying the data records in at least one of the databases to include a pair of synchronization parameters for each of the other databases to which it is being synchronized, and by providing a multi-level master-slave configuration. The system and method permits the ability to add and delete records and to securely communicate between all synchronized databases.
-
Citations
53 Claims
-
1. A method of synchronizing data records stored in a first and second database, comprising the steps of:
-
associating a pair of synchronization parameters with each data record stored in the first and second databases, the pair including a first synchronization parameter associated with the first database, and a second synchronization parameter associated with the second database;
updating a data record at the first database;
incrementing the first synchronization parameter associated with the updated data record at the first database;
transmitting a first update message from the first database to the second database, the first update message including the incremented first synchronization parameter, the second synchronization parameter, and the updated data record from the first database;
receiving the first update message at the second database; and
updating the data record at the second database using the information from the first update message. - View Dependent Claims (2, 3, 5, 6, 7, 8, 9, 10)
-
-
4. The method of 1, further comprising the step of:
designating one of the databases as the master database and the other database as a slave database.
-
11. A method of synchronizing data records stored in a host system and a portable data communication device, comprising the steps of:
-
associating a first device synchronization parameter and a first host synchronization parameter with the data records stored at the host system;
associating a second device synchronization parameter and a second host synchronization parameter with the data records stored at the device;
if a data record is updated at the host system, then updating the first host synchronization parameter, and transmitting a first update message to the device; and
if a data record is updated at the device, then updating the second device synchronization parameter, and transmitting a second update message to the host. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A method of resolving conflicts in a data record synchronization system that synchronizes data records between a host system and a portable data communication device, comprising the steps of:
-
designating the host system as the master an the portable data communication device as the slave;
simultaneously updating a particular data record at both the host system and the portable data communication device;
transmitting a first update message from the host system to the portable data communication device, the first update message including a first host synchronization parameter, a first device synchronization parameter, and the updated data record stored at the host system;
transmitting a second update message from the portable data communication device to the host system, the second update message including a second host synchronization parameter, a second device synchronization parameter, and the update data record stored at the device;
receiving the second update message at the host system, detecting a conflict has occurred for the particular data record, an ignoring the second update message; and
receiving the first update message at the host system, detecting a conflict has occurred for the particular data record, and updating the data record at the device using the information from the first update message.
-
-
18. A system for synchronizing data records stored in a first and second database, comprising:
-
means for associating a pair of synchronization parameters with each data record stored in the first and second databases, the pair including a first synchronization parameter associated with the first database, and a second synchronization parameter associated with the second database;
means for updating a data record at the first database;
means for incrementing the first synchronization parameter associated with the updated data record at the first database;
means for transmitting a first update message from the first database to the second database, the first update message including the incremented first synchronization parameter, the second synchronization parameter, and the updated data record from the first database;
means for receiving the first update message at the second database; and
means for updating the data record at the second database using the information from the first update message.
-
-
19. A data record synchronization system, comprising:
-
a host system coupled to a host database, wherein the host database stores data records that have been modified to include a first host synchronization parameter and a first device synchronization parameter;
a portable data communication device coupled to a device database, wherein the device database stores data records that have been modified to include a second host synchronization parameter and a second device synchronization parameter;
a network coupling the host system to the portable data communication device;
software operating at the host system for updating a data record and for generating a first update message that is transmitted to the device when a data record is updated at the host, the first update message including the first host synchronization parameter, the first device synchronization parameter, and the updated data record stored at the host system; and
software operating at the portable data communication device for updating a data record and for generating a second update message that is transmitted to the host when a data record is updated at the device, the second update message including the second host synchronization parameter, the second device synchronization parameter, and the updated data record stored at the device. - View Dependent Claims (20, 21, 22, 23, 24)
-
-
25. A method of synchronizing data records stored in a portable data communication device and at least two host systems, comprising the steps of:
-
associating a pair of synchronization parameters with each data record stored in the host systems, the pair including a first synchronization parameter associated with one of the host systems, and a second synchronization parameter associated with the portable data communication device;
associating two pairs of synchronization parameters with each data record stored in the portable data communication device, each pair including a first synchronization parameter associated with one of the host systems, and a second synchronization parameter associated with the portable data communication device;
updating a data record at one of the host systems;
incrementing the first synchronization parameter associated with the updated data record at the one host system;
transmitting a first update message from the one host system to the portable data communication device, the first update message including the incremented first synchronization parameter, the second synchronization parameter, and the updated data record from the one host system;
receiving the first update message at the portable data communication device; and
updating the data record at the portable data communication device using the information from the first update message. - View Dependent Claims (26)
-
-
27. A method of replicating data records created in a first database in a second database, comprising the steps of:
-
creating a new data record in the first database;
associating a pair of synchronization parameters with the new data record in the first database, the pair including a first synchronization parameter associated with the first database, and a second synchronization parameter associated with the second database;
transmitting an add record message from the first database to the second database, the add record message including the first synchronization parameter, the second synchronization parameter, and the new data record from the first database;
receiving the add record message at the second database; and
adding the new data record at the second database using the information from the add record message. - View Dependent Claims (28, 29, 30, 31, 32, 33, 34, 35)
-
-
36. A system for replicating data records added to a first database in a second database, comprising:
-
means for adding a new data record to the first database;
means for associating a pair of synchronization parameters with the new data record stored in the first database, the pair including a first synchronization parameter associated with the first database and a second synchronization parameter associated with the second database;
means for transmitting an add record message from the first database to the second database, the add record message including the first synchronization parameter, the second synchronization parameter, and the new data record from the first database;
means for receiving the add record message at the second database; and
means for storing the new data record at the second database using the information from the add record message. - View Dependent Claims (37, 38, 39, 40, 41, 42, 43)
-
-
44. A secure data record synchronization system, comprising:
-
a host system coupled to a host database, wherein the host database stores data records that have been modified to include a first host synchronization parameter and a first device synchronization parameter;
a portable data communication device coupled to a device database, wherein the device database stores data records that have been modified to include a second host synchronization parameter and a second device synchronization parameter;
a network coupling the host system to the portable data communication device;
software operating at the host system for updating a data record and for generating a first update message that is encrypted and transmitted to the device when a data record is updated at the host, the first update message including the first host synchronization parameter, the first device synchronization parameter, and the updated data record stored at the host system; and
software operating at the portable data communication device for updating a data record and for generating a second update message that is encrypted and transmitted to the host when a data record is updated at the device, the second update message including the second host synchronization parameter, the second device synchronization parameter, and the updated data record stored at the device.
-
-
45. A method of deleting a data record from a first database and a second database, comprising the steps of:
-
selecting a data record stored in the first database for deletion;
preparing a delete record message including the data record;
transmitting the delete record message to the second database;
deleting the data record from the first database;
receiving the delete record message at the second database; and
deleting the data record from the second database. - View Dependent Claims (46, 47)
-
-
48. A system for deleting a data record from a first database and a second database, comprising:
-
means for selecting a data record for deletion from the first database;
means for preparing a delete record message including the data record;
means for deleting the data record from the first database;
a transmitter for transmitting the delete record message to the second database;
means for receiving the deleted record message at the second database; and
means responsive to the means for receiving for deleting the data record from the second database.
-
-
49. A data structure, comprising:
-
a data portion comprising one or more data fields;
a first parameter associated with a first data store in which the data fields are stored; and
a second parameter associated with a second data store in which the data fields are stored. - View Dependent Claims (50, 51, 52, 53)
-
Specification