A Constraint-Based Formalism for Consistency in Replicated Systems

  • Marc Shapiro
  • Karthikeyan Bhargavan
  • Nishith Krishna
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3544)

Abstract

We present a formalism for modeling replication in a distributed system with concurrent users sharing information. It is based on actions, which represent operations requested by independent users, and constraints, representing scheduling relations between actions. The formalism encompasses semantics of shared data, such as commutativity or conflict between actions, and user intents such as causal dependence or atomicity. It enables us to reason about the consistency properties of a replication protocol or of classes of protocols. It supports weak consistency (optimistic protocols) as well as the stronger pessimistic protocols. Our approach clarifies the requirements and assumptions common to all replication systems. We are able to prove a number of common properties. For instance consistency properties that appear different operationally are proved equivalent under suitable liveness assumptions. The formalism enables us to design a new, generalised peer-to-peer consistency protocol.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Saito, Y., Shapiro, M.: Optimistic replication. Computing Surveys (2005)Google Scholar
  2. 2.
    Shapiro, M., Bhargavan, K.: The Actions-Constraints approach to replication: Definitions and proofs. Technical Report MSR-TR-2004-14, Microsoft Research (2004)Google Scholar
  3. 3.
    Sun, C., Jia, X., Zhang, Y., Yang, Y., Chen, D.: Achieving convergence, causality preservation, and intention preservation in real-time cooperative editing systems. Trans. on Comp.-Human Interaction 5, 63–108 (1998)CrossRefGoogle Scholar
  4. 4.
    Preguiça, N., Shapiro, M., Matheson, C.: Semantics-based reconciliation for collaborative and mobile environments. In: Meersman, R., Tari, Z., Schmidt, D.C. (eds.) CoopIS 2003, DOA 2003, and ODBASE 2003. LNCS, vol. 2888, pp. 38–55. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  5. 5.
    Shapiro, M., Preguiça, N., O’Brien, J.: Rufis: mobile data sharing using a generic constraint-oriented reconciler. In: Conf. on Mobile Data Management, Berkeley, CA, USA (2004)Google Scholar
  6. 6.
    Birell, A.D., Levin, R., Needham, R.M., Schroeder, M.D.: Grapevine: An exercise in distributed computing. Communications of the ACM 25, 260–274 (1982)CrossRefGoogle Scholar
  7. 7.
    Terry, D.B., Theimer, M.M., Petersen, K., Demers, A.J., Spreitzer, M.J., Hauser, C.H.: Managing update conflicts in Bayou, a weakly connected replicated storage system. In: Proc. 15th ACM Symposium on Operating Systems Principles, Copper Mountain CO (USA). ACM SIGOPS, New York (1995)Google Scholar
  8. 8.
    Lamport, L.: Time, clocks, and the ordering of events in a distributed system. Communications of the ACM 21, 558–565 (1978)MATHCrossRefGoogle Scholar
  9. 9.
    Fekete, A., Gupta, D., Luchangco, V., Lynch, N., Shvartsman, A.: Eventually-serializable data services. Theoretical Computer Science 220, 113–156 (1999)MATHCrossRefMathSciNetGoogle Scholar
  10. 10.
    Manivannan, D., Singhal, M.: An efficient distributed algorithm for detection of knots and cycles in a distributed graph. IEEE Transactions on Parallel and Distributed Systems 14, 961–972 (2003)CrossRefGoogle Scholar
  11. 11.
    Chong, Y., Hamadi, Y.: Distributed IceCube. Private communication (2004)Google Scholar
  12. 12.
    Ramamritham, K., Chrysanthis, P.K.: A taxonomy of correctness criteria in database applications. VLDB Journal 5, 85–97 (1996)CrossRefGoogle Scholar
  13. 13.
    Sousa, A., Oliveira, R., Moura, F., Pedone, F.: Partial replication in the database state machine. In: Int. Symp. on Network Comp. and App. (NCA 2001), Cambridge MA, USA, pp. 298–309. IEEE, Los Alamitos (2001)CrossRefGoogle Scholar
  14. 14.
    Frølund, S., Guerraoui, R.: X-Ability: A theory of replication. In: Symp. on Principles of Dist. Comp. (PODC 2000), Portland, Oregon, USA. ACM SIGACT-SIGOPS, New York (2000)Google Scholar
  15. 15.
    Chrysanthis, P.K., Ramamritham, K.: ACTA: The SAGA continues. In: Elmagarmid, A.K. (ed.) Database Transaction Models for Advanced Applications, pp. 349–397. Morgan Kaufmann, San Francisco (1992)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Marc Shapiro
    • 1
  • Karthikeyan Bhargavan
    • 1
  • Nishith Krishna
    • 2
  1. 1.Microsoft ResearchCambridgeUnited Kingdom
  2. 2.Compter Science Department, Courant InstituteNew York UniversityUSA

Personalised recommendations