Synchronizing centralized data store from distributed independent data stores using fixed application programming interfaces
First Claim
1. A method, executing within a computer having a processor and a memory, for updating a central data store that comprises a plurality of objects, said central data store including data-driven behavior that performs actions upon receiving required respective data, the method comprising:
- (a) specifying a data schema as a data structure that describes a relationship between the plurality of objects, the data schema being specific to a supported service;
(b) identifying one of the plurality of objects as an object for updating;
(c) annotating at least one action attribute of a plurality of actions to the object of the plurality of objects in order to add an operation that can be performed on a data portion of the object, wherein each action is general such that it can be applied to any of the plurality of objects;
(d) receiving data structured in conformance with said data schema and including said at least one action attribute; and
(e) said central data store performing one or more of said actions for all objects for which said respective action attribute applies based on the relationship described in the data schema.
2 Assignments
0 Petitions
Accused Products
Abstract
A data transfer protocol utilizes a set of actions for affecting different objects that are stored in a data store. The data transfer protocol supports a set of application programming interfaces (APIs) that are applicable to the different objects. With the APIs, the data transfer protocol may synchronize a centralized data store with independent data stores. The data transfer protocol may support data that is hierarchical while maintaining referential integrity. Node objects may vary from nightly bulk uploads to interactive users uploading or querying smaller portions of the database. The data transfer protocol provides the semantics to carry out these operations with a fixed number of APIs for any arbitrary database. The data uploads may be sparse depending on what the remote data store holds and need not be in serial order.
-
Citations
30 Claims
-
1. A method, executing within a computer having a processor and a memory, for updating a central data store that comprises a plurality of objects, said central data store including data-driven behavior that performs actions upon receiving required respective data, the method comprising:
-
(a) specifying a data schema as a data structure that describes a relationship between the plurality of objects, the data schema being specific to a supported service; (b) identifying one of the plurality of objects as an object for updating; (c) annotating at least one action attribute of a plurality of actions to the object of the plurality of objects in order to add an operation that can be performed on a data portion of the object, wherein each action is general such that it can be applied to any of the plurality of objects; (d) receiving data structured in conformance with said data schema and including said at least one action attribute; and (e) said central data store performing one or more of said actions for all objects for which said respective action attribute applies based on the relationship described in the data schema. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A computer-readable storage medium having computer-executable actions for updating a central data store that comprises a plurality of objects, said central data store including data-driven behavior that performs actions upon receiving required respective data, comprising steps of:
-
(a) specifying a data schema as a data structure that describes a relationship between the plurality of objects, the data schema being specific to a supported service; (b) identifying one of the plurality of objects as an object for updating; (c) annotating at least one action attribute of a plurality of actions to the object of the plurality of objects in order to add an operation that can be performed on a data portion of the object, wherein each action is general such that it can be applied to any of the plurality of objects; (d) receiving data structured in conformance with said data schema and including said at least one action attribute; and (e) said central data store performing one or more of said actions for all objects for which said respective action attribute applies based on the relationship described in the data schema. - View Dependent Claims (22, 23, 24)
-
-
25. A data store system that supports synchronizing stored information, the data store system including data-driven behavior that performs actions upon receiving required respective data, the data store system comprising:
-
a storage device that stores at least one object; a data structure that represents the at least one object and that is located on the storage device, the data structure having a data schema that is specific to a supported service; a data transfer protocol interface, the data transfer protocol interface supporting a data transfer protocol, the data transfer protocol interface comprising; an action module that supports a group of actions that are invoked upon being transferred data structured in conformance with said data schema for at least one said object; and an application programming interface (API) module that supports a group of application programming interfaces for transferring data, the group of application programming interfaces being agnostic to the type of data being transferred, wherein at least one action of the group of actions is invoked upon receiving the transferred data. - View Dependent Claims (26, 27, 28, 29)
-
-
30. A method, executing within a computer having a processor and a memory, of updating a central data store that comprises a plurality of objects, the central data store including data driven behavior that performs actions upon receiving required respective data, the method comprising:
-
(a) specifying a data schema as a data structure that describes a relationship between the plurality of objects, the data schema being specific to a supported service; (b) identifying one of the plurality of objects as an object for updating; (c) annotating at least one action attribute of a plurality of actions to the object of the plurality of objects in order to add an operation tat can be performed on a data portion of the object, wherein each action is general such that it can be applied to any of the plurality of objects; (d) receiving data structured in conformance with said data schema and including said at least one action attribute; and (e) said central data store using an application programming interface to deliver said data as a batch to all objects having the respective action attribute in order to invoke said at least one action.
-
Specification