System and method for database update replication
First Claim
1. An update system for creating an update package applicable to update a second database to make it consistent with a first database, said update system comprising:
- a transaction record queue for storing records representing changes made to the first database;
a capture machine for capturing changes made to the first database and storing in the transaction record queue, records representing data changes made to the first database;
a first extract record queue for storing records extracted from the transaction record queue;
an extract machine for selecting from the transaction record queue and storing in the first extract record queue, a first extract update batch comprising records relevant to a first channel of the second database; and
a build machine for coalescing the first extract update batch stored in the first extract record queue into a single-transaction package comprising a sequence of one or more updates expressing the cumulated impact of the first extract update batch to create a first update package applicable to the second database.
8 Assignments
0 Petitions
Accused Products
Abstract
The present invention provides a new, high-performance system and method for updating databases or other data compilations with changes entered in a source database or data compilation. Updates are preprocessed to reduce system update demands while increasing update flexibility for remote processing sites. Data update records are captured or collected and extracted into one or more channel or other criterion-specific batches. Transaction boundaries within a batch are collapsed, and the records coalesced into a package comprising a sequence of updates that reflect the cumulated impact of the extracted records. In a preferred embodiment, the batched records are sorted by extracted sort key entries and the package is converted to the physical format of respective targets. The created update package is, therefore, organized and physically formatted in correspondence with the target database. The update package is then directly applied to the target database without resort to the traditional front door processing through the local database manager. The processing typically required in database update replication is, thereby, avoided and the update process significantly streamlined. The update packages may be moved to targets by a variety of methods. The packages can be conveyed across network or Internet connections or between disconnected computers. The packages may be stored in computer readable media such as disks or CD ROMs, for example, from which the packages may be accessed by target systems. The update packages may also be made available through modems to field users or clients to allow fiexible update scheduling. The invention results in a high performance, database update system and method that significantly reduces system update burdens while increasing update flexibility and minimizing impacts from failures during updating. Updates are performed in significantly less time with a system and method that requires little administrative oversight and minimal personnel training.
-
Citations
32 Claims
-
1. An update system for creating an update package applicable to update a second database to make it consistent with a first database, said update system comprising:
-
a transaction record queue for storing records representing changes made to the first database; a capture machine for capturing changes made to the first database and storing in the transaction record queue, records representing data changes made to the first database; a first extract record queue for storing records extracted from the transaction record queue; an extract machine for selecting from the transaction record queue and storing in the first extract record queue, a first extract update batch comprising records relevant to a first channel of the second database; and a build machine for coalescing the first extract update batch stored in the first extract record queue into a single-transaction package comprising a sequence of one or more updates expressing the cumulated impact of the first extract update batch to create a first update package applicable to the second database. - View Dependent Claims (2, 3, 4, 5)
-
-
6. In a data processing system having source and target data compilations and a log record of entries representing transacted changes made to the source data compilation, an update system for updating the target data compilation to make it consistent with the source data compilation, said update system comprising:
-
a log entry storage; a capture machine for selecting from the log record and storing in the log entry storage, entries representing data changes made in the source data compilation; an extract entry storage; an extract machine for selecting from the entries stored in the log entry storage and storing in the extract entry storage, entries relevant to a selected attribute in the target data compilation; a build machine for building an update package comprising a sequence of statements expressing the cumulated impact of the entries in the extract storage; and an apply machine for applying, in a single transaction, the update package to the target data compilation to make it consistent with the source data compilation. - View Dependent Claims (7, 8, 9)
-
-
10. A method for creating an update package applicable to update a second database to make it consistent with a first database, said method comprising the steps of:
-
allocating a transaction record queue for storing records representing changes made to the first database; capturing changes made to the first database and storing in the transaction record queue, records representing data changes made to the first database; allocating a first extract record queue for storing records extracted from the transaction record queue; extracting from the transaction record queue and storing in the first extract record queue, a first extract update batch comprising records relevant to a first channel of the second database; and collapsing transaction boundaries in the first extract update batch and coalescing the first extract update batch into a single-transaction package comprising a sequence of one or more updates expressing the cumulated impact of the first extract update batch to create a first update package. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. In an organization employing first and second databases a method to make the second database consistent with the first database, the method comprising the steps of:
-
allocating a first storage area; capturing and storing in the first storage area, X entries representing data changes made to the first database, X being a number; allocating a second storage area; extracting from the first storage area and storing in the second storage area, an extract update batch comprising Y entries representing changes relevant to a channel of the second database, Y being a number; coalescing the first extract update batch into a package comprising a sequence of Z updates expressing the cumulated impact of the extract update batch to create an update package, Z being a number less than Y; and applying the update package to the second database. - View Dependent Claims (21, 22, 23, 24)
-
-
25. A computer readable medium comprising programming instructions for updating a second database to reflect changes made to a first database, the instructions comprising:
-
instructions for allocating a transaction record queue for storing records representing changes made to the first database; instructions for capturing changes made to the first database and storing in the transaction record queue, records representing data changes made to the first database; instructions for allocating an extract record queue for storing records extracted from the transaction record queue; instructions for extracting from the transaction record queue and storing in the extract record queue, an extract update batch comprising records relevant to a channel of the second database; and instructions for collapsing transaction boundaries in the extract update batch and coalescing the extract update batch into a single-transaction package comprising a sequence of one or more updates expressing the cumulated impact of the extract update batch to create an update package. - View Dependent Claims (26, 27, 28)
-
-
29. A computer readable medium comprising programming instructions for updating a second database to reflect changes made to a first database, the instructions comprising:
-
instructions for capturing from a transaction log and storing in a transaction record space, transaction log records representing data changes made to a first database; instructions for extracting from the transaction record space and storing in an extract record space, transaction log records relevant to a channel of a second database; and instructions for coalescing the transaction log records stored in the extract record space into a single-transaction batch comprising a sequence of one or more update records expressing the cumulated impact of the log records stored in the extract record space to create an update package applicable to the second database. - View Dependent Claims (30, 31, 32)
-
Specification