# US 7,412,460 B2 · DBMS backup without suspending updates and corresponding recovery using separately stored log and data files

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 7,412,460 B2
- Document ID: US7412460B2
- Status: Granted
- Kind: B2
- Application number: 10/600,221
- Filed: 2003-06-19
- Published: 2004-12-23
- Granted: 2008-08-12
- Earliest claimed: 2003-06-19
- Assignees: International Business Machines Corporation
- Inventors: Namik Hrle; Jeffrey William Josten; Thomas Majithia; James Zu-chia Teng
- Web page: https://patentgrep.com/patent/US7412460B2

## CPC

- G06F 11/1466: {to make the backup process non-disruptive}
- G06F 11/1471: involving logging of persistent data for recovery
- G06F 2201/80: Database-specific techniques
- Y10S 707/99945: Object-oriented database structure processing
- Y10S 707/99948: Application of database or data structure, e.g. distributed, multimedia, or image
- Y10S 707/99953: Recoverability
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- Y10S: TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS

## Abstract

A method for performing a system level backup of a log-ahead database management system (DBMS) without suspending updates by application programs is described. The DBMS comprises a database mainline system, a backup utility and a restore utility. The data and log records are stored on separate storage volumes. Log records are written to identify objects that require special handling during the point-in-time recovery. The database engine operates normally during a backup except for suspending actions that would alter the file system catalog or write updates across a storage volume boundary; and by freezing the REDO log point in its checkpoint information. The backup utility copies the data volumes first and optionally the log volumes second while updates are allowed. The resulting inconsistencies are resolved either during a DBMS restart or during a point-in-time (PIT) recovery performed by the restore utility.

## Claims

### Claim 1

A database management system comprising:
a mainline database system that makes modifications to data in the database management system using a write-ahead logging protocol; stores data on a first set of storage volumes and stores log records on a second set of storage volumes; restores consistency between the log records and the data during a restart, and while a backup system lock is held by a backup utility, continues updating objects except for suspending actions that change an external file system catalog, suspending writing updates of objects that extend across a storage volume boundary; and freezing a REDO log point in checkpoint information while the backup system lock is taken by the backup utility.

### Claim 2 (depends on 1)

The database management system of claim 1 further comprising a backup utility that obtains the backup system lock before starting a backup process; copies the first set of storage volumes to a first set of backup volumes; records information identifying the first set of backup volumes in a dataset.

### Claim 3 (depends on 2)

The database management system of claim 2, wherein the backup utility copies the second set of storage volumes to a backup medium; and records backup volume information for the second set of storage volumes in the dataset.

### Claim 4 (depends on 2)

The database management system of claim 2 further comprising a restore utility that performs a point-in-time recovery using the data from the first set of backup volumes, a user specified point-in-time, and the logs on the second set of storage volumes.

### Claim 5 (depends on 4)

The database management system of claim 4 wherein the restore utility marks a first object as recovery-pending when a log record identifies the first object as having been updated without log records so that subsequent restoration of the first object can be made from an image copy.

### Claim 6 (depends on 1)

The database management system of claim 1 wherein the mainline database system writes log records to identify objects that have been updated without log records and writes log records to identify objects that have been created, extended and/or deleted.

### Claim 7 (depends on 1)

The database management system of claim 1 wherein the mainline database system stores checkpoint information periodically and the backup utility records a log apply starting point corresponding to a last checkpoint information storage point.

### Claim 8 (depends on 1)

The database management system of claim 1 wherein the mainline database system obtains the backup system lock before updating objects that change an external file system catalog or that extend across a storage volume boundary.

### Claim 9

A database management system, that performs a backup without suspending updates and the backup can be restored using a write-ahead logging protocol restart, comprising:
means for modifying data in the database management system using a write-ahead logging protocol;
means for restoring consistency between log records and the data during a restart;
means for storing data on a first set of storage volumes and storing log records on a second set of storage volumes;
means for freezing a REDO log point in checkpoint information while a backup system lock is taken; and
means for continuing to update the data while the backup system lock is taken, except for suspending actions that change an external file system catalog, and except for suspending writing updates of objects that extend across a storage volume boundary.

### Claim 10 (depends on 9)

The database management system of claim 9 further comprising:
means for obtaining the backup system lock before starting a backup process; for copying the first set of storage volumes to a first set of backup volumes; and for recording information identifying the first set of backup volumes in a recovery control dataset and in an external file system's control dataset.

### Claim 11 (depends on 10)

The database management system of claim 10 further comprising means for copying the second set of storage volumes to a second set of backup volumes; and means for recording information identifying the second set of backup volumes in the recovery control dataset and in the external file system's control dataset.

### Claim 12 (depends on 10)

The database management system of claim 10 further comprising means for restoring data from the first set of backup volumes to the first set of storage volumes and for performing a point-in-time recovery using a user specified point-in-time, and the logs on the second set of storage volumes.

### Claim 13 (depends on 12)

The database management system of claim 12 wherein the means for restoring data further comprises means for marking a first object as recovery-pending when a log record identifies the first object as having been updated without log records so that subsequent restoration of the first object can be made from an image copy; processing log records identifying a second object which has been newly created by allocating space for the second object; processing log records identifying a third object which has been newly extended by allocating additional space for the third object; processing log records identifying a fourth object which has been deleted by freeing space for the fourth object; and means for setting a mode to indicate that the point-in-time recovery has completed.

### Claim 14 (depends on 9)

