Method and apparatus for providing database system replication in a mixed propagation environment
First Claim
1. A method for maintaining multiple copies of a body of data at multiple sites, the method comprising the steps of:
- detecting a change to a first copy of the body of data at a first site;
in response to detecting the change to the first copy, performing the steps of;
asynchronously propagating the change to a second copy of the body of data at a second site; and
synchronously propagating the change to a third copy of the body of data at a third site.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for replicating data among sites is provided. The method allows changes to the same body of data to be replicated synchronously to some destination sites and asynchronously to other destination sites. Such mixed propagation configurations allow synchronous updating to selected remote copies of replicated data where data integrity is a high priority, and asynchronous propagation to remaining copies of replicated data in order to allow transactions to be committed locally regardless of whether the transaction is committed at a remote copy of the replicated data. The propagation mode is selectable by a user on a site-to-site basis for each replicated body of data, thus providing a mix of availability and consistency that is not possible in purely synchronous or purely asynchronous replication systems.
277 Citations
22 Claims
-
1. A method for maintaining multiple copies of a body of data at multiple sites, the method comprising the steps of:
-
detecting a change to a first copy of the body of data at a first site; in response to detecting the change to the first copy, performing the steps of; asynchronously propagating the change to a second copy of the body of data at a second site; and synchronously propagating the change to a third copy of the body of data at a third site. - View Dependent Claims (2, 3, 4)
-
-
5. A computer network comprising:
-
a first site having a first copy of a body of data; a second site having a second copy of the body of data; a third site having a third copy of the body of data; and a replication mechanism which is configured to respond to changes being made to the first copy by synchronously propagating the changes to the second site and asynchronously propagating the changes to the third site. - View Dependent Claims (6)
-
-
7. A method for replicating data in a computer system, the method comprising the steps of:
-
maintaining a first copy of a body of data at a first site; maintaining a second copy of the body of data at a second site; synchronously propagating to said second site changes made to said first copy; asynchronously propagating to said first site changes made to said second copy. - View Dependent Claims (8, 9)
-
-
10. A method for maintaining an updatable snapshot at a first site that reflects data stored at a second site, the method comprising the steps of:
-
periodically transmitting change information from the second site to the first site; in response to receiving the change information at the first site, revising the snapshot to reflect changes identified in the change information; and synchronously propagating to said second site changes made to the updatable snapshot at the first site. - View Dependent Claims (11, 12)
-
-
13. A computer-readable medium carrying sequences of instructions for maintaining multiple copies of a body of data at multiple sites, the sequences of instructions comprising instructions for performing the steps of:
-
detecting a change to a first copy of the body of data at a first site; in response to detecting the change to the first copy, performing the steps of; asynchronously propagating the change to a second copy of the body of data at a second site; and synchronously propagating the change to a third copy of the body of data at a third site. - View Dependent Claims (14, 15, 16)
-
-
17. A computer-readable medium carrying sequences of instructions for replicating data in a computer system, the sequences of instructions comprising instructions for performing the steps of:
-
maintaining a first copy of a body of data at a first site; maintaining a second copy of the body of data at a second site; synchronously propagating to said second site changes made to said first copy; asynchronously propagating to said first site changes made to said second copy. - View Dependent Claims (18, 19)
-
-
20. A computer-readable medium carrying sequences of instructions for maintaining an updatable snapshot at a first site that reflects data stored at a second site, the sequences of instructions comprising instructions for performing the steps of:
-
periodically transmitting change information from the second site to the first site; in response to receiving the change information at the first site, revising the snapshot to reflect changes identified in the change information; and synchronously propagating to said second site changes made to the updatable snapshot at the first site. - View Dependent Claims (21, 22)
-
Specification