Encyclopedia of Database Systems

2009 Edition

Multi-Level Recovery and the ARIES Algorithm

  • Gerhard Weikum
Reference work entry
DOI: https://doi.org/10.1007/978-0-387-39940-9_225


In contrast to basic database recovery with page-level logging and redo/undo passes, multi-level recoveryis needed whenever the database system uses fine-grained concurrency control, such as index-key locking or operation-based “semantic” conflict testing, or when log records describe composite operations that are not guaranteed to be atomic by single page writes (as a consequence of concurrency control or for other reasons). Advanced methods perform logging and recovery at multiple levels like pages and data objects (records, index entries, etc.). Page-level recovery is needed to ensure the atomicity and applicability of higher-level operations, and also for efficient redo. Higher-level recovery is needed to perform correct undo for composite operations of loser transactions. In addition, logged actions at all levels must be testable at recovery-time, by embedding extra information in database pages, typically using log sequence numbers (LSNs), and appropriate logging of...

This is a preview of subscription content, log in to check access.

Recommended Reading

  1. 1.
    Borr A.J. Robustness to crash in a distributed database: a non shared-memory multi-processor approach. In Proc. 10th Int. Conf. on Very Large Data Bases, 1984, pp. 445–453.Google Scholar
  2. 2.
    Crus R.A. Data recovery in IBM database 2. IBM Syst. J., 23(2):178–188, 1984.CrossRefGoogle Scholar
  3. 3.
    Gray J., McJones P.R., Blasgen M.W., Lindsay B.G., Lorie R.A., Price T.G., Putzolu G.R., and Traiger I.L. The recovery manager of the system R database manager. ACM Comput. Surv., 13(2):223–243, 1981.CrossRefGoogle Scholar
  4. 4.
    Gray J. and Reuter A. Transaction Processing: Concepts and Techniques. Morgan Kaufmann, San Francisco, CA, 1993.zbMATHGoogle Scholar
  5. 5.
    Kuo D. Model and verification of a data manager based on ARIES. ACM Trans. Database Syst., 21(4):427–479, 1996.CrossRefGoogle Scholar
  6. 6.
    Lomet D.B. MLR: a recovery method for multi-level systems. In Proc. ACM SIGMOD Int. Conf. on Management of Data, 1992, pp. 185–194.Google Scholar
  7. 7.
    Mohan C. Repeating history beyond ARIES. In Proc. 25th Int. Conf. on Very Large Data Bases, 1999, pp. 1–17.Google Scholar
  8. 8.
    Mohan C., Haderle D.J., Lindsay B.G., Pirahesh H., and Schwarz P.M. ARIES: a transaction recovery method supporting fine-granularity locking and partial rollbacks using write-ahead logging. ACM Trans. Database Syst., 17(1):94–162, 1992.CrossRefGoogle Scholar
  9. 9.
    Moss J.E.B., Griffeth N.D., and Graham M.H. Abstraction in recovery management. In Proc. ACM SIGMOD Int. Conf. on Management of Data, 1986, pp. 72–83.Google Scholar
  10. 10.
    Weikum G., Hasse C., Brössler P., and Muth P. Multi-level recovery. In Proc. 9th ACM SIGACT-SIGMOD-SIGART Symp. on Principles of Database Systems, 1990, pp. 109–123.Google Scholar
  11. 11.
    Weikum G. and Vossen G. Transactional Information Systems: Theory, Algorithms, and the Practice of Concurrency Control and Recovery. Morgan Kaufmann, San Francisco, CA, 2001.Google Scholar

Copyright information

© Springer Science+Business Media, LLC 2009

Authors and Affiliations

  • Gerhard Weikum
    • 1
  1. 1.Max-Planck Institute for InformaticsSaarbrückenGermany