Apparatus and method for validating a database record before applying journal data
First Claim
1. A computer apparatus comprising:
- (A) at least one processor;
(B) a memory coupled to the at least one processor;
(C) a database journal residing in the memory, the database journal including a journal entry for a selected record in a database, wherein the journal entry includes;
(C1) an indication of a change to at least one portion of the selected record; and
(C2) a validation value that represents a state of the selected record in the database before making the change to the selected record and wherein the validation value comprises a checksum.
1 Assignment
0 Petitions
Accused Products
Abstract
An apparatus and method includes a database journal that records journal entries. Each journal entry includes a validation value that is computed from the data and metadata for the record before it is changed. In this manner, journal entries may be applied with confidence to a record in a database. This is especially useful when minimized data journal entries are used. If the validation value of the journal entry matches the validation value computed from the data and metadata of the record that the journal entry is to be applied to, then the record before applying the journal entry is identical to the record in the original database, and the journal data may be applied to the database record. If the validation value of the journal entry does not match the validation value computed from the data and metadata of the record that the journal entry is to be applied to, the record is not the same as in the original database when the journal entry was generated. As a result, an error message is generated to indicate that an error was encountered when applying the journal entry. In this manner, the apparatus and method of the preferred embodiments automatically validate a database record before applying journal data to the record.
-
Citations
37 Claims
-
1. A computer apparatus comprising:
-
(A) at least one processor; (B) a memory coupled to the at least one processor; (C) a database journal residing in the memory, the database journal including a journal entry for a selected record in a database, wherein the journal entry includes; (C1) an indication of a change to at least one portion of the selected record; and (C2) a validation value that represents a state of the selected record in the database before making the change to the selected record and wherein the validation value comprises a checksum. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer apparatus comprising:
-
(A) at least one processor; (B) a memory coupled to the at least one processor; (C) a database residing in the memory; and (D) a database journal residing in the memory, wherein the database journal includes a journal entry for a selected record in a database, wherein the journal entry includes; (D1) an indication of a change to at least one portion of the selected record; and (D2) a checksum that represents a state of the selected record in the database before making the change to the at least one portion, the checksum being computed from data in the selected record before making the change and from metadata for the selected record.
-
-
7. A computer-implemented method for journaling changes in a database comprising the steps of:
-
(1) determining when a change to a selected record in the database needs to be made; (2) before making the change to the selected record, computing a validation value that represents a state of the selected record in the database; and (3) storing the validation value in a journal entry that indicates the change to the selected record. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A computer-implemented method for replicating a first database in a source location to a second database in a target location, the method comprising the steps of:
-
(1) at the source location, performing the steps of; (1A) determining when a change to a selected record in the first database needs to be made; (1B) before making the change to the selected record, generating a journal entry for the selected record that includes; (1B1) an indication of a change to at least one portion of the selected record; and (1B2) a validation value that represents a state of the selected record in the first database before making the change to the at least one portion; (2) transmitting the journal entry to the target location; (3) at the target location, performing the steps of; (3A) computing a validation value for a record in the second database that corresponds to the selected record in the first database; (3B) comparing the validation value for the corresponding record in the second database to the validation value in the transmitted journal entry; and (3C) if the validation values in step (3B) match, applying the transmitted journal entry to the second database. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
-
21. A computer-implemented method for applying a journal entry to a corresponding record in a database, the method comprising the steps of:
-
(1) reading a validation value stored in the journal entry, wherein the validation value represents a state of the corresponding record in the database before making the change to at least one portion of the record; (2) computing a validation value for the corresponding record in the database; (3) comparing the validation value for the corresponding record in the database to the validation value stored in the journal entry; and (4) if the validation values in step (3) match, applying the journal entry to the database. - View Dependent Claims (22, 23, 24, 25)
-
-
26. A program product on a tangible computer-readable storage, media comprising:
(A) a database journal that includes a journal entry for a selected record in a database, wherein the journal entry includes; (A1) an indication of a change to at least one portion of the selected record; and (A2) a validation value that represents a state of the selected record in the database before making the change to the selected record. - View Dependent Claims (27, 28, 29, 30, 31, 32, 33, 34)
-
35. A program product on a tangible computer-readable storage, media comprising:
(A) a database journal that includes a journal entry for a selected record in a database, wherein the journal entry includes; (A1) an indication of a change to at least one portion of the selected record; and (A2) a checksum that represents a state of the selected record in the database before making the change to the at least one portion, the checksum being computed from data in the selected record before making the change and from metadata for the selected record. - View Dependent Claims (36, 37)
Specification