Method for optimization of synchronization between a client's database and a server database
First Claim
1. A method for synchronizing a first database with a second database, comprising the steps of:
- transmitting a first synchronization message from the first database to the second database, the first synchronization message containing mapping records from a previous database synchronization process, updates for the second database, a current synchronization time and a last synchronization time, wherein the step of transmitting a first synchronization message further comprises the steps of;
determining a number of changes since the last synchronization time;
determining which of at least one stored mapping record to send as the mapping records from the previous synchronization process;
comparing the determined number of changes to the determined at least one stored mapping record to determine the updates for the second database;
updating the second database responsive to the first synchronization message;
transmitting a second synchronization message from the second database to the first database, the second synchronization message comprising updates for the first database, results of updates responsive to the first synchronization message and the received current synchronization time from the first synchronization message;
updating the first database responsive to the second synchronization message;
storing new mapping records for a present synchronization process for transmission during a next synchronization process.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system for synchronizing a first database with a second database is disclosed. A client containing a first version of a database transmits a first synchronization message from the client to the server. The message contains MAPITEM records from a previous synchronization process, UPDATES for the present synchronization process, a current synchronization time and a last synchronization time. A second version of the database within a server is updated responsive to the first synchronization message. The server transmits a second synchronization message to the client containing UPDATES to be performed at the client, the RESULTS of the updates requested by the client, and the received current synchronization time from the first synchronization message. The client updates the first database, removes the previously transmitted MAPITEMs and stores the MAPITEM records for the present synchronization process for transmission during a next synchronization process.
-
Citations
12 Claims
-
1. A method for synchronizing a first database with a second database, comprising the steps of:
-
transmitting a first synchronization message from the first database to the second database, the first synchronization message containing mapping records from a previous database synchronization process, updates for the second database, a current synchronization time and a last synchronization time, wherein the step of transmitting a first synchronization message further comprises the steps of;
determining a number of changes since the last synchronization time;
determining which of at least one stored mapping record to send as the mapping records from the previous synchronization process;
comparing the determined number of changes to the determined at least one stored mapping record to determine the updates for the second database;
updating the second database responsive to the first synchronization message;
transmitting a second synchronization message from the second database to the first database, the second synchronization message comprising updates for the first database, results of updates responsive to the first synchronization message and the received current synchronization time from the first synchronization message;
updating the first database responsive to the second synchronization message;
storing new mapping records for a present synchronization process for transmission during a next synchronization process. - View Dependent Claims (2, 3, 4, 5, 6)
confirming that the received current synchronization time is after the received last synchronization time;
updating a mapping table responsive to the received mapping records; and
updating records of the second database responsive to the updates for the second database in the first synchronization message.
-
-
3. The method of claim 2 wherein the step of updating further comprises the step of storing the current synchronization time as the last synchronization time at the second database.
-
4. The method of claim 1, wherein the step of updating the first database further comprises the step of updating records of the first database responsive to the updates for the first database in the second synchronization message.
-
5. The method of claim 4, wherein the step of updating the first database further comprises updating a last synchronization time responsive to the second synchronization message.
-
6. The method of claim 1, wherein the step of storing new mapping records further comprises the steps of removing the mapping records contained within the first synchronization message.
-
7. A system for achieving synchronization between a first database and a second database, comprising:
-
a client associated with the first database, the client configured to;
transmit a first synchronization message from the first database to the second database, the first synchronization message containing mapping records from a previous database synchronization process, updates for the second database, a current synchronization time and a last synchronization time, wherein the client is further configured to;
determine a number of changes since the last synchronization time;
determine which of at least one stored mapping record to send as the mapping records from the previous synchronization process;
compare the determined number of changes to the determined mapping records to determine the updates for the second database;
store new mapping records for transmission during a next synchronization process responsive to a second synchronization message;
update the first database response to the second synchronization message;
a server associated with the second database, the server configured to;
update the second database responsive to the first synchronization message;
transmit the second synchronization message from the second database to the first database, the second synchronization message comprising updates for the first database, results of updates responsive to the first synchronization message and the received current synchronization time from the first synchronization message. - View Dependent Claims (8, 9, 10, 11, 12)
confirm that the received current synchronization time is after the received last synchronization time;
update a mapping table responsive to the received mapping records; and
update records of the second database responsive to the updates for the second database in the first synchronization message.
-
-
9. The system of claim 7 wherein the server is further configured to store the current synchronization time as the last synchronization time at the second database.
-
10. The system of claim 9, wherein the client is further configured to determine the received current time is after the last synchronization time.
-
11. The system of claim 7, wherein the server is further configured to update records of the first database responsive to the updates for the first database in the second synchronization message.
-
12. The system of claim 7, wherein the server is further configured to removing the mapping records contained within the first synchronization message.
Specification