In Chapter 2 we discussed the functions that a Database Management System (DBMS)
should provide. Among these are three closely related functions that are intended to ensure
that the database is reliable and remains in a consistent state, namely transaction support,
concurrency control services, and recovery services. This reliability and consistency must
be maintained in the presence of failures of both hardware and software components, and
when multiple users are accessing the database. In this chapter we concentrate on these
three functions.
Although each function can be discussed separately, they are mutually dependent.
Both concurrency control and recovery are required to protect the database from data