Merge, commit recovery protocol for real-time database management systems
First Claim
1. A computer database method comprising the steps of:
- organizing data into atomic data sets;
breaking down transactions containing a plurality of statements operating on said data into projections having statements which operate on only one said atomic data set;
executing statements from one said projection, said statements comprising read commands, write commands, assignment commands, transaction delimiting commands, and projection delimiting commands;
generating a depends on graph during execution of said statements;
storing projection recovery data during execution of said statements;
analyzing said depends on graph upon receipt of a projection commit command to determine if said projection is related to at least one other projection;
committing said projection if said analyzed projection is separate from said other projections;
delaying commit of said analyzed projection until the receipt of a projection commit command of said related projection if said projection is related to another projection;
analyzing said depends on graph if a transaction error is encountered to determine if a currently active projection is related to another projection;
aborting said currently active projection upon a transaction error;
aborting said related projections to said currently active projection if any, after encountering a transaction error; and
recovering from said aborted projection to a consistent database state.
1 Assignment
0 Petitions
Accused Products
Abstract
A computer database method using data organized data into atomic data sets and transactions separated into a plurality of statements called projections which operate on only one said atomic data set. Statements such as read commands, write commands, assignment commands, transaction delimiting commands, and projection delimiting commands are executed, and a depends on graph is created during execution of the statements. Projection recovery data is stored during operation. When a statement requests commit the depends on graph is analyzed to determine if the projection is related to another projection in the transaction. The projection is committed if it is not related to another projection and delayed if related to another projection. Likewise, the system determines related projections and aborts them together if a transaction error occurs. The method can recover to a consistent database state after projection abortion.
27 Citations
5 Claims
-
1. A computer database method comprising the steps of:
-
organizing data into atomic data sets; breaking down transactions containing a plurality of statements operating on said data into projections having statements which operate on only one said atomic data set; executing statements from one said projection, said statements comprising read commands, write commands, assignment commands, transaction delimiting commands, and projection delimiting commands; generating a depends on graph during execution of said statements; storing projection recovery data during execution of said statements; analyzing said depends on graph upon receipt of a projection commit command to determine if said projection is related to at least one other projection; committing said projection if said analyzed projection is separate from said other projections; delaying commit of said analyzed projection until the receipt of a projection commit command of said related projection if said projection is related to another projection; analyzing said depends on graph if a transaction error is encountered to determine if a currently active projection is related to another projection; aborting said currently active projection upon a transaction error; aborting said related projections to said currently active projection if any, after encountering a transaction error; and recovering from said aborted projection to a consistent database state. - View Dependent Claims (2, 3, 4, 5)
-
Specification