Information Technology Reference
In-Depth Information
Chapter 1
Transactions on the Logical Database
The database as seen by an application programmer is called the logical database .In
most cases the logical database is a relational database, so that application programs
operate on tuples in relations through an SQL interface. A transaction is a sequence
of read and update actions on the logical database, performed on the database upon
a sequence of requests from an application. The action sequence constituting a
transaction is atomic in the sense that either the effects of all the actions are recorded
permanently in the database (in which case the transaction is committed) or none are
(in which case the transaction is aborted and rolled back).
Integrity constraints specified by the database designer on the logical database
determine which database states (i.e., database contents) are legal. Each transaction
should be programmed in such a way that it retains the integrity of an initially
integral logical database. Upon requests from applications, the actions included in a
transaction are performed one by one on the database by the database server whose
responsibility is to ensure that the logical database as well as the underlying physical
database retain integrity under many concurrently executing transactions.
In this chapter we present the basic concepts related to transactions on a relational
database. We model a transaction as an action sequence consisting of a forward-
rolling phase possibly followed by a backward-rolling phase of undo actions,
where the forward-rolling phase can also contain partial rollbacks. For ease of
treatment, we define a primitive transaction model called the key-range transaction
model , which we shall use throughout this topic when discussing different issues of
transaction processing.
1.1
Transaction Server
The database server of a typical relational database management system functions as
a transaction server , also called a query server (or a function server ). Such a server
offers an interface through which client application processes can send requests to
Search WWH ::




Custom Search