摘要:
The subject invention relates to systems and/or methods that perform an authoritative and/or a non-authoritative restore of items in a data store. Backups are provided that include data associated with items and metadata related to the items that can include a history of operations and previous synchronizations to enable replications to converge after restoration. The operations that can be performed on the items include, for example, create, delete, update, move, etc. The items in the backups can be restored along with the metadata, which can be utilized to enable synchronization partners to converge based on a desired type of restoration.
摘要:
The subject invention relates to systems and/or methods that perform an authoritative and/or a non-authoritative restore of items in a data store. Backups are provided that include data associated with items and metadata related to the items that can include a history of operations and previous synchronizations to enable replications to converge after restoration. The operations that can be performed on the items include, for example, create, delete, update, move, etc. The items in the backups can be restored along with the metadata, which can be utilized to enable synchronization partners to converge based on a desired type of restoration.
摘要:
Extending hierarchical synchronization (sync) scopes to non-hierarchical scenarios may involve a method for synchronizing differently organized data stores comprising mapping different physical organizations to similar logical organizations and utilizing an organization-based synchronization algorithm to synchronize the differently organized stores. Also, the uniqueness constraints of the organizations may be preserved as well as the parent-child ordering constraints of the organizations.
摘要:
Extending hierarchical synchronization (sync) scopes to non-hierarchical scenarios may involve a method for synchronizing differently organized data stores comprising mapping different physical organizations to similar logical organizations and utilizing an organization-based synchronization algorithm to synchronize the differently organized stores. Also, the uniqueness constraints of the organizations may be preserved as well as the parent-child ordering constraints of the organizations.
摘要:
Various embodiments of the present invention are directed to synchronization utilizing one or more optimizations through the utilization of metadata. For several embodiments of the present invention, one method for optimizing synchronization is to reduce the overhead required for said synchronization by having each peer only tracking changes for itself and other peers within its change community (or communities) (a.k.a., “Intra-Community-Only Change Tracking Optimization”). For certain embodiments of the present invention, another method for optimizing synchronization is to not create synchronization overhead until required. For numerous embodiments of the present invention, yet another method for optimizing synchronization is to minimize redundant use of a partner's unique global ID—a large and cumbersome number—and to instead maintain a table that cross-references each partner (and its unique global ID) with a smaller and much less cumbersome partner key.
摘要:
Various embodiments of the present invention are directed to synchronization utilizing one or more optimizations through the utilization of metadata. For several embodiments of the present invention, one method for optimizing synchronization is to reduce the overhead required for said synchronization by having each peer only tracking changes for itself and other peers within its change community (or communities) (a.k.a., “Intra-Community-Only Change Tracking Optimization”). For certain embodiments of the present invention, another method for optimizing synchronization is to not create synchronization overhead until required. For numerous embodiments of the present invention, yet another method for optimizing synchronization is to minimize redundant use of a partner's unique global ID—a large and cumbersome number—and to instead maintain a table that cross-references each partner (and its unique global ID) with a smaller and much less cumbersome partner key.
摘要:
Update-delete conflicts detected during synchronization can be resolved in favor of the update or the deletion. Resolving the conflict in favor of the deletion results in the entity deleted on one replica being deleted on all selected replicas. Resolving the conflict in favor of the update results in the updated entity, which includes an entity moved from one hierarchy to another, being replicated on all selected replicas. To resolve the conflict in favor of the update, the deletion is treated as though it were reported erroneously. The deleted entity is resurrected in the form of the updated entity. Change version information is maintained in all replicas. Update-delete conflicts are resolvable in accordance with various resolution policies such as the update wins, deletion wins, changes occurring on a particular device wins, and most recent event wins, for example.
摘要:
Disclosed are systems and methods pertaining to data synchronization and move handling support. In particular, a move log is maintained that identifies data that has moved in, out, and within a synchronization scope. Furthermore, the log comprises times associated with when data moves in and out of the synchronization scope. Systems and methods can interact easily with the generated and updated move log to facilitate determining data versions and identifying new data that may need to be synchronized.
摘要:
Disclosed are systems and methods pertaining to data synchronization and move handling support. In particular, a move log is maintained that identifies data that has moved in, out, and within a synchronization scope. Furthermore, the log comprises times associated with when data moves in and out of the synchronization scope. Systems and methods can interact easily with the generated and updated move log to facilitate determining data versions and identifying new data that may need to be synchronized.
摘要:
Systems, methods, and computer program products for synchronizing items at replicas within a topology is disclosed. Items are stored in physical tables at the replicas. The physical table layouts at each replica can differ but are mapped to a common logical view. When a replica receives an indication that synchronization should be performed, the replica determines if changes have been made at the replica that should be mapped to the logical views. Replicas can facilitate this by comparing local change enumerations for changes made in physical tables to synchronization local change enumerations for changes in the logical views. Any changes that need to be synchronized are sent through the logical views to other replicas in the topology.