Replica administration without data loss in a store and forward replication enterprise
First Claim
1. In a computer network where copies of data objects are replicated among a plurality of replica nodes that are logically connected to provide a data flow path from each replica node to any other replica node in the network, and each replica node being capable of making changes to the replicated data objects and each being capable of storing the changes made either locally or by any other node, and each being capable of providing access to such stored changes by any other replica node in the network, a method of removing a local copy of a data object from a local replica node in the computer network while protecting against inadvertent loss of any changes made to the local data object prior to its removal at the local replica node, the method comprising the steps of:
- saving, at a local replica node, changes made to a local copy of a data object by the local replica node and changes made by and received from other replica nodes on a computer network so that the local copy of the data object reflects all such changes made to the data object;
transmitting to at least one other replica node in the network any changes which have been made to the local copy of the data object by the local replica node and which have not previously been transmitted to at least one other replica node in the network in order to preserve said changes and ensure continued availability of said changes by virtue of their storage in said at least one other replica node of the network;
verifying that the saved changes reside on at least one other replica node in the network prior to removal of the local copy of the data object from the local replica node by (1) sending a message to said at least one other replica node, and by (2) positively confirming that the saved changes reside on the at least one other replica node if the combination of all changes on all replica nodes other than the local replica node include at least the saved changes;
removing the local copy of the data object from the local replica node if said saved changes reside on at least one other replica node without removing any changes from said at least once other replica node; and
accessing said saved changes from at least one replica node in the network.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for replica administration without data loss is disclosed. In a replication environment where data is replicated around a network and where any system can make changes to the data, data loss may occur if one copy of the data is deleted before changes made to that copy are replicated to other systems in the network. The present invention describes a robust administration environment which prevents inadvertent data loss by verifying that changes made to a local copy of the data reside on at least one other system in the network. The system and method of the present invention also provide a mechanism to allow an administrator to bypass such safeguards in appropriate circumstances in order to handle special cases such as total removal of the data from the network. The replica administration environment is implemented by defining various states that represent the level of participation in the replication of the data. For example, an active state can indicate full participation while a deleted state can indicate no participation. In addition to an active state and a deleted state, one or more intermediate states may be defined. The checks and safeguards can be performed in these intermediate states. In appropriate circumstances, an administrator may force the transition from certain of the intermediate states to either the active state in order to return a system to full participation or to the deleted state in order to bypass the safeguards of the present invention.
-
Citations
27 Claims
-
1. In a computer network where copies of data objects are replicated among a plurality of replica nodes that are logically connected to provide a data flow path from each replica node to any other replica node in the network, and each replica node being capable of making changes to the replicated data objects and each being capable of storing the changes made either locally or by any other node, and each being capable of providing access to such stored changes by any other replica node in the network, a method of removing a local copy of a data object from a local replica node in the computer network while protecting against inadvertent loss of any changes made to the local data object prior to its removal at the local replica node, the method comprising the steps of:
-
saving, at a local replica node, changes made to a local copy of a data object by the local replica node and changes made by and received from other replica nodes on a computer network so that the local copy of the data object reflects all such changes made to the data object; transmitting to at least one other replica node in the network any changes which have been made to the local copy of the data object by the local replica node and which have not previously been transmitted to at least one other replica node in the network in order to preserve said changes and ensure continued availability of said changes by virtue of their storage in said at least one other replica node of the network; verifying that the saved changes reside on at least one other replica node in the network prior to removal of the local copy of the data object from the local replica node by (1) sending a message to said at least one other replica node, and by (2) positively confirming that the saved changes reside on the at least one other replica node if the combination of all changes on all replica nodes other than the local replica node include at least the saved changes; removing the local copy of the data object from the local replica node if said saved changes reside on at least one other replica node without removing any changes from said at least once other replica node; and accessing said saved changes from at least one replica node in the network. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. In a computer network where copies of data objects are replicated among a plurality of replica nodes that are logically connected to provide a data flow path from each replica node to any other replica node in the network, and each replica node being capable of making changes to the replicated data objects and each being capable of storing the changes made either locally or by any other node, and each being capable of providing access to such stored changes by any other replica node in the network, a method of removing a local copy of a data object from a local replica node in the computer network while protecting against inadvertent loss of any changes made to the local data object prior to its removal at the local replica node, the method comprising the steps of:
-
transmitting to at least one other replica node in a network any changes which have been made to a local copy of a data object by a local replica node and which have not previously been transmitted to at least one other replica node in the network; verifying that all changes which form the basis for the local copy of the data object reside on at least one other replica node on the network so that said changes will be preserved and will remain available to said network by (1) transmitting a message comprising a request for a replica node that receives the message to respond if the replica node that receives the message has at least the changes held by the local replica node, and by (2) positively confirming that the changes forming the basis for the local copy of the data object reside on at least one other replica node if the combination of all changes on all replica nodes, other than the local replica node, include at least the changes which form the basis for the local copy of the data object; and if said changes reside on said at least one other replica node, then removing the local copy of the data object from the local replica node without removing any changes from said at least one other replica node. - View Dependent Claims (8, 9, 10, 11)
-
-
12. In a computer network where copies of data objects are replicated among a plurality of replica nodes that are logically connected to provide a data flow path from each replica node to any other replica node in the network, and each replica node being capable of making changes to the replicated data objects and each being capable of storing the changes made either locally or by any other node, and each being capable of providing access to such stored changes by any other replica node in the network, a method of moving a copy of a data object from a local replica node in the computer network while protecting against inadvertent loss of any changes made to the local data object prior to its removal at the local replica node, the method comprising the steps of:
-
initiating a process to add a first copy of a data object to a first replica node where a copy of said data object does not currently reside; initiating a process to remove a second copy of said data object from a second replica node, said process to remove the second copy of the data object comprising; transmitting to at least one other replica node in a network any changes which have been made to a local copy of a data object by a local replica node and which have not previously been transmitted to at least one other replica node in the network; verifying that all changes which form the basis for the local copy of the data object reside on at least one other replica node on the network so that said changes will be preserved and will remain available to said network by (1) sending a message to said at least one other replica node, and by (2) positively confirming that the saved changes reside on the at least one other replica node if the combination of all changes on all replica nodes other than the local replica node include at least the saved changes; and if said changes reside on said at least one other replica node, then removing the local copy of the data object from the local replica node without removing any changes from said at least one other replica node.
-
-
13. An article of manufacture for use in a computer system defining a location in a computer network where a copy of a designated data object is replicated, said computer system logically connected to at least one other computer system through networking means, each computer system comprising a CPU, said article of manufacture comprising:
-
program storage means for storing and providing to the CPU program code means, said program code means comprising; means for defining an active state of a local computer system where changes made to a local copy of a data object by the local computer system are transmitted to at least one other computer system and where changes made to a copy of said data object stored by said at least one other computer system are transmitted to said local system; means for defining a deleted state of said local computer system where said local copy of the data object has been removed from said local computer system so that said local copy no longer exists on said local computer system; and means for defining at least one intermediate state between said active and deleted states of said local computer system where (a) said local computer system transmits to said at least one other computer system any changes made to the local copy of the data object by said local system which have not yet been transmitted to said at least one other computer system, and where (b) said local system verifies that all information contained in the local copy of the data object resides on at least one other computer system so that when the local copy of the data object is removed, changes made to the local copy of the data object will be preserved on said at least one other computer system by (1) sending a message to said at least one other replica node, and by (2) positively confirming that the saved changes reside on the at least one other replica node if the combination of all changes on all replica nodes other than the local replica node include at least the saved changes. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. An article of manufacture for use in a computer system defining a location in a computer network where a copy of a designated data object is replicated, said computer system logically connected to at least one other computer system through networking means, each computer system comprising a CPU, said article of manufacture comprising:
-
program storage means for storing and providing to the CPU program code means, said program code means comprising; means for initiating replication of changes which have been made but which have not yet been previously replicated to at least one other computer system in a computer network; means for verifying that the changes which have been made to said local copy of the data object reside of at least one other computer system in the computer network before said local copy of the data object is removed from said local computer system so that when the local copy of the data object is removed, changes made to the local copy of the data object will be preserved on said at least one other computer system by (1) sending a message to said at least one other replica node, and by (2) positively confirming that the saved changes reside on the at least one other replica node if the combination of all changes on all replica nodes other than the local replica node include at least the saved changes; and means for tracking a replica state of the local computer system with respect to said local copy of the data object, said replica state reflecting whether the local computer system is actively participating in the replication of said data object or whether the local computer system is in the process of removing the local copy of the data object from said local computer system. - View Dependent Claims (25, 26, 27)
-
Specification