摘要:
Systems and methods that enable removal of data from an endpoint, while not propagating such removal to other endpoints when synchronizing data sources associated therewith. A designation component can indicate items as forgotten items, wherein such items are being known to an endpoint and deleted therefrom—yet, reintroduced therein and reappearing (e.g., as a create) upon re-synchronizing with the replica over again. Moreover, the forgotten items can employ additional metadata such as in from of an additional bit that indicates whether an item is a forgotten item.
摘要:
Systems and methods that enable removal of data from an endpoint, while not propagating such removal to other endpoints when synchronizing data sources associated therewith. A designation component can indicate items as forgotten items, wherein such items are being known to an endpoint and deleted therefrom—yet, reintroduced therein and reappearing (e.g., as a create) upon re-synchronizing with the replica over again. Moreover, the forgotten items can employ additional metadata such as in from of an additional bit that indicates whether an item is a forgotten item.
摘要:
Systems and methods that enable removal of data from an endpoint, while not propagating such removal to other endpoints when synchronizing data sources associated therewith. A designation component can indicate items as forgotten items, wherein such items are being known to an endpoint and deleted therefrom—yet, reintroduced therein and reappearing (e.g., as a create) upon re-synchronizing with the replica over again. Moreover, the forgotten items can employ additional metadata such as in from of an additional bit that indicates whether an item is a forgotten item.
摘要:
Embodiments are directed to efficiently routing data requests from a plurality of tenants and to using smart routing to limit service denials. In an embodiment, a gateway node receives data requests from a tenant subscriber requesting data for an indicated service. The gateway node determines which server node the received data requests are to be routed to. The determination evaluates various criteria associated with the data request. The gateway node queries the determined server node to determine the health of the server nodes and receives a reply from the determined server node indicating the server node's current operating status. The gateway node also, based on the determined server node's reply, routes the received data requests to the determined server node, according to the evaluated criteria.
摘要:
The subject disclosure relates to an efficient multi-master synchronization infrastructure is provided enabling loosely coupled networked client and server devices, applications and services to efficiently convey and receive synchronization knowledge across interconnecting network(s). A set of synchronization methods and standardized interfaces are also provided that enable rich offline application experiences and collaboration among devices, applications and services predicated on the efficient synchronization infrastructure.
摘要:
Embodiments are directed to efficiently routing data requests from a plurality of tenants and to using smart routing to limit service denials. In an embodiment, a gateway node receives data requests from a tenant subscriber requesting data for an indicated service. The gateway node determines which server node the received data requests are to be routed to. The determination evaluates various criteria associated with the data request. The gateway node queries the determined server node to determine the health of the server nodes and receives a reply from the determined server node indicating the server node's current operating status. The gateway node also, based on the determined server node's reply, routes the received data requests to the determined server node, according to the evaluated criteria.
摘要:
An efficient way and general mechanism is provided to represent and exchange knowledge and/or partial knowledge across nodes when synchronizing between any two nodes including custom or move filters where set membership can change over time at a device as data items come in and out of filter scope. A first node sends a second node its knowledge and/or partial knowledge, including objects and versions of those objects. The second node compares its knowledge and/or partial knowledge with the knowledge and/or partial knowledge of the first node, and then sends the first node any latest versions of objects of which the first node is unaware. In addition, the second node sends its knowledge and/or partial knowledge to the first node. The first node then performs a similar object-by-object version comparison to determine any conflicts due to independent evolution of objects and any changes that can be sent to the second node in order to bring the objects of the second node up to date with the knowledge and/or partial knowledge of the first node. Replicas can track filters to efficiently support synchronizing with filtered replicas. Filter forgotten knowledge is also used to represent how recently a replica can guarantee to know which items have been in the filter. Ghosts can be used to represent items that have been in the filter recently but have currently moved out. Filter forgotten knowledge concept allows both new filters to be tracked when they are introduced into the community, as well as periodically cleaning up of tombstones and ghosts.
摘要:
An efficient way and general mechanism is provided to represent and exchange knowledge and/or partial knowledge across nodes when synchronizing between any two nodes including custom or move filters where set membership can change over time at a device as data items come in and out of filter scope. A first node sends a second node its knowledge and/or partial knowledge, including objects and versions of those objects. The second node compares its knowledge and/or partial knowledge with the knowledge and/or partial knowledge of the first node, and then sends the first node any latest versions of objects of which the first node is unaware. In addition, the second node sends its knowledge and/or partial knowledge to the first node. The first node then performs a similar object-by-object version comparison to determine any conflicts due to independent evolution of objects and any changes that can be sent to the second node in order to bring the objects of the second node up to date with the knowledge and/or partial knowledge of the first node. Replicas can track filters to efficiently support synchronizing with filtered replicas. Filter forgotten knowledge is also used to represent how recently a replica can guarantee to know which items have been in the filter. Ghosts can be used to represent items that have been in the filter recently but have currently moved out. Filter forgotten knowledge concept allows both new filters to be tracked when they are introduced into the community, as well as periodically cleaning up of tombstones and ghosts.
摘要:
The subject disclosure relates to an efficient multi-master synchronization infrastructure is provided enabling loosely coupled networked client and server devices, applications and services to efficiently convey and receive synchronization knowledge across interconnecting network(s). A set of synchronization methods and standardized interfaces are also provided that enable rich offline application experiences and collaboration among devices, applications and services predicated on the efficient synchronization infrastructure.
摘要:
A method of synchronizing data between multiple endpoints each storing a copy of the data in accordance with different underlying schemas. An application model that provides a logical representation of an underlying schema is extended with a synchronization model that provides a logical representation of changes made to the data. The synchronization model comprises functions that provide synchronization information on the changes in a common format. Using such synchronization information, changes in a copy of the data stored in a first underlying schema on a first endpoints are applied to another copy of the data stored in a second underlying schema on a second endpoint in synchronization relationship with the first endpoint.