skip to main content
"good enough" database caching
Publisher:
  • University of Wisconsin at Madison
  • Engineering Experiment Station Madison, WI
  • United States
ISBN:978-0-542-54463-7
Order Number:AAI3207482
Pages:
208
Bibliometrics
Skip Abstract Section
Abstract

Many application systems make use of various forms of asynchronously updated replicas to improve scalability, availability and performance. If an application uses replicas that are not in sync with source data, it is clearly willing to accept results that are not completely current, but typically with some limits on how stale the data can be. Today, such requirements are not explicitly declared anywhere; consequently, the system cannot detect when they are not met and take appropriate action. Instead, data currency requirements are implicitly expressed in the application logic through the choice of data sources. This resembles the situation in the early days of database systems when programmers had to choose what indexes to use and how to join records.

This dissertation is about extending DBMS support for relaxed consistency. We envision a scenario where applications are allowed to explicitly express relaxed currency and consistency (C&C) requirements in SQL; an administrator can explicitly express the desired local data C&C level in the cache schema; and query processing provides transactional guarantees for the C&C requirements of a query. Our research provides a comprehensive solution to this problem.

The first part extends SQL with a new currency clause, allowing queries to explicitly express customized C&C constraints. We suggest a tentative syntax and develop a formal model that rigorously defines the semantics, thereby providing correctness standards for the use of replicated or cached data.

The second part develops a data quality-aware, fine-grained cache model based on four fundamental cache properties. Such a model provides an abstract view of the cache to the query processing layer, and opens the door for adaptive cache management. The third part presents query processing methods for enforcing C&C constraints, which is built on the MTCache framework. The optimizer checks most consistency constraints and generates a dynamic plan that includes currency and inexpensive consistency checks. Our solution not only supports transparent caching but also provides transactional data quality guarantees.

The last part establishes a realistic model for a database caching system and reports a holistic performance evaluation, offering insights into performance tradeoffs.

Contributors
  • Microsoft Corporation
  • Microsoft Corporation

Recommendations