US 7,321,904 B2 | ||
Synchronization of a target database with a source database during database replication | ||
Paul J. Holenstein, Downingtown, Pa. (US); Bruce D. Holenstein, Media, Pa. (US); and Gary E. Strickler, Pottstown, Pa. (US) | ||
Assigned to Gravic, Inc., Malvern, Pa. (US) | ||
Filed on May 25, 2004, as Appl. No. 10/853,086. | ||
Application 10/853086 is a continuation of application No. 09/930641, filed on Aug. 15, 2001, granted, now 6,745,209. | ||
Prior Publication US 2004/0215670 A1, Oct. 28, 2004 | ||
Int. Cl. G06F 17/30 (2006.01) |
U.S. Cl. 707—201 [707/200; 707/202] | 28 Claims |
1. A method of synchronizing a target database with a source database in a database replication system, the method comprising:
(a) synchronizing the target database with the source database, the source database being on-line during the synchronization,
wherein the synchronizing includes:
(i) sending successive blocks of data from the source database to the target database, each block of data having a key range,
each block of data including one or more rows of data,
(ii) receiving the successively sent blocks of data at the target database,
(iii) posting the successively sent blocks of data to the target database, and
(iv) storing a total key range of the successively sent blocks of data;
(b) replicating data from the source database to the target database whenever changes are made to the source database, wherein
replication occurs during the synchronizing step (a);
(c) determining if the row of data, or the stored total key range inclusive of the row of data, of any replication data received
at the target database was previously posted to the target database in step (a)(iii); and
(d) posting any replication data received at the target database if the row of data, or the stored total key range inclusive
of the row of data, corresponding to the received data to be replicated has been previously posted to the target database
in step (a)(iii), and not posting any replication data received at the target database if the row of data, or the stored total
key range inclusive of the row of data, corresponding to the received data to be replicated has not been previously posted
to the target database in step (a)(iii).
|