Failure Recovery

DBMS responsible for recovery management

  1. Regarding atomicity: enable a transaction to be
    1. Committed (With a guarantee database changes are permanent)
    2. Aborted (with a guarantee that there are no database changes)
  2. Regarding reliability: Enable a database to be recovered to a consistent state in case of hardware or software failure

Interaction with recovery management

Approaches to Recovery

  1. Shadowing
  2. Copy-on-write and merge-on-commit approaches
  3. Poor clustering
  4. Used in system R but not in modern systems
  5. Logging
  6. Uses log files on separate stable media
  7. Good utilization of buffers
  8. Preserves original clusters

Logging