Browse Prior Art Database

Backward Restore From Incremental Backup

IP.com Disclosure Number: IPCOM000121437D
Original Publication Date: 1991-Sep-01
Included in the Prior Art Database: 2005-Apr-03
Document File: 3 page(s) / 112K

Publishing Venue

IBM

Related People

Schwendemann, W: AUTHOR [+2]

Abstract

This article describes an incremental backup methodology and how a database can be restored from incremental backup "tapes."

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Backward Restore From Incremental Backup

      This article describes an incremental backup methodology
and how a database can be restored from incremental backup "tapes."

      Currently, most programs that restore a database start with the
latest "full backup" of a database, then update database pages from
subsequent incremental backups. The incremental backups are processed
in chronological order (i.e., old to new).  This technique is not
very efficient if the database being restored is very volatile. Being
that a database is very active in terms of updates, it is very likely
that a "page" has been updated numerous times since the last full
backup.  Therefore, it is very inefficient to restore a database in
chronological order, since it is quite probable that an "older" page
will be overlaid with a "newer" page. This may occur frequently in
the course of restoring a database.

      Efficiencies will be realized if the restoration is done in a
reverse chronological order (i.e., new to old). The processing
overhead to replace an older page with a newer page will be
eliminated.
OVERVIEW OF INCREMENTAL BACKUP RESTORE TECHNIQUE
 o   Time = 0. This line represents a "full backup" of a database.
The database consists of 9 pages.
      o   Time = 1. This line represents an incremental backup. Pages
1, 2, 4, 5, 7, and 8 have changed since the last full backup.
   o   Time = 2. This line also represents an incremental backup.
Pages 2, 3, 5, 6, 8, 9 have been modified since the last backup at
Time = 1.

      When a database is being restored, the "backup files" are
processed in chronological order. The restoration processing would be
as follows:
        1.  The file representing time = 0 would be read in. Nine
pages of data will be processed.
        2.  The file representing time = 1 would be read in. Six
pages would be processed (i.e., processing would overlay the existing
pages).
        3.  The file representing time = 2 would be read in. Six
pages would be processed (i.e., processing would overlay the existing
pages).

      From this short example, one can easily see that the processing
of pages 2, 5, 8 at time = 1 is wasted since those pages will
be again replaced when the file corresponding to time = 2 is read in.
The initial processing of the "full backup" is also for naught, since
the incremental backups have replaced all the pages of the database.
This restoration algorithm required that 3 files be opened/closed,
and 21 pages of data be read/written.
NEW BACKWARD RESTORE TECHNIQUE

      From the prior example one can deduce that an efficient
algorithm for restoring a database is to process incremental backup
files in the reverse chronological sequ...