Method, system and program for synchronizing data
First Claim
1. A method for synchronizing server data records in a server database with client data records in a client database, comprising:
- associating server data records in the server database with corresponding client data records from a client in the client database and with stored digests, wherein the stored digest for one server data record is computed from a previously received client data record transmitted from the client that is associated with the server data record, wherein the server data record was previously updated with the previously received client data record;
receiving one of the client data records from the client;
determining one of the server data records corresponding to the received client data record;
computing a current digest from the received client data record;
determining whether the computed current digest matches the stored digest associated with the determined server data record;
checking whether the determined server data record was modified;
updating the determined server data record to include modified data from the received client data record if the computed current digest and stored digest do not match and if the server data record was not modified;
transmitting modified data from the server data record to the client if the server data record was modified and the current and stored digests match; and
applying a conflict resolution policy if the server data record was modified and the current and stored digests do not match to determine one of updating the server data record with modified data from the received client data record or transmitting modified data from the server data record to the client.
1 Assignment
0 Petitions
Accused Products
Abstract
Provided are a method, system, and program for synchronizing data. A client data record is received from a client and a determination is made of a server data record corresponding to the client data record and a stored digest generated from a previously received version of the received client data record. A current digest is computed from the received client data record. A determination is then made as to whether the computed current digest matches the stored digest. The server data record is updated with modified data from the received client data record if the computed digest and stored digest do not match.
39 Citations
20 Claims
-
1. A method for synchronizing server data records in a server database with client data records in a client database, comprising:
-
associating server data records in the server database with corresponding client data records from a client in the client database and with stored digests, wherein the stored digest for one server data record is computed from a previously received client data record transmitted from the client that is associated with the server data record, wherein the server data record was previously updated with the previously received client data record; receiving one of the client data records from the client; determining one of the server data records corresponding to the received client data record; computing a current digest from the received client data record; determining whether the computed current digest matches the stored digest associated with the determined server data record; checking whether the determined server data record was modified; updating the determined server data record to include modified data from the received client data record if the computed current digest and stored digest do not match and if the server data record was not modified; transmitting modified data from the server data record to the client if the server data record was modified and the current and stored digests match; and applying a conflict resolution policy if the server data record was modified and the current and stored digests do not match to determine one of updating the server data record with modified data from the received client data record or transmitting modified data from the server data record to the client. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system for synchronizing data in communication with a client including a client database having client data records, comprising:
-
a server database including server data records; means for associating server data records corresponding to client data records from the client and associated with stored digests, wherein the stored digest for one server data record is computed from a previously received client data record associated with the server data record, wherein the server data record was previously updated with the previously received client data record; means for receiving one of the client data records from the client; means for determining one of the server data records corresponding to the received client data record; means for computing a current digest from the received client data record; means for determining whether the computed current digest matches the stored digest associated with the determined server data record; means for checking whether the determined server data record was modified; means for updating the determined server data record to include modified data from the received client data record if the computed current digest and stored digest do not match and if the server data record was not modified; means for transmitting modified data from the server data record to the client if the server data record was modified and the current and stored digests match; and means for applying a conflict resolution policy if the server data record was modified and the current and stored digests do not match to determine one of updating the server data record with modified data from the received client data record or transmitting modified data from the server data record to the client. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. An article of manufacture for synchronizing server data records in a server database with client data records in a client database within a client, wherein the article of manufacture causes operations to be performed, the operations comprising:
-
associating server data records in the server database with corresponding client data records from the client and associated with stored digests, wherein the stored digest for one server data record is computed from a previously received client data record transmitted from the client that is associated with the server data record, wherein the server data record was previously updated with the previously received client data record; receiving one of the client data records from the client; determining one of the server data records corresponding to the client data record; computing a current digest from the received client data record; determining whether the computed current digest matches the stored digest associated with the determined server data record; checking whether the determined server data record was modified; updating the determined server data record to include modified data from the received client data record if the computed current digest and stored digest do not match and if the server data record was not modified; transmitting modified data from the server data record to the client if the server data record was modified and the current and stored digests match; and applying a conflict resolution policy if the server data record was modified and the current and stored digests do not match to determine one of updating the server data record with modified data from the received client data record or transmitting modified data from the server data record to the client. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification