Relaxed-currency serializability for middle-tier caching and replication

Many applications, such as e-commerce, routinely use copies of data that are not in sync with the database due to heuristic caching strategies used to enhance performance. We study concurrency control for a transactional model that allows update transactions to read out-of-date copies. Each read operation carries a "freshness constraint" that specifies how fresh a copy must be in order to be read. We offer a definition of correctness for this model and present algorithms to ensure several of the most interesting freshness constraints. We outline a serializability-theoretic correctness proof and present the results of a detailed performance study.

[1]  Robert H. Thomas,et al.  A Majority consensus approach to concurrency control for multiple copy databases , 1979, ACM Trans. Database Syst..

[2]  Hector Garcia-Molina,et al.  Read-only transactions in a distributed database , 1982, TODS.

[3]  Won Kim,et al.  A Model of CAD Transactions , 1985, VLDB.

[4]  D. Gawlick,et al.  Varieties of Concurrency Control in IMS/VS Fast Path. , 1985 .

[5]  Patrick E. O'Neil,et al.  The Escrow transactional method , 1986, TODS.

[6]  Miron Livny,et al.  Concurrency control performance modeling: alternatives and implications , 1987, TODS.

[7]  Gio Wiederhold,et al.  Modeling asynchrony in distributed databases , 1987, 1987 IEEE Third International Conference on Data Engineering.

[8]  Rafael Alonso,et al.  Quasi-Copies: Efficient Data Sharing for Information Retrieval Systems , 1988, EDBT.

[9]  Theo Harder,et al.  Handling hot spot data in DB-sharing systems , 1988 .

[10]  Calton Pu,et al.  Replica control in distributed systems: as asynchronous approach , 1991, SIGMOD '91.

[11]  Hector Garcia-Molina,et al.  The Demarcation Protocol: A Technique for Maintaining Linear Arithmetic Constraints in Distributed Database Systems , 1992, EDBT.

[12]  Paul M. Bober,et al.  On mixing queries and transactions via multiversion locking , 1992, [1992] Eighth International Conference on Data Engineering.

[13]  Rajeev Rastogi,et al.  On correctness of non-serializable executions , 1993, PODS '93.

[14]  Ambuj K. Singh,et al.  Consistency and orderability: semantics-based correctness criteria for databases , 1993, TODS.

[15]  Ouri Wolfson,et al.  Divergence caching in client-server architectures , 1994, Proceedings of 3rd International Conference on Parallel and Distributed Information Systems.

[16]  Philip S. Yu,et al.  Multiversion divergence control of time fuzziness , 1994, CIKM '94.

[17]  Henry F. Korth,et al.  Formal aspects of concurrency control in long-duration transaction systems using the NT/PV model , 1994, TODS.

[18]  Calton Pu,et al.  A Formal Characterization of Epsilon Serializability , 1995, IEEE Trans. Knowl. Data Eng..

[19]  Rajeev Rastogi,et al.  On Correctness of Nonserializable Executions , 1998, J. Comput. Syst. Sci..

[20]  Jennifer Widom,et al.  Adaptive precision setting for cached approximate values , 2001, SIGMOD '01.

[21]  Amin Vahdat,et al.  Design and evaluation of a conit-based continuous consistency model for replicated services , 2002, TOCS.

[22]  Heiko Schuldt,et al.  FAS - A Freshness-Sensitive Coordination Middleware for a Cluster of OLAP Components , 2002, VLDB.

[23]  Sang Hyuk Son,et al.  Real-Time Databases and Data Services , 2004, Real-Time Systems.

[24]  Jonathan Goldstein,et al.  Relaxed currency and consistency: how to say "good enough" in SQL , 2004, SIGMOD '04.

[25]  Chinya V. Ravishankar,et al.  Client Assignment in Content Dissemination Networks for Dynamic Data , 2005, VLDB.

[26]  Raghu Ramakrishnan,et al.  Caching with 'Good Enough' Currency, Consistency, and Completeness , 2005, VLDB.

[27]  Fuat Akal,et al.  Fine-Grained Replication and Scheduling with Freshness and Correctness Guarantees , 2005, VLDB.