Report Number: CS-TR-98-1606
Institution: Stanford University, Department of Computer Science
Title: Associative Caching in Client-Server Databases
Author: Basu, Julie
Date: May 1998
Abstract: Client-server configuration is a popular architecture for
modern databases. A traditional assumption in such systems is
that clients have limited resources, and query processing is
always performed by the server. The server is thus a
potential performance bottleneck. To improve the system
performance and scalability, today's powerful clients can
cache data locally. In this dissertation, we study a new
scheme, A*Cache, for associative client-side caching. In
contrast to navigational data access using object or page
identifiers, A*Cache supports content-based associative
access for better data reuse. Query results are stored
locally along with their description, and predicate-based
reasoning is used to examine and maintain the client cache.
Clients execute queries locally if the data is cached, and
use update notifications generated by the server for cache
maintenance.
We first describe the architecture of A*Cache and its
transaction execution model. We then develop new optimization
techniques for improving the performance of A*Cache. Next,
A*Cache performance is investigated through detailed
simulation of a client-server database under many different
workloads, and compared with other types of caching systems.
The simulation results clearly demonstrate the effectiveness
of our associative caching scheme for read-only environments,
and also for read-write scenarios with moderately high data
update probabilities.
http://i.stanford.edu/pub/cstr/reports/cs/tr/98/1606/CS-TR-98-1606.pdf