Patent US2275560A successfully refreshed from Google Patents.
Patent US5581750A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5581750A Expired / Lapsed US ⏱️ 0.0 years remaining

System and method for improving data recovery performance

Assignee: International Business Machines Corp
•
Filing: 1993-03-15
•
Granted: 1996-12-03
•
Expires: 2013-03-15
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system and method are provided for recovering a computerized database. During transaction processing of a database, at least one log range is tracked comprising update transaction log records. The log range has a begin value and an end value. The begin value corresponds to a log RBA location of a first access of the database by an updating transaction. The end value corresponds to a log RBA location at a commit or abort of a last updating transaction. The end value corresponds to a point when the database is designated as being read only (called pseudo open). During recovery of the database, the update transaction log records in the log range are applied to a version of the database stored in non-volatile memory.

Inventors

  • 👤 Donald J. Haderle
  • 👤 James Z. Teng

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-31 18:30
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/14; G06F11/1471; Y; Y10; Y10S; Y10S707/00; Y10S707/99951; Y10S707/99952; Y10S707/99953

Claims Analysis

Total Claims: 11
Claim 1
Independent Claim 161 words
In a computerized database system having a central processing unit (CPU), volatile memory, non-volatile memory, a plurality of data stored in at least one database, wherein a plurality of transactions access a database for reading or updating, and for each database access, a transaction record is stored at an offset location in a sequential log, a method for recovering a database, comprising the steps of: during transaction processing of a database, tracking at least one log range comprising update transaction log records, said log range having a begin value and an end value, said begin value corresponding to a log offset location of a first access of the database only by an updating transaction and said end value corresponding to a log offset location at a commit or abort only of a last updating transaction; and during recovery of the database, applying the update transaction log records in said log range to a version of the database stored in non-volatile memory.
Claim 2
Dependent Claim 161 words
In a computerized database system having a central processing unit (CPU), volatile memory, non-volatile memory, a plurality of data stored in at least one database, wherein a plurality of transactions access a database for reading or updating, and for each database access, a transaction record is stored at an offset location in a sequential log, a method for recovering a database, comprising the steps of: during transaction processing of a database, tracking at least one log range comprising update transaction log records, said log range having a begin value and an end value, said begin value corresponding to a log offset location of a first access of the database only by an updating transaction and said end value corresponding to a log offset location at a commit or abort only of a last updating transaction; and during recovery of the database, applying the update transaction log records in said log range to a version of the database stored in non-volatile memory.
Claim 3
Dependent Claim 113 words
The method of claim 1, further comprising the steps for tracking the log range of: a) designating each database as a pseudo close database; b) tracking when an updating transaction accesses a database; c) for a pseudo close database accessed by an updating transaction, designating the pseudo close database as a pseudo open database and recording a corresponding offset location as the log range begin value; d) for a pseudo open database not accessed by an updating transaction for a predetermined period, designating the pseudo open database as pseudo close and recording a corresponding offset location as the log range end value; and e) repeating steps (b) through (d) a plurality of times.
Claim 4
Dependent Claim 13 words
The method of claim 2 wherein the predetermined period is based on time.
Claim 5
Dependent Claim 19 words
The method of claim 2 wherein the predetermined period is based on the number of records in the log.
Claim 6
Dependent Claim 69 words
The method of claim 2 further comprising the steps for tracking when an updating transaction accesses a pseudo open database of: maintaining a counter of uncommitted transactions updating a database; incrementing the counter when an updating transaction accesses the database; and decrementing the counter when the updating transaction is committed or aborted, wherein when the counter has a value of zero, there are no updating transactions accessing the database.
Claim 7
Dependent Claim 265 words
In a computerized database system having a central processing unit (CPU), volatile memory, non-volatile memory, and a plurality of data stored in a plurality of databases, wherein a plurality of transactions access a database for reading or updating, wherein for each database access, a transaction record is stored at an offset location in a sequential log, a method for recovering a database, comprising the steps of: during transaction processing of a database: a) designating each database as a pseudo close database; b) tracking when an updating transaction accesses a database; c) for a pseudo close database accessed by an updating transaction, designating the pseudo close database as a pseudo open database and recording a corresponding offset location of the sequential log as a log range begin value; d) maintaining a counter of uncommitted transactions updating a pseudo open database; e) incrementing the counter when an updating transaction accesses the pseudo open database; f) decrementing the counter when the updating transaction is committed or aborted, wherein when the counter has a value of zero, there are no updating transactions accessing the database; g) for a pseudo open database not accessed by an updating transaction for a predetermined period, designating the pseudo open database as a pseudo close database and recording a corresponding offset location of the sequential log as a log range end value; and h) repeating steps (d) through (g) a plurality of times; during recovery of the database: applying update transaction log records between each log range begin value and log range end value to a version of the database stored in non-volatile memory.
Claim 8
Dependent Claim 265 words
In a computerized database system having a central processing unit (CPU), volatile memory, non-volatile memory, and a plurality of data stored in a plurality of databases, wherein a plurality of transactions access a database for reading or updating, wherein for each database access, a transaction record is stored at an offset location in a sequential log, a method for recovering a database, comprising the steps of: during transaction processing of a database: a) designating each database as a pseudo close database; b) tracking when an updating transaction accesses a database; c) for a pseudo close database accessed by an updating transaction, designating the pseudo close database as a pseudo open database and recording a corresponding offset location of the sequential log as a log range begin value; d) maintaining a counter of uncommitted transactions updating a pseudo open database; e) incrementing the counter when an updating transaction accesses the pseudo open database; f) decrementing the counter when the updating transaction is committed or aborted, wherein when the counter has a value of zero, there are no updating transactions accessing the database; g) for a pseudo open database not accessed by an updating transaction for a predetermined period, designating the pseudo open database as a pseudo close database and recording a corresponding offset location of the sequential log as a log range end value; and h) repeating steps (d) through (g) a plurality of times; during recovery of the database: applying update transaction log records between each log range begin value and log range end value to a version of the database stored in non-volatile memory.
Claim 9
Dependent Claim 176 words
A computerized system for recovering a database wherein a plurality of transactions access the database for reading or updating, and for each database access, a transaction record is stored at an offset location in a sequential log, said system comprising: means for designating the database as a pseudo close database; means for tracking when an updating transaction accesses a database; means for designating a pseudo close database accessed by an updating transaction as a pseudo open database; means for recording an open log location only when an updating transaction first accesses a pseudo close database as a log range begin value; means for designating a pseudo open database not accessed by an updating transaction for a predetermined period as a pseudo close database; means for recording a close log location only when a last updating transaction commits or aborts as a log range end value; and means for applying update transaction log records in between said log range begin value and said log range end value to a version of the database stored in non-volatile memory.
Claim 10
Dependent Claim 176 words
A computerized system for recovering a database wherein a plurality of transactions access the database for reading or updating, and for each database access, a transaction record is stored at an offset location in a sequential log, said system comprising: means for designating the database as a pseudo close database; means for tracking when an updating transaction accesses a database; means for designating a pseudo close database accessed by an updating transaction as a pseudo open database; means for recording an open log location only when an updating transaction first accesses a pseudo close database as a log range begin value; means for designating a pseudo open database not accessed by an updating transaction for a predetermined period as a pseudo close database; means for recording a close log location only when a last updating transaction commits or aborts as a log range end value; and means for applying update transaction log records in between said log range begin value and said log range end value to a version of the database stored in non-volatile memory.
Claim 11
Dependent Claim 62 words
The system of claim 7 further comprising: means for maintaining a counter of uncommitted transactions updating a database; means for incrementing the counter when an updating transaction accesses the database; and means for decrementing the counter when an updating transaction has been committed or aborted, wherein when the counter has a value of zero, there are no updating transactions accessing the database.

References Cited (Backward Citations)

US5333314A Cited
US5329628A Cited
US5155850A Cited
US5363505A Cited
US5333303A Cited
US5369757A Cited
US5276872A Cited
US5287501A Cited
US5280611A Cited
US5280612A Cited
US5278982A Cited
US5335343A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-12-03 2000-06-03 2000-12-03 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-12-03 2004-06-03 2004-12-03 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-12-03 2008-06-03 2008-12-03 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag