Consistency in Currency-Aware Data
This is a project
being conducted jointly with Phil Bernstein and Paul Larson at
Microsoft Research. Increasingly, applications are using cached
versions of data, even data that is stored in a DBMS. A familiar
example is eBay, where several webpages show slightly out-of-date
prices for items that are being bid on. Applications use their
knowledge of when it is acceptable to use data that is not current in
order to improve performance. However, by making copies outside the
DBMS, they are forced to take on the responsibility of maintaining
these caches, leading to more complex and error-prone application code.
Our vision is to extend DBMS support for cached copies, allowing
applications to be made simpler without sacrificing the efficiency
gains of using copies when appropriate. The main idea is that
applications should be able to specify whether a copy of a piece of
data (e.g., a table, a row) can be used and how outdated that copy is
allowed to be, as part of the SQL statement. The DBMS can exploit this
information and use copies to improve performance as long as it
guarantees that the application's currency requirements are met. The
challenges to be addressed include query optimization and evaluation in
the presence of cached copies, workload-aware cache maintenance, and
concurrency control and serializability theory for transactions that
can see stale data.
This project is funded by ????
Coming soon ...
(Computer Sciences, UW-Madison, Joined Microsoft Corp.)
Tamma (Computer Sciences, UW-Madison)
Caching with 'Good Enough' Currency, Consistency, and Completeness. VLDB
Ramakrishnan:, Jonathan Goldstein: Relaxed Currency
and Consistency: How to Say "Good Enough" in SQL. SIGMOD
Conference 2004: 815-826
Support for Relaxed Currency and Consistency Constraints in MTCache. SIGMOD
Conference 2004: 937-938.
MTCache: Mid-Tier Database Caching for SQL Server. IEEE
Data Eng. Bull. 27(2): 35-40 (2004)