The database management system of claim 9 further comprising means for writing log records to identify objects that have been updated without log records and writing log records to identify objects that have been created, extended or deleted.

### Claim 15 (depends on 10)

The database management system of claim 10 further comprising means for storing checkpoint information periodically and the means for backing up the data further comprises means for recording a log apply starting point corresponding to a last checkpoint information storage point.

### Claim 16 (depends on 9)

The database management system of claim 9 further comprising means for obtaining the backup system lock before updating objects that change an external file system catalog or that extend across a storage volume boundary.

### Claim 17

A method of operating a database management system comprising the steps of:
modifying data in the database management system using a write-ahead logging protocol;
restoring consistency between log records and the data during a restart;
storing data on a first set of storage volumes and storing log records on a second set of storage volumes;
freezing a REDO log point in checkpoint information while a backup system lock is taken; and
continuing to update the data while the backup system lock is taken, except for suspending actions that change an external file system catalog, and except for suspending writing updates of objects that extend across a storage volume boundary.

### Claim 18 (depends on 17)

The method of claim 17 further comprising the step of backing up the data and wherein the step of backing up the data further comprises obtaining the backup system lock and after obtaining the backup system lock, copying the first set of storage volumes to a first set of backup volumes.

### Claim 19 (depends on 18)

The method of claim 18 further wherein the step of backing up the data further comprises the step of recording information identifying the first set of backup volumes in a recovery control dataset and in an external file system's control dataset.

### Claim 20 (depends on 18)

The method of operating the database management system of claim 18 further comprising backing up log records, after backing up the data, by copying the second set of storage volumes to a second set of backup volumes.

### Claim 21 (depends on 18)

The method of operating the database management system of claim 18 further comprising the steps of restoring data from the first set of backup volumes to the first set of storage volumes and performing a point-in-time recovery using a user specified point-in-time, and the log on the second set of storage volumes.

### Claim 22 (depends on 21)

The method of operating the database management system of claim 21 wherein the step of performing a point-in-time recovery further comprises the steps of marking a first object as recovery-pending when a log record identifies the first object as having been updated without log records so that subsequent restoration of the first object can be made from an image copy; processing log records identifying a second object which has been newly created by allocating space for the second object; processing log records identifying a third object which has been newly extended by allocating additional space for the third object; processing log records identifying a fourth object which has been deleted by freeing space for the fourth object; and setting a mode to indicate that the point-in-time recovery has completed.

### Claim 23 (depends on 17)

The method of operating database management system of claim 17 further comprising writing log records to identify objects that have been updated without log records and writing log records to identify objects that have been created, extended or deleted.

### Claim 24 (depends on 18)

The method of operating the database management system of claim 18 further comprising storing checkpoint information periodically and the step of backing up the data further comprises recording a log apply starting point corresponding to a last checkpoint information storage point.

### Claim 25 (depends on 17)

The method of operating the database management system of claim 17 wherein the step of continuing to update the data while a backup system lock is taken further comprises obtaining the backup system lock before updating objects that change an external file system catalog or that extend across a storage volume boundary.

### Claim 26

An article of manufacture comprising computer usable media including at least one computer program recorded therein that is capable of causing a computer system to perform a method of operating a database management system comprising the steps of:
modifying data in the database management system using a write-ahead logging protocol;
restoring consistency between log records and the data during a restart;
storing data on a first set of storage volumes and storing log records on a second set of storage volumes;
freezing a REDO log point in checkpoint information while a backup system lock is taken; and
continuing to update the data while the backup system lock is taken, except for suspending actions that change an external file system catalog, and except for suspending writing updates of objects that extend across a storage volume boundary.

### Claim 27 (depends on 26)

The article of manufacture of claim 26 wherein the method further comprises the step of backing up the data and wherein the step of backing up the data further comprises obtaining the backup system lock and after obtaining the backup system lock, copying the first set of storage volumes to a first set of backup volumes.

### Claim 28 (depends on 27)

The article of manufacture of claim 27 wherein the step of backing up the data further comprises the step of recording information identifying the first set of backup volumes in a control dataset.

### Claim 29 (depends on 27)

The article of manufacture of claim 27 wherein the method further comprises backing up log records, after backing up the data, by copying the second set of storage volumes to a second set of backup volumes.

### Claim 30 (depends on 29)

The article of manufacture of claim 29 wherein the method further comprises
recording information identifying the second set of backup volumes in the recovery control dataset and in the external file system's control dataset.

### Claim 31 (depends on 27)

The article of manufacture of claim 27 wherein the method further comprises
the steps of restoring data from the first set of backup volumes to the first set of storage volumes and performing a point-in-time recovery using a user specified point-in-time, and the logs on the second set of storage volumes.

### Claim 32 (depends on 31)

The article of manufacture of claim 31 wherein the step of performing a point-in-time recovery further comprises the steps of marking a first object as recovery-pending when a log record identifies the first object as having been updated without log records so that subsequent restoration of the first object can be made from an image copy; processing log records identifying a second object which has been newly created by allocating space for the second object; processing log records identifying a third object which has been newly extended by allocating additional space for the third object; processing log records identifying a fourth object which has been deleted by freeing space for the fourth object; and setting a mode to indicate that the point-in-time recovery has completed.

### Claim 33 (depends on 26)

The article of manufacture of claim 26 wherein the step of continuing to update the data while a backup system lock is taken further comprises obtaining the backup system lock before updating objects that change an external file system catalog or that extend cross a storage volume boundary.
