Consultor Eletrônico



Kbase P26453: What happens during an online backup to the database?
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   16/11/2010
Status: Verified

GOAL:

Is it possible for users to continue updating data while the an online backup occurs?

GOAL:

What happens during probkup online?

GOAL:

Behavior of probkup online and the BI file.

GOAL:

How does online probkup work ?

GOAL:

How are database changes dealt with during online probkup?

FACT(s) (Environment):

All Supported Operating Systems
Progress/OpenEdge Product Family
OpenEdge Category: Database

FIX:

The following describes the steps that occur during an online backup (probkup online). Probkup online is the only online backup that Progress supports.

At the moment the probkup begins ALL operations against the database are suspended until the BI file is backed up, after which they can continue while the relevant database blocks are being backed up. This is to ensure that is a concurrent snapshot of the database (shared-memory, bi file and disk resident database) at the time the probkup command was executed. This is ensured as follows:

1. When the online backup starts, all BI logging activity stops - so ALL operations against the database are suspended.

2. The database buffer pool and the BI buffers are flushed. If page writers are in use (APW, BIW, AIW), there will be correspondingly less buffers needing to be flushed, which should result in this stage being carried out faster than if no pagewriters were active.

3. After the buffers are flushed, online probkup backs up the BI file. More exactly, it backs up to the position of the before-image file with the High Water Mark. In this context the term "BI file" does not refer to the whole disk-resident file, the total size of which is the sum of all the physical BI extents; it refers instead to the bi blocks (as grouped by biclusters) currently in the double-linked bi cluster chain. Effectively, the High Water Mark of the bi extents. Once the BI file is backed up, BI logging activity can then begin again.

4. After the BI is backed up, the blocks in the database get backed up, from the beginning of the database to the end of the database. Or more specifically, to the High Water Mark (HWM) of each Storage Area. The exception to this stage is when an incremental online backup is done, which backs up only the data that has changed since the last full or incremental backup.

At this stage of an online backup users can now make changes, database buffers may need to be read from and written to disk while the online backup is running. If a database block needs to be modified it gets backed up first. The online backup jumps to that block in the shared-memory buffer pool (-B), backs it up, increments the backup counter on that block then releases it so that it can be modified. When the online backup encounters that block again, it simply skips the block, because it has already been backed up.

In this way, when the online probkup is restored, the notes in the bi for the Physical Redo Phase (and Logical Redo and Undo as may be necessary) can successfully be executed as the information in the database blocks correspond to that exact snapshot in time that the database was at.

5. If after-imaging is enabled, probkup online also automatically causes an AI extent switch. Note that AI extents have to be backed up separately using system utilities - they are not backed up as part of probkup.

Note:The backup process then will cause a temporary spike in disk IO reads as it needs to determine how much data needs to be
backed up.