System and method for synchronizing data in multiple databases
First Claim
1. A system for synchronizing data records between a secondary database and a distributed database system comprising:
- one or more processors;
a distributed database system comprising at least two source databases including at least one main database having a plurality of records, and at least one replica database having a subset of one or more records of the plurality of records contained in the main database, and further identifying each record within the source databases using a source database record identifier;
a secondary database including one or more records that are each record identified by a secondary database record identifier, wherein one or more of the secondary database records corresponds to a record within each source database;
an identification mapping database associated with each source database, the identification mapping database including a mapping table for associating secondary database record identifiers to corresponding source database record identifiers;
a replica identification database associated with the secondary database that contains an entry for each respective source database, each entry comprising information regarding a last synchronization between the secondary database and the respective source database including a time when the last synchronization occurred;
a delta modification database identifying and storing information including the secondary database record identifier corresponding to the one or more records of the secondary database that have been modified since the last synchronization between the secondary database and each source database according to the replica identification database, wherein the stored information for each identified record that has been modified since the last synchronization further includes an action flag that describes an action taken on the identified record; and
a synchronization module that synchronizes records that are identified by the delta modification database into corresponding records within each source database based at least in part on the mapping table and the action flag, wherein the replica identification database is updated to include the time of synchronization and the delta modification database is updated to store version numbers of said synchronized records for said synchronization.
1 Assignment
0 Petitions
Accused Products
Abstract
A system, method, and processor readable medium containing code for causing a processor to synchronize a secondary database system, such as one stored on a palmtop electronic device, with a distributed database system, comprising a main database and at least one replica database. The system further comprises a modification module that contains entries for modifications that have been made to the secondary database since a previous synchronization between the secondary database and the distributed database system and a synchronization module that synchronizes the secondary database with one of the databases of the distributed database system using the modification module. Each database in the distributed database system stores an identification mapping database having an assigned version number. The system further comprises a replica identification database associated with the secondary database that contains an entry for each source database of the distributed database system, each entry comprising information regarding the last synchronization between the secondary database and the source database including the version of the identification mapping database associated with the source database when the synchronization occurred. A pruning module is provided for pruning entries from the modification module using the replication identification database.
-
Citations
37 Claims
-
1. A system for synchronizing data records between a secondary database and a distributed database system comprising:
-
one or more processors; a distributed database system comprising at least two source databases including at least one main database having a plurality of records, and at least one replica database having a subset of one or more records of the plurality of records contained in the main database, and further identifying each record within the source databases using a source database record identifier; a secondary database including one or more records that are each record identified by a secondary database record identifier, wherein one or more of the secondary database records corresponds to a record within each source database; an identification mapping database associated with each source database, the identification mapping database including a mapping table for associating secondary database record identifiers to corresponding source database record identifiers; a replica identification database associated with the secondary database that contains an entry for each respective source database, each entry comprising information regarding a last synchronization between the secondary database and the respective source database including a time when the last synchronization occurred; a delta modification database identifying and storing information including the secondary database record identifier corresponding to the one or more records of the secondary database that have been modified since the last synchronization between the secondary database and each source database according to the replica identification database, wherein the stored information for each identified record that has been modified since the last synchronization further includes an action flag that describes an action taken on the identified record; and a synchronization module that synchronizes records that are identified by the delta modification database into corresponding records within each source database based at least in part on the mapping table and the action flag, wherein the replica identification database is updated to include the time of synchronization and the delta modification database is updated to store version numbers of said synchronized records for said synchronization. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 18, 19)
-
-
12. A system for synchronizing data records between a secondary database and a distributed database system comprising:
-
one or more processors; a distributed database system means comprising at least two source databases including at least one main database having a plurality of records, and at least one replica database having a subset of one or more records of the plurality of records contained in the main database, and further identifying each record within the source databases using a source database record identifier; a secondary database means including one or more records that are each record identified by a secondary database record identifier, wherein one or more of the secondary database records corresponds to a record within each source database; an identification mapping database means associated with each source database, the identification mapping database including a mapping table for associating secondary database record identifiers to corresponding source database record identifiers; a replica identification database means associated with the secondary database that contains an entry for each respective source database, each entry comprising information regarding a last synchronization between the secondary database and the respective source database including a time when the last synchronization occurred; a delta modification database means identifying and storing information including a secondary database record identifier corresponding to the one or more records of the secondary database that have been modified since the last synchronization between the secondary database and each source database according to the replica identification database, wherein the stored information for each identified record that has been modified since the last synchronization further includes an action flag that describes an action taken on the identified record; and a synchronization means that synchronizes records that are identified by the delta modification database into corresponding records within each source database based at least in part on the mapping table and the action flag, wherein the replica identification database is updated to include the time of synchronization and the delta modification database is updated to store version numbers of said synchronized records for said synchronization means. - View Dependent Claims (13, 14, 15, 16, 17, 20, 21, 22)
-
-
23. A method for synchronizing data records between a secondary database and a distributed database system, comprising:
-
providing at least two source databases including at least one main database and at least one replica database, the at least one main database having a plurality of records, the at least one replica database having a subset of one or more records of the plurality of records contained in the at least one main database, and identifying each record within the at least two source databases by source database identifiers; providing a secondary database including one or more records, each record identified by a secondary database record identifier, wherein one or more of the secondary database records corresponds to a record with each source database; associating each source database with an identification mapping database, the identification mapping database includes a mapping table for associating secondary database record identifiers to corresponding source database record identifiers; associating the secondary database with a replica identification database, the replica identification database contains an entry for each respective source database, each entry comprising information regarding a last synchronization between the secondary database and the respective source database including a time when the last synchronization occurred; providing a delta modification database that identifies and stores information including the secondary database record identifier corresponding to the one or more records of the secondary database that have been modified since the last synchronization between the secondary database and each source database according to the replica identification database, wherein the stored information for each identified record that has been modified since the last synchronization further includes an action flag that describes an action taken on the identified record; synchronizing records that are identified by the delta modification database into corresponding records within each source database based at least in part on the mapping table and the action flag, wherein the replica identification database is updated to include the time of synchronization; and storing updated version numbers of said synchronized records in the delta modification database for said synchronizing. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30)
-
-
31. A processor readable storage medium having code embodied therein for synchronizing data records between a secondary database and a distributed database system, comprising:
-
providing at least two source databases including at least one main database and at least one replica database, the at least one main database having a plurality of records, the at least one replica database having a subset of one or more records of the plurality of records contained in the at least one main database, and identifying each record within the at least two source databases by source database identifiers; providing a secondary database including one or more records, each record identified by a secondary database record identifier, wherein one or more of the secondary database records corresponds to a record with each source database; associating each source database with an identification mapping database, the identification mapping database includes a mapping table for associating secondary database record identifiers to corresponding source database record identifiers; associating the secondary database with a replica identification database, the replica identification database contains an entry for each respective source database, each entry comprising information regarding a last synchronization between the secondary database and the respective source database including a time when the last synchronization occurred; providing a delta modification database that identifies and stores information including the secondary database record identifier corresponding to the one or more records of the secondary database that have been modified since the last synchronization between the secondary database and each source database according to the replica identification database, wherein the stored information for each identified record that has been modified since the last synchronization further includes an action flag that describes an action taken on the identified record; synchronizing records that are identified by the delta modification database into corresponding records within each source database based at least in part on the mapping table and the action flag, wherein the replica identification database is updated to include the time of synchronization; and storing updated version numbers of said synchronized records in the delta modification database for said synchronizing. - View Dependent Claims (32, 33, 34, 35, 36, 37)
-
Specification