Recovery System Dbms

Only available on StudyMode
  • Topic: Transaction processing, ACID, Database
  • Pages : 23 (6433 words )
  • Download(s) : 333
  • Published : March 23, 2013
Open Document
Text Preview
17. Recovery System in DBMS - Presentation Transcript
1. Chapter 17: Recovery System
* Failure Classification
* Storage Structure
* Recovery and Atomicity
* Log-Based Recovery
* Shadow Paging
* Recovery With Concurrent Transactions
* Buffer Management
* Failure with Loss of Nonvolatile Storage
* Advanced Recovery Techniques
* ARIES Recovery Algorithm
* Remote Backup Systems
2. Failure Classification
* Transaction failure :
* Logical errors : transaction cannot complete due to some internal error condition * System errors : the database system must terminate an active transaction due to an error condition (e.g., deadlock) * System crash : a power failure or other hardware or software failure causes the system to crash. * Fail-stop assumption : non-volatile storage contents are assumed to not be corrupted by system crash * Database systems have numerous integrity checks to prevent corruption of disk data * Disk failure : a head crash or similar disk failure destroys all or part of disk storage * Destruction is assumed to be detectable: disk drives use checksums to detect failures 3. Recovery Algorithms

* Recovery algorithms are techniques to ensure database consistency and transaction atomicity and durability despite failures * Focus of this chapter
* Recovery algorithms have two parts
* Actions taken during normal transaction processing to ensure enough information exists to recover from failures * Actions taken after a failure to recover the database contents to a state that ensures atomicity, consistency and durability 4. Storage Structure

* Volatile storage :
* does not survive system crashes
* examples: main memory, cache memory
* Nonvolatile storage :
* survives system crashes
* examples: disk, tape, flash memory, non-volatile (battery backed up) RAM * Stable storage :
* a mythical form of storage that survives all failures * approximated by maintaining multiple copies on distinct nonvolatile media 5. Stable-Storage Implementation
* Maintain multiple copies of each block on separate disks * copies can be at remote sites to protect against disasters such as fire or flooding. * Failure during data transfer can still result in inconsistent copies: Block transfer can result in * Successful completion

* Partial failure: destination block has incorrect information * Total failure: destination block was never updated * Protecting storage media from failure during data transfer (one solution): * Execute output operation as follows (assuming two copies of each block): * Write the information onto the first physical block. * When the first write successfully completes, write the same information onto the second physical block. * The output is completed only after the second write successfully completes. 6. Stable-Storage Implementation (Cont.)

* Protecting storage media from failure during data transfer (cont.): * Copies of a block may differ due to failure during output operation. To recover from failure: * First find inconsistent blocks:

* Expensive solution : Compare the two copies of every disk block. * Better solution :
* Record in-progress disk writes on non-volatile storage (Non-volatile RAM or special area of disk). * Use this information during recovery to find blocks that may be inconsistent, and only compare copies of these. * Used in hardware RAID systems

* If either copy of an inconsistent block is detected to have an error (bad checksum), overwrite it by the other copy. If both...
tracking img