Rule-based, n-way, synchronization of multiple copies of a database
Abstract
The present invention relates to a method for synchronizing databases in a network environment. Specifically, the present invention pertains to a method of using a set of hierarchical rules to enable an efficient and speedy synchronization between multiple copies of a database. The present invention enables an “n-way” synchronization of databases where “n”, the number of databases synchronized, is essentially any number more than two. In one embodiment, the present invention provides rule-based, n-way, synchronization by selecting a focus copy of the database, comparing the data records of the focus copy against the same records in other copies of the database to identify those deleted and modified; removing all the records indicated to be deleted, modifying those to be modified, and adding new record identifiers in the case of multiple modifications to the same record.
Claims
exact text as granted — not AI-modified1. In a system having multiple copies of a database, a method of synchronizing said multiple copies of said database comprising the steps of:
a) identifying a focus copy of said multiple copies of said database;
b) processing and comparing records of said focus copy against records having a same identification tag but contained in other copies of said database to identify deleted and modified records with respect to said focus copy, said step only processing previously unprocessed records of said focus copy;
c) removing from all said copies of said database a record indicated by step b) as being deleted by any copy of said database, provided said record was not also modified by any other copy of said database;
d) with respect to any modified record indicated by step b), writing said modified record to all said copies of said database that do not already contain said modified record; and
e) selecting a new focus copy of said copies of said database and repeating steps b)-e) until all said copies of said database have been processed as a focus copy.
2. A method as described in claim 1 wherein said step b) also identifies new records of said focus copy and wherein further said step d) applies to said new records.
3. A method as described in claim 1 wherein step d) applies to a record that has been modified in one copy but deleted in another copy of said database.
4. A method as described in claim 1 wherein step d) applies to a record that has been modified in one copy but deleted in two other copies of said database.
5. A method as described in claim 1 wherein with respect to a record that has been modified in more than one copy, said step d) writes said modifications of said record to all copies of said database that do not already contain said modifications.
6. A method as described in claim 1 wherein at least one of said copies is for use with a separate device, wherein said separate device is a portable computer system.
7. In a system having copies of a database, each copy for use with a separate device, a method of synchronizing said copies of said database comprising the steps of:
a) processing and comparing records of a designated focus copy of said database against records having a same identification tag but contained in other copies of said database to identify deleted and modified records with respect to said focus copy, said step only processing previously unprocessed records of said focus copy;
b) removing from all said copies of said database a record indicated by step a) as being deleted by any copy of said database, provided said record was not also modified by any other copy of said database;
c) with respect to any modified record indicated by step a), writing said modified record to all said copies of said database that do not already contain said modified record; and
d) selecting a new focus copy of said copies of said database and repeating steps a)-d) until all said copies of said database have been processed as a focus copy.
8. A method as described in claim 7 wherein said step a) also identifies new records of said focus copy and wherein further said step c) applies to said new records.
9. A method as described in claim 7 wherein step c) applies to a record that has been modified in one copy but deleted in another copy of said database.
10. A method as described in claim 7 wherein step c) applies to a record that has been modified in one copy but deleted in two other copies of said database.
11. A method as described in claim 7 wherein with respect to a record that has been modified in more than one copy, said step c) writes said modifications of said record to all copies of said database that do not already contain said modifications.
12. A method as described in claim 7 wherein one of said separate device is a portable computer system.
13. A computer system comprising: a processor coupled to a bus; and an accessible memory space storing copies of a database, each copy for use with a separate device and wherein said memory space also contains instructions for implementing a method of synchronizing said copies of said database, said method comprising the steps of:
a) processing and comparing records of a designated focus copy of said database against records having a same identification tag but contained in other copies of said database to identify deleted and modified records with respect to said focus copy, said step only processing previously unprocessed records of said focus copy;
b) removing from all said copies of said database a record indicated by step a) as being deleted by any copy of said database, provided said record was not also modified by any other copy of said database;
c) with respect to any modified record indicated by step a), writing said modified record to all said copies of said database that do not already contain said modified record; and
d) selecting a new focus copy of said copies of said database and repeating steps a)-d) until all said copies of said database have been processed as a focus copy.
14. A computer system as described in claim 13 wherein said step a) of said method also identifies new records of said focus copy and wherein further said step c) applies to said new records.
15. A computer system as described in claim 13 wherein step c) of said method applies to a record that has been modified in one copy but deleted in another copy of said database.
16. A computer system as described in claim 13 wherein step c) of said method applies to a record that has been modified in one copy but deleted in two other copies of said database.
17. A computer system as described in claim 13 wherein, with respect to a record that has been modified in more than one copy, said step c) of said method writes said modifications of said record to all copies of said database that do not already contain said modifications.
18. A computer system as described in claim 13 wherein one of said separate device is a portable computer system.
19. A computer system as described in claim 13 wherein said database is an address database.
20. In a network of systems, each system having copies of a focus database, a method of synchronizing said multiple copies of said focus database comprising the steps of:
a) identifying one of said copies of said focus database; b) processing and comparing records of said focus copy against records having a same identification tag but contained in other copies of said database to identify deleted and modified records with respect to said focus copy, said step only processing previously unprocessed records of said focus copy; c) removing from all said copies of said database a record indicated by step b) as being deleted by any copy of said focus database, provided said record was not also modified by any other copy of said database; d) with respect to any modified record indicated by step b), writing said modified record to all said copies of said database that do not already contain said modified record; and e) selecting a new copy of said copies of said focus database and repeating steps b)-e) until all said copies of said database have been processed as a focus copy.
21. A method as described in claim 20 wherein said step b) also identifies new records of said focus copy and wherein further said step d) applies to said new records.
22. A method as described in claim 20 wherein step d) applies to a record that has been modified in one copy but deleted in another copy of said database.
23. A method as described in claim 20 wherein step d) applies to a record that has been modified in one copy but deleted in two other copies of said database.
24. A method as described in claim 20 wherein with respect to a record that has been modified in more than one copy, said step d) writes said modifications of said record to all copies of said database that do not already contain said modifications.
25. A method as described in claim 20 wherein at least one of said copies is for use with a separate device, wherein said separate device is a portable computer system.
26. In a system having copies of a database, each copy for use with a separate device, a method of synchronizing a user selected subset of said copies of said database comprising the steps of:
a) processing and comparing records of a user selected focus copy of said database against records having a same identification tag but contained in other copies of said database to identify deleted and modified records with respect to said user selected focus copy, said step only processing previously unprocessed records of said focus copy; b) removing from all said copies of said database a record indicated by step a) as being deleted by any copy of said database, provided said record was not also modified by any other copy of said database; c) with respect to any modified record indicated by step a), writing said modified record to all said copies of said database that do not already contain said modified record; and d) selecting a new focus copy of said copies of said database and repeating steps a)-d) until all said copies of said database have been processed as a focus copy.
27. A method as described in claim 26 wherein said step a) also identifies new records of said focus copy and wherein further said step c) applies to said new records.
28. A method as described in claim 26 wherein step c) applies to a record that has been modified in one copy but deleted in another copy of said database.
29. A method as described in claim 26 wherein step c) applies to a record that has been modified in one copy but deleted in two other copies of said database.
30. A method as described in claim 26 wherein with respect to a record that has been modified in more than one copy, said step c) writes said modifications of said record to all copies of said database that do not already contain said modifications.
31. A method as described in claim 26 wherein one of said separate device is a portable computer system.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.