On demand multi-location large database synchronization system
AssigneeNeustar Information Services, Inc.
InventorsJames D. Shaffer, Alex Oliveira
Life of this patent
Estimating the term…
Abstract
Systems and method for distributing updates on demand to synchronize a remote client database with a source database are provided. A client can request an online update from the database content provider and the database provider can stream database updates to the client over a network connection in real time, or the database content provider can stream database updates to the client at scheduled times based on a licensing agreement with the client. This allows the client database to be kept in synch with the source database without requiring that the database provider generate a set of database updates on physical media and ship the physical media to the client for processing.
Claims20
A computer-implemented method for synchronizing the contents of a remote database with a source database, wherein one or more processors are programmed to perform the steps comprising:
- maintaining a source database comprising a plurality of records, wherein each of the plurality of records comprises one or more fields, wherein each of the one or more fields is associated with a version identifier, wherein each of the plurality of records is associated with a version identifier corresponding to a highest version identifier of any of its one or more fields, and wherein the source database is associated with a version identifier corresponding to a highest version identifier of any of the plurality of records;
- receiving a request from a content hosting server for an update to a remote database associated with the content hosting server;
- identifying a database version associated with the remote database;
- comparing the identified database version to a plurality of version identifiers associated with the plurality of records or fields in the source database;
- identifying one or more data entries from the source database to be included in a database update based on the comparison;
- generating a data stream that includes the identified one or more data entries by converting the identified one or more data entries to Extensible Markup Language (XML) data, and generating a data stream comprising the XML data;
- and transmitting the data stream to the content hosting server.
A technical system for synchronizing the contents of a remote database with a source database, the system comprising:
- a non-transitory computer readable medium configured to store one or more executable programmed modules;
- at least one processor communicatively coupled with the non-transitory computer readable medium and configured to execute the one or more executable programmed modules;
- the one or more executable programmed modules that, when executed by the at least one processor,
- maintain a source database comprising a plurality of records, wherein each of the plurality of records comprises one or more fields, wherein each of the one or more fields is associated with a version identifier, wherein each of the plurality of records is associated with a version identifier corresponding to a highest version identifier of any of its one or more fields, and wherein the source database is associated with a version identifier corresponding to a highest version identifier of any of the plurality of records;
- receive a request from a content hosting server to update a remote database;
- determine whether the content hosting server is eligible to receive an update to the remote database;
- identify a database version of the remote database;
- compare the identified database version to a plurality of version identifiers associated with the plurality of records or fields in the source database;
- identify one or more data entries from the source database to be included in a database update based on the comparison;
- generate a data stream that includes the identified one or more data entries by converting the identified one or more data entries to Extensible Markup Language (XML) data, and generating a data stream comprising the XML data;
- and send the data stream to the content hosting server.
Dependencies are inferred from the claim text.