Combining generality and practicality in a conit-based continuous consistency model for wide-area replication

Replication is a key approach to scaling wide-area applications. However, the overhead associated with large-scale replication quickly becomes prohibitive across wide-area networks. One effective approach to addressing this limitation is to allow applications to dynamically trade reduced consistency for increased performance and availability. Although extensive study has been performed on relaxed consistency models in traditional replicated databases, none of the models can simultaneously achieve the following two typically conflicting requirements imposed by wide-area applications: generality (capturing application-specific consistency semantics) and practicality (enabling efficient application-independent consistency protocols to be designed and providing natural ways to express application semantics). We propose a conit-based continuous consistency model designed to simultaneously achieve generality and practicality. Our conit theory provides generality, where application-specific consistency requirements are exported as conits. Practicality is achieved by using a simple, spanning set of metrics for conit consistency and by using a per-write weight specification. We demonstrate the generality of our model through representative wide-area applications and by showing that a number of existing models can be expressed as instances of our model. Our efficient, application-independent consistency protocols and prototype implementation verify its practicality.

[1]  Divyakant Agrawal,et al.  Tolerating bounded inconsistency for increasing concurrency in database systems , 1992, PODS '92.

[2]  Arthur J. Bernstein,et al.  Bounded ignorance: a technique for increasing concurrency in a replicated system , 1994, TODS.

[3]  Amin Vahdat,et al.  Design and evaluation of a continuous consistency model for replicated services , 2000, OSDI.

[4]  Christophe Diot,et al.  Design and evaluation of MiMaze a multi-player game on the Internet , 1998, Proceedings. IEEE International Conference on Multimedia Computing and Systems (Cat. No.98TB100241).

[5]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .

[6]  Michel Raynal,et al.  Timed consistency for shared distributed objects , 1999, PODC '99.

[7]  Amin Vahdat,et al.  Efficient Numerical Error Bounding for Replicated Network Services , 2000, VLDB.

[8]  Larry Rudolph,et al.  Commit-reconcile & fences (CRF): a new memory model for architects and compiler writers , 1999, ISCA.

[9]  William E. Weihl Commutativity-based concurrency control for abstract data types , 1988 .

[10]  Tei-Wei Kuo,et al.  SSP: A semantics-based protocol for real-time data access , 1993, 1993 Proceedings Real-Time Systems Symposium.

[11]  Rafael Alonso,et al.  Data caching issues in an information retrieval system , 1990, TODS.

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

[13]  Tei-Wei Kuo,et al.  Application semantics and concurrency control of real-time data-intensive applications , 1992, [1992] Proceedings Real-Time Systems Symposium.

[14]  Jessica K. Hodgins,et al.  Temporal notions of synchronization and consistency in Beehive , 1997, SPAA '97.

[15]  Philip S. Yu,et al.  Divergence control for epsilon-serializability , 1992, [1992] Eighth International Conference on Data Engineering.

[16]  Calton Pu,et al.  Asynchronous consistency restoration under epsilon serializability , 1995, Proceedings of the Twenty-Eighth Annual Hawaii International Conference on System Sciences.

[17]  Matthias Nicola,et al.  Improving Performance in Replicated Databases through Relaxed Coherency , 1995, VLDB.

[18]  Prasun Dewan,et al.  An editing-based characterization of the design space of collaborative applications , 1994 .

[19]  Richard A. Golding A Weak-Consistency Architecture for Distributed Information Services , 1992, Comput. Syst..

[20]  Jun Rekimoto,et al.  Virtual Society: extending the WWW to support a multi-user interactive shared 3D environment , 1995, VRML '95.

[21]  Liuba Shrira,et al.  Providing high availability using lazy replication , 1992, TOCS.

[22]  J. Holliday,et al.  Epidemic quorums for managing replicated data , 2000, Conference Proceedings of the 2000 IEEE International Performance, Computing, and Communications Conference (Cat. No.00CH37086).

[23]  Philip S. Yu,et al.  Distributed divergence control for epsilon serializability , 1993, [1993] Proceedings. The 13th International Conference on Distributed Computing Systems.

[24]  Bharat K. Bhargava,et al.  Maintaining consistency of data in mobile distributed environments , 1995, Proceedings of 15th International Conference on Distributed Computing Systems.

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

[26]  Mustaque Ahamad,et al.  A scalable technique for implementing multiple consistency levels for distributed objects , 1996, Proceedings of 16th International Conference on Distributed Computing Systems.

[27]  B. R. Badrinath,et al.  Semantics-based concurrency control: Beyond commutativity , 1987, 1987 IEEE Third International Conference on Data Engineering.

[28]  Alan L. Cox,et al.  Lazy release consistency for software distributed shared memory , 1992, ISCA '92.

[29]  Steve Benford,et al.  Managing mutual awareness in collaborative virtual environments , 1994 .

[30]  Lisa Cingiser DiPippo,et al.  Object-based semantic real-time concurrency control , 1993, 1993 Proceedings Real-Time Systems Symposium.

[31]  Robert Gruber,et al.  Efficient optimistic concurrency control using loosely synchronized clocks , 1995, SIGMOD '95.

[32]  Peter J. Keleher,et al.  Decentralized replicated-object protocols , 1999, PODC '99.

[33]  Marvin Theimer,et al.  Flexible update propagation for weakly consistent replication , 1997, SOSP.