Design and evaluation of a conit-based continuous consistency model for replicated services
Top Cited Papers
- 1 August 2002
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Computer Systems
- Vol. 20 (3) , 239-282
- https://doi.org/10.1145/566340.566342
Abstract
The tradeoffs between consistency, performance, and availability are well understood. Traditionally, however, designers of replicated systems have been forced to choose from either strong consistency guarantees or none at all. This paper explores the semantic space between traditional strong and optimistic consistency models for replicated services. We argue that an important class of applications can tolerate relaxed consistency, but benefit from bounding the maximum rate of inconsistent access in an application-specific manner. Thus, we develop a conit-based continuous consistency model to capture the consistency spectrum using three application-independent metrics, numerical error , order error , and staleness . We then present the design and implementation of TACT, a middleware layer that enforces arbitrary consistency bounds among replicas using these metrics. We argue that the TACT consistency model can simultaneously achieve the often conflicting goals of generality and practicality by describing how a broad range of applications can express their consistency semantics using TACT and by demonstrating that application-independent algorithms can efficiently enforce target consistency levels. Finally, we show that three replicated applications running across the Internet demonstrate significant semantic and performance benefits from using our framework.Keywords
This publication has 17 references indexed in Scilit:
- Hypertext Transfer Protocol -- HTTP/1.1Published by RFC Editor ,1997
- An editing‐based characterization of the design space of collaborative applicationsJournal of Organizational Computing, 1994
- The process group approach to reliable distributed computingCommunications of the ACM, 1993
- Consistency and orderabilityACM Transactions on Database Systems, 1993
- Semantics-based concurrency controlACM Transactions on Database Systems, 1992
- Data caching issues in an information retrieval systemACM Transactions on Database Systems, 1990
- Linearizability: a correctness condition for concurrent objectsACM Transactions on Programming Languages and Systems, 1990
- Consistency in a partitioned network: a surveyACM Computing Surveys, 1985
- Read-only transactions in a distributed databaseACM Transactions on Database Systems, 1982
- A relational model of data for large shared data banksCommunications of the ACM, 1970