Chapter 23
Database
Recovery Techniques
In this chapter we discuss some of the techniques that can be used for
database recovery from failures. In Section 21.1.4 we discussed the different
causes of failure, such as system crashes and transaction errors. Also, in
Section 21.2, we covered many of the concepts that are used by recovery
processes, such as the system log and commit points.
This chapter presents additional concepts that are relevant to recovery
protocols, and provides an overview of the various database recovery algorithms
We start in Section 23.1 with an outline of a typical recovery procedure and a
categorization of recovery algorithms, and then we discuss several recovery
concepts, including write-ahead logging, in-place versus shadow updates, and
the process of rolling back (undoing) the effect of an incomplete or failed
transaction. In Section 23.2 we present recovery techniques based on deferred update, also known as the NO-UNDO/REDO technique, where the data on disk is not updated until after a
transaction commits. In Section 23.3 we discuss
recovery techniques based on immediate
update, where data can be updated on disk during transaction execution; these include the UNDO/REDO and UNDO/NO-REDO algorithms. We discuss the technique known as shadowing or shadow
paging, which can be categorized as a NO-UNDO/NO-REDO algorithm
in Section 23.4. An example of a practical DBMS recovery
scheme, called ARIES, is presented in Section 23.5. Recovery in multidatabases
is briefly discussed in Section 23.6. Finally, techniques for recovery from
catastrophic failure are discussed in Section 23.7. Section 23.8 summarizes
the chapter.
Our emphasis is on conceptually describing several different approaches
to recovery. For descriptions of recovery features in specific systems, the
reader should consult the bibliographic notes at the end of the chapter and
the online and printed user manuals for those systems. Recovery techniques are
often intertwined with the concurrency control mechanisms. Certain recovery
techniques are best used with specific concurrency control methods. We will
discuss recovery concepts independently of concurrency control mechanisms, but
we will discuss the circumstances under which a particular recovery mechanism
is best used with a certain concurrency control protocol.
Related Topics
Privacy Policy, Terms and Conditions, DMCA Policy and Compliant
Copyright © 2018-2023 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.