Synchronizing logical views independent of physical storage representations
First Claim
1. In computer system that is included in a topology for synchronizing a plurality of replicas, the computer system including a source replica from among the plurality of replicas, the physical layout of items stored at the source replica differing from the physical layout of corresponding items stored at one or more other replicas, a method for synchronizing replicas comprising:
- an act of receiving a synchronization indication that the source replica is to be synchronized with the destination replica from among the plurality of replicas;
an act of determining if items in the physical layout at the source replica have changed;
an act of mapping any changed items in the physical layout at the source replica to a logical view, the logical view being substantially similar to logical views at one more other replicas in the topology, so as to increase the efficiency of synchronizing the source replica with the one or more other replicas, or to avoid any changes to the source replica when a new replica with different physical storage format is introduced into the sync topology; and
an act of sending at least one mapped item from the source replica to the destination replica.
4 Assignments
0 Petitions
Accused Products
Abstract
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.
-
Citations
41 Claims
-
1. In computer system that is included in a topology for synchronizing a plurality of replicas, the computer system including a source replica from among the plurality of replicas, the physical layout of items stored at the source replica differing from the physical layout of corresponding items stored at one or more other replicas, a method for synchronizing replicas comprising:
-
an act of receiving a synchronization indication that the source replica is to be synchronized with the destination replica from among the plurality of replicas;
an act of determining if items in the physical layout at the source replica have changed;
an act of mapping any changed items in the physical layout at the source replica to a logical view, the logical view being substantially similar to logical views at one more other replicas in the topology, so as to increase the efficiency of synchronizing the source replica with the one or more other replicas, or to avoid any changes to the source replica when a new replica with different physical storage format is introduced into the sync topology; and
an act of sending at least one mapped item from the source replica to the destination replica. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. In computer system that is included in a topology for synchronizing a plurality of replicas, the computer system including a source replica from among the plurality of replicas, the physical layout of the items stored at the source replica differing from the physical layout of corresponding items stored at one or more other replicas, a method for synchronizing replicas comprising:
-
a step for identifying items from a physical layout that are to be mapped to a logical view;
an act of mapping any changed items in the physical layout at the source replica to a logical view, the logical view being substantially similar to logical views at one more other replicas in the topology, so as to increase the efficiency of synchronizing the source replica with the one or more other replicas, or to avoid any changes to the source replica when a new replica with different physical storage format is introduced into the sync topology; and
an act of sending at least one mapped item from the source replica to the destination replica.
-
-
15. A computer system configured to synchronize data with other computer systems in a topology, the computer system comprising:
-
one or more processing units; and
one or more computer-readable media having stored thereon data, the data comprising;
a data store layer, the data store layer comprising;
a plurality of items; and
a local change tracker that maintains local change enumerations for the plurality of items; and
a synchronization layer, the synchronization layer comprising;
a logical view that is substantially similar to a logical views at one or more other computer systems in the topology, the logical view representing a mapping of one or more items from the plurality of items; and
a synchronization change tracker, the synchronization change tracker maintaining versions and synchronization local change enumerations for the one or more items mapped to the logical view. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. At a compiling computer system, a method for generating a mapping of the physical layout of items in a data store to a logical view, the method comprising:
-
an act of accessing core code that can be used to facilitate compilation of logical schemas;
an act of accessing a logical schema, the logical schema including;
a change unit that defines the granularity of an item; and
a consistency unit, defining the changes of one or more items of the defined granularity that must be received in the same synchronization in order for any of the one or more items to be updated in a replica; and
an act of utilizing the core code to compile the logical schema into at least a catalog, the catalog mapping items from a physical layout to a logical view, the logical view being substantially similar to a logical view at one or more other computer systems. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39)
-
-
40. A computer program product for use in computer system that is included in a topology for synchronizing a plurality of replicas, the computer system including a source replica from among the plurality of replicas, the physical layout of items stored at the source replica differing from the physical layout of corresponding items stored at one or more other replicas, the computer program product for implementing a method for synchronizing replicas, the computer program product comprising one or more computer-readable media having stored thereon computer executable instructions that, when executed by a processor, cause the computer system to perform the following:
-
receive a synchronization indication that the source replica is to be synchronized with the destination replica from among the plurality of replicas;
determine if items in the physical layout at the source replica have changed;
map any changed items in the physical layout at the source replica to a logical view, the logical view being substantially similar to logical views at one more other replicas in the topology, so as to increase the efficiency of synchronizing the source replica with the one or more other replicas; and
send at least one mapped item from the source replica to the destination replica.
-
-
41. A computer program product for use in a compiling computer system, the computer program product for implementing a method for generating a mapping of the physical layout of items in a data store to a logical view, the computer program product comprising one or more computer-readable media having stored thereon computer executable instructions that, when executed by a processor, cause the compiling computer system to perform the following:
-
access core code that can be used to facilitate compilation of logical schemas;
access a logical schema, the logical schema including;
a change unit that defines the granularity of an item; and
a consistency unit, defining the changes of one or more items of the defined granularity must be received in the same synchronization in order for any of the one or more items to be updated in a replica; and
utilize the core code to compile the logical schema into at least a catalog, the catalog mapping items from a physical layout to a logical view, the logical view being substantially similar to a logical view at one or more other computer systems.
-
Specification