IP Library Granted Patent US 10,423,642
Granted Patent B2
US 10,423,642 · App. 14/738,070 · Granted Sep 24, 2019

Aggregating modifications to a database for journal replay

Inventors: Rafal P. Konik (Oronoco, MN); Roger A. Mittelstadt (Byron, MN); Brian R. Muras (Otsego, MN); Chad A. Olstad (Rochester, MN)
Assignee: International Business Machines Corporation
G06F16/273G06F16/2358
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,423,642
App. No.
14/738,070
Granted
Sep 24, 2019
Kind
B2
Abstract

Aggregating database entry modifications for replay of database changes includes: inserting, in a journal modification table, of database entry modifications, where each database entry is associated with a relative record number; and, for each relative record number: aggregating, in the journal modification table, a plurality of the modifications into a single modification.

Claims (21)

1. An apparatus for aggregating database entry modifications for replay of database changes, the apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

inserting, in a journal modification table, a plurality of database entry modifications, each database entry associated with a relative record number, the plurality of database entry modifications comprising a plurality of entry insertion operations;

aggregating, by the at least one computer, in the journal modification table, two or more of the database entry modifications corresponding to a same relative record number by, for each relative record number, identifying, from one or more modifications of each field of a database entry, a last modification of more than one field of the database entry associated with the same relative record number and creating, for each relative record number, a single modification operation to effect each of the identified last modifications of the fields of the database entry;

identifying, from the entry insertion operations, a field common amongst the entry insertion operations;

identifying entry insertion operations having a matching value in the identified field; and

grouping the entry insertion operations having the matching value in the identified field by reassigning, in incremental order, the relative record number of each of the entry insertion operations having the matching value in the identified field.

2. The apparatus of claim 1 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the step of ordering, in the journal modification table, the database entry modifications by relative record number.

3. The apparatus of claim 1 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the step of removing from the journal modification table, for each aggregated database entry modification, all database entry modifications comprising the aggregated database entry modification.

4. The apparatus of claim 1 wherein inserting a plurality of database entry modifications in the journal modification table is carried out in parallel with tracking the plurality of database entry modifications in a journal.

5. The apparatus of claim 1 wherein inserting a plurality of database entry modifications in the journal modification table is carried out responsive to parsing a journal that includes the plurality of database entry modifications.

6. The apparatus of claim 1 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the step of, prior to aggregating the plurality of database entry modifications into a single modification operation, selecting the plurality of database entry modifications in dependence upon predefined criteria.

7. A computer program product for aggregating database entry modifications for replay of database changes, the computer program product disposed upon a computer readable medium, the computer program product comprising computer program instructions that, when executed, cause a computer to carry out the steps of:

inserting, in a journal modification table, a plurality of database entry modifications, each database entry associated with a relative record number, the plurality of database entry modifications comprising a plurality of entry insertion operations;

aggregating, by the at least one computer, in the journal modification table, two or more of the database entry modifications corresponding to a same relative record number by, for each relative record number, identifying, from one or more modifications of each field of a database entry, a last modification of more than one field of the database entry associated with the same relative record number and creating, for each relative record number, a single modification operation to effect each of the identified last modifications of the fields of the database entry;

identifying, from the entry insertion operations, a field common amongst the entry insertion operations;

identifying entry insertion operations having a matching value in the identified field; and

grouping the entry insertion operations having the matching value in the identified field by reassigning, in incremental order, the relative record number of each of the entry insertion operations having the matching value in the identified field.

8. The computer program product of claim 7 further comprising computer program instructions that, when executed, cause the computer to carry out the step of ordering, in the journal modification table, the database entry modifications by relative record number.

9. The computer program product of claim 7 further comprising computer program instructions that, when executed, cause the computer to carry out the step of removing from the journal modification table, for each aggregated database entry modification, all database entry modifications comprising the aggregated database entry modification.

10. The computer program product of claim 7 wherein inserting a plurality of database entry modifications in the journal modification table is carried out in parallel with tracking the plurality of database entry modifications in a journal.

11. The computer program product of claim 7 wherein inserting a plurality of database entry modifications in the journal modification table is carried out responsive to parsing a journal that includes the plurality of database entry modifications.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 12, 2015
From: KONIK, RAFAL P.; MITTELSTADT, ROGER A.; MURAS, BRIAN R.; OLSTAD, CHAD A.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 035829/0293 →
Continuity (1)
Related Publication 20160364399A1 · Dec 15, 2016