System and method for incremental change synchronization between multiple copies of data
First Claim
1. In a non-integral node of a replication network that also includes an integral node, a method of synchronizing a second copy of data stored at the non-integral node with a first copy of data that is stored at the integral node and has had new incremental changes made thereto that are not yet incorporated into said second copy without transmitting the entire first copy to the non-integral node, said method comprising the steps of:
- maintaining the second copy at the non-integral node, which is capable of communicating with the replication network;
storing, at the non-integral node, synchronization state information containing information regarding the synchronization state of the second copy, the synchronization state information including information identifying incremental changes already held in the second copy;
initiating execution of an agent process at the non-integral node, the agent process being adapted for controlling transfer of new incremental changes from said first copy stored at the integral node to said second copy by controlling a data synchronizer at the replication network, the data synchronizer being adapted for transferring incremental changes from said first copy;
said agent process sending the synchronization state information to said data synchronizer;
said agent process directing said data synchronizer to transfer said new incremental changes from said first copy to said second copy;
receiving and applying, at the non-integral node, the new incremental changes transferred from the data synchronizer without receiving said incremental changes already held in the second copy, so as to synchronize the second copy with the first copy, the new incremental changes having been identified by the data synchronizer by comparing the synchronization state information sent to the data synchronizer with information identifying incremental changes included in the first copy; and
receiving, at the non-integral node, updated synchronization state information sent from the data synchronizer, the updated synchronization state information reflecting the new incremental changes that have been transferred to the second copy.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for incremental change synchronization among multiple copies of data is disclosed. To achieve the synchronization a genera synchronization model is used. The synchronization model establishes a one-way data flow path to allow incremental changes to be transferred from a copy of data that incorporates the incremental changes to a copy of data that does not yet incorporate the incremental changes. To achieve this one-way data flow path, the synchronization model uses an agent, a data collector, and a data synchronizer. The data collector collects incremental changes transferred to it and applies the incremental changes to a copy of data. A data synchronizer transfers incremental changes to a data collector. An agent controls the synchronization process by making a connection between a data collector and a data synchronizer and then directing the data synchronizer to transfer data to the data collector. If bidirectional data flow is necessary to achieve synchronization between two copies of data, a one-way data flow path is established first in one direction and after all incremental changes have been passed in that direction, a data flow path is established in the opposite direction to pass incremental changes in the opposite direction.
-
Citations
18 Claims
-
1. In a non-integral node of a replication network that also includes an integral node, a method of synchronizing a second copy of data stored at the non-integral node with a first copy of data that is stored at the integral node and has had new incremental changes made thereto that are not yet incorporated into said second copy without transmitting the entire first copy to the non-integral node, said method comprising the steps of:
-
maintaining the second copy at the non-integral node, which is capable of communicating with the replication network;
storing, at the non-integral node, synchronization state information containing information regarding the synchronization state of the second copy, the synchronization state information including information identifying incremental changes already held in the second copy;
initiating execution of an agent process at the non-integral node, the agent process being adapted for controlling transfer of new incremental changes from said first copy stored at the integral node to said second copy by controlling a data synchronizer at the replication network, the data synchronizer being adapted for transferring incremental changes from said first copy;
said agent process sending the synchronization state information to said data synchronizer;
said agent process directing said data synchronizer to transfer said new incremental changes from said first copy to said second copy;
receiving and applying, at the non-integral node, the new incremental changes transferred from the data synchronizer without receiving said incremental changes already held in the second copy, so as to synchronize the second copy with the first copy, the new incremental changes having been identified by the data synchronizer by comparing the synchronization state information sent to the data synchronizer with information identifying incremental changes included in the first copy; and
receiving, at the non-integral node, updated synchronization state information sent from the data synchronizer, the updated synchronization state information reflecting the new incremental changes that have been transferred to the second copy. - View Dependent Claims (2, 3, 4)
-
-
5. A method of synchronizing a second copy of data with a first copy of data that has had new incremental changes made thereto that are not yet incorporated into said second copy, said method comprising the steps of:
-
maintaining the first copy at an integral node of a replication network;
maintaining the second copy at a non-integral node that is capable of communicating with the replication network;
storing, at the non-integral node, synchronization state information containing information regarding the synchronization state of the second copy, the synchronization state information including information identifying incremental changes already held in the second copy;
initiating execution of an agent process at the non-integral node, the agent process being adapted for controlling transfer of new incremental changes from said first copy to said second copy by controlling a data synchronizer at the replication network, the data synchronizer being adapted for transferring incremental changes from said first copy;
said agent process sending, to said data synchronizer, the synchronization state information stored at the non-integral node;
based on a comparison between the synchronization state information and information identifying incremental changes included in the first copy, said data synchronizer determining the new incremental changes to be transferred from said first copy to said second copy;
said data synchronizer, being directed by the agent process, transferring at least a portion of said new incremental changes from said first copy to said second copy without transferring the incremental changes already held in the second copy, so as to synchronize the second copy with the first copy; and
the data synchronizer updating the synchronization state information to reflect the new incremental changes being transferred to the second copy and transferring the updated synchronization state information to the non-integral node. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12)
-
-
13. A computer-readable medium having computer-executable instructions comprising for implementing, at a non-integral node capable of communicating with a replication network, a method of synchronizing a second copy of data stored at the non-integral node with a first copy of data that is stored at an integral node of the replication network and has had new incremental changes made thereto that are not yet incorporated into said second copy without the entire first copy being transmitted to the non-integral node, the computer-executable instructions comprising:
-
means for maintaining the second copy at the non-integral node;
means for storing, at the non-integral node, synchronization state information containing information regarding the synchronization state of the second copy, the synchronization state information including information identifying incremental changes already held in the second copy;
means for sending the synchronization state information from the non-integral node to a synchronization means for synchronizing data, the synchronization means operating at the integral node, where the first copy is stored;
means for collecting said new incremental changes having been transferred from the synchronization means to the non-integral node without collecting said incremental changes already held in the second copy, the new incremental changes having been identified by the synchronization means by comparing the synchronization state information that has been sent to the synchronization means with information identifying incremental changes included in the first copy;
means for controlling transfer of said new incremental changes from said synchronization means so that said synchronization means transfers said new incremental changes to said means for collecting under the direction of said means for controlling;
means for receiving, from the synchronization means, an update of synchronization state information reflecting the synchronization state of said second copy of data; and
means for storing said update at the non-integral node. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification