Information Technology Reference
In-Depth Information
Chapter 14
Transactions in Page-Server Systems
Thus far we have assumed that a database server, in a centralized as well as in a
distributed environment, operates using the query-shipping (transaction-shipping)
paradigm, so that client application processes send SQL queries and update state-
ments to the server, which executes them on behalf of the client transaction on the
database stored at the server and returns the results to the client application process.
The queries and updates are executed on database pages fetched from the server's
disk to the server's buffer. The server has exclusive access to the database pages and
the buffer and is responsible for the entire task of query processing, that is, parsing,
optimizing, and executing the queries and update statements.
In this chapter we discuss two database architectures, called the page-server
and shared-disks systems, in which several sites can buffer pages from a single
shared database in their local buffer pool (called the client cache ) and perform
query processing on the buffered pages. Instead of query shipping, such systems do
page shipping : the clients request database pages from the server, which then ships
the pages from the server buffer to the client cache, to be accessed by transactions
running at the client.
The main motivation for page-server and shared-disks systems is to offload
transaction and query processing from a single server to a number of (powerful)
client machines. This offloading comes with the cost of the need to maintain cache
consistency across the server buffer and the client caches: while a page can be
simultaneously cached at more than one client, updates on the page must still form
a single linear history, and each transaction must be given the most recent version
of any data item it wants to access.
The discussion in this chapter is mainly about page servers, but most of the issues
presented are valid for shared-disks systems as well.
Search WWH ::




Custom Search