Information Technology Reference
In-Depth Information
Chapter 13
Distributed Transactions
In the preceding chapters, we have considered transaction processing in a central-
ized database environment: we have assumed that each transaction accesses data
items of a single database only and is thus run entirely on a single database server.
However, a transaction may need access to data distributed across several databases
governed by a single organization. This gives rise to the concept of a distributed
transaction , that is, a transaction that contains actions on several intraorganization
databases connected via a computer network.
A distributed transaction is actually a set of two or more local transactions
each running at a single server and operating on a single database. A major task
in the management of such a transaction is to coordinate the execution of the
local transactions such that the basic ( ACID ) properties are ensured for the entire
distributed transaction. The basic method for ensuring atomic commitment for a
distributed transaction is the two-phase commit protocol , which we present in the
context of our transaction model and ARIES -based transaction processing.
An important type of a distributed database is a replicated database ,inwhich
copies (called replicas) of a data item are stored at several servers, in order to
increase data-access speed and data availability in events of failure. For protecting
a database from natural disasters, a special kind of a replicated database, called a
remote backup database , is often maintained, for duplicating the updates performed
on the primary database.
Many modern web applications that involve millions of users all over the
Internet require high availability, so that every request should succeed and receive
a response. The applications are also expected to be tolerant to failures of sites and
communication links on the network. These requirements have given rise to the
development of highly distributed and replicated systems called key-value stores or
N O SQL data stores that scale to huge workloads of relatively simple update actions
better than full-fledged SQL database systems, at the expense of relaxed consistency.
Search WWH ::




Custom Search