Synchronizing endpoint data stores having disparate schemas
First Claim
Patent Images
1. A method for synchronizing data between endpoint data stores, comprising:
- performing a set-intersection on a first local schema associated with a first endpoint data store and a second local schema associated with a second endpoint data store, wherein each of the first and second local schemas organizes data into one or more fields of the corresponding first and second endpoint data stores;
generating a virtual schema based on the set-intersection on the first local schema and the second local schema, wherein the virtual schema maps a field in the first local schema to a field in the second local schema;
synchronizing data between the first and second endpoint data stores using the virtual schema, the synchronizing comprising;
receiving, by a synchronization server including a processor, data according to the first local schema from the first endpoint data store, andprocessing, by the synchronization server using the virtual schema, the received data to produce data according to the second local schema for sending over a network to the second endpoint data store;
computing a hash value of the data according to the first local schema based only on content of at least one field of the data according to the first local schema that is mapped by the virtual schema to at least one field of the second local schema; and
determining, based on the hash value, a consistency of the data according to the first local schema with the data according to the second local schema.
4 Assignments
0 Petitions
Accused Products
Abstract
Synchronizing data between multiple endpoint data stores that have disparate schemas is accomplished in a manner that reduces complexity. Each endpoint data store has an associated local schema that orders data into one or more fields. A synchronization server is disposed between the endpoints and keeps the multiple endpoints synchronized without the endpoints having to understand the various local schemas. A virtual schema is generated based on a set-intersection of the local schemas. The virtual schema maps a field in one local schema to a field in another local schema. Data is synchronized between the endpoint data stores using the virtual schema.
-
Citations
23 Claims
-
1. A method for synchronizing data between endpoint data stores, comprising:
-
performing a set-intersection on a first local schema associated with a first endpoint data store and a second local schema associated with a second endpoint data store, wherein each of the first and second local schemas organizes data into one or more fields of the corresponding first and second endpoint data stores; generating a virtual schema based on the set-intersection on the first local schema and the second local schema, wherein the virtual schema maps a field in the first local schema to a field in the second local schema; synchronizing data between the first and second endpoint data stores using the virtual schema, the synchronizing comprising; receiving, by a synchronization server including a processor, data according to the first local schema from the first endpoint data store, and processing, by the synchronization server using the virtual schema, the received data to produce data according to the second local schema for sending over a network to the second endpoint data store; computing a hash value of the data according to the first local schema based only on content of at least one field of the data according to the first local schema that is mapped by the virtual schema to at least one field of the second local schema; and determining, based on the hash value, a consistency of the data according to the first local schema with the data according to the second local schema. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A synchronization server for synchronizing data between endpoints, each endpoint having a local schema associated therewith, the synchronization server comprising:
at least one processor configured to; retrieve the local schema from each respective endpoint, each local schema organizing data into one or more fields of the corresponding endpoint, wherein the one or more fields include one or more pairs of field names and data types, perform a set-intersection on the local schemas retrieved from the respective endpoints, generate a virtual schema calculated from the set-intersection, the virtual schema useable in synchronization to tailor the data for transport among the endpoints, the virtual schema mapping a field in a first of the local schemas to a field in a second of the local schemas, synchronize data between the endpoints using the virtual schema, where the synchronizing comprises; receiving data according to the first local schema from a first of the endpoints, and processing, using the virtual schema, the received data to produce data according to the second local schema for sending over a network to a second of the endpoints, compute a hash value of the data according to the first local schema based only on content of at least one field of the data according to the first local schema that is mapped by the virtual schema to at least one field of the second local schema, and determine, based on the hash value, a consistency of the data according to the first local schema with the data according to the second local schema. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
22. A non-transitory computer-accessible medium storing instructions which, when executed by a processing entity, effectuate synchronization of data between endpoint data stores, the non-transitory computer-accessible medium comprising:
-
a code portion for performing a set-intersection on a first local schema associated with a first endpoint data store and a second local schema associated with a second endpoint data store, wherein each of the first and second local schemas organizes data into one or more fields of the corresponding first and second endpoint data stores; a code portion for generating a virtual schema based on the set-intersection on the first local schema and the second local schema, wherein the virtual schema maps a field in the first local schema to a field in the second local schema; a code portion for synchronizing data between the first and second endpoint data stores using the virtual schema, the synchronizing comprising; receiving, by a synchronization server, data according to the first local schema from the first endpoint data store, and processing, by the synchronization server using the virtual schema, the received data to produce data according to the second local schema for sending over a network to the second endpoint data store; a code portion for computing a hash value of the data according to the first local schema based only on content of at least one field of the data according to the first local schema that is mapped by the virtual schema to at least one field of the second local schema; and a code portion for determining, based on the hash value, a consistency of the data according to the first local schema with the data according to the second local schema. - View Dependent Claims (23)
-
Specification