[go: up one dir, main page]

Skip to main content

Eventual Consistency Formalized

  • Conference paper
  • First Online:
System Analysis and Modeling. Languages, Methods, and Tools for Industry 4.0 (SAM 2019)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 11753))

Included in the following conference series:

Abstract

Distribution of computation is well-known, and there are several frameworks, including some formal frameworks, that capture distributed computation. As yet, however, models of distributed computation are based on the idea that data is conceptually centralized. That is, they assume that data, even if it is distributed, is consistent. This assumption is not valid for many of the database systems in use today, where consistency is compromised to ensure availability and partition tolerance. Starting with an informal definition of eventual consistency, this paper explores several measures of inconsistency that quantify how far from consistency a system is. These measures capture key aspects of eventual consistency in terms of distributed abstract state machines. The definitions move from the traditional binary definition of consistency to more quantitative definitions, where the classical consistency is given by the highest possible level of consistency. Expressing eventual consistency in terms of abstract state machines allows models to be developed that capture distributed computation and highly available distributed data within a single framework.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

Notes

  1. 1.

    In the conceptually centralized model, the read and write handling is also moved out of the agent code, but it is still inside the agent activity, which is not completed until everything is sorted out.

  2. 2.

    https://internethalloffame.org/official-biography-paul-mockapetris.

  3. 3.

    https://whatis.techtarget.com/definition/eventual-consistency.

  4. 4.

    Obviously, this also implies that \(DeltaConsistencyTime > 0\).

References

  1. Apache Software Foundation: Apache Cassandra 4.0 - Web Page and Documentation (2019). http://cassandra.apache.org/

  2. Best, E.: Semantics of Sequential and Parallel Programs. Prentice Hall, Upper Saddle River (1996)

    MATH  Google Scholar 

  3. Blass, A., Gurevich, Y.: Ordinary interactive small-step algorithms I. ACM Trans. Comput. Logic 7(2), 363–419 (2006)

    Article  MathSciNet  Google Scholar 

  4. Blass, A., Gurevich, Y., Rosenzweig, D., Rossman, B.: Interactive small-step algorithms II: abstract state machines and the characterization theorem. Logical Methods Comput. Sci. 3(4) (2007). https://doi.org/10.2168/LMCS-3(4:4)2007

  5. Blass, A., Gurevich, Y.: Persistent queries. CoRR abs/0811.0819 (2008). http://arxiv.org/abs/0811.0819

  6. Blass, A., Gurevich, Y.: Persistent queries in the behavioral theory of algorithms. ACM Trans. Comput. Logic (TOCL) 12(2), 16:1–16:43 (2011). https://doi.org/10.1145/1877714.1877722

    Article  MathSciNet  MATH  Google Scholar 

  7. Börger, E., Cisternino, A. (eds.): Advances in Software Engineering. LNCS, vol. 5316. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-89762-0

    Book  Google Scholar 

  8. Börger, E., Stärk, R.: Abstract State Machines - A Method for High-Level System Design and Analysis. Springer, Berlin (2003). https://doi.org/10.1007/978-3-642-18216-7

    Book  MATH  Google Scholar 

  9. Börger, E., Raschke, A.: Modelling Companion for Software Practitioners. Springer, Berlin (2018). https://doi.org/10.1007/978-3-662-56641-1

    Book  Google Scholar 

  10. Börger, E., Schewe, K.D.: Concurrent abstract state machines. Acta Inf. 53(5), 469–492 (2016). https://doi.org/10.1007/s00236-015-0249-7

    Article  MathSciNet  MATH  Google Scholar 

  11. Bosneag, A.M., Brockmeyer, M.: A unified formal specification for a multi-consistency replication system for DHTs. In: 12th IEEE International Conference and Workshops on the Engineering of Computer-Based Systems (ECBS 2005), pp. 33–40. IEEE (2005)

    Google Scholar 

  12. Bouajjani, A., Enea, C., Hamza, J.: Verifying eventual consistency of optimistic replication systems. In: Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2014, pp. 285–296. ACM, New York (2014). https://doi.org/10.1145/2535838.2535877

  13. Bouajjani, A., Enea, C., Hamza, J.: Verifying eventual consistency of optimistic replication systems. ACM SIGPLAN Not. 49(1), 285–296 (2014). https://doi.org/10.1145/2578855.2535877

    Article  MATH  Google Scholar 

  14. Brewer, E.A.: Towards robust distributed systems (abstract). In: Proceedings of the Nineteenth Annual ACM Symposium on Principles of Distributed Computing, PODC 2000, p. 7. ACM, New York (2000). https://doi.org/10.1145/343477.343502

  15. Burkhardt, S.: Principles of eventual consistency. Found. Trends Program. Lang. 1, 1–150 (2014)

    Article  Google Scholar 

  16. Hoare, C.A.R.: Communicating sequential processes. Commun. ACM 21(8), 666–677 (1978). https://doi.org/10.1145/359576.359585

    Article  MATH  Google Scholar 

  17. ITU-T: Specification And Description Language SDL (Z.100 Series). International standard, International Telecommunication Union, Telecommunication Standardization Sector (2016–2018)

    Google Scholar 

  18. ITU-T: Specification and Description Language – Overview of SDL-2010, Annex F1: SDL-2010 formal definition: General overview. International standard, International Telecommunication Union, Telecommunication Standardization Sector (2016–2018)

    Google Scholar 

  19. Manson, J., Pugh, W., Adve, S.V.: The Java memory model. SIGPLAN Not. 40(1), 378–391 (2005). https://doi.org/10.1145/1047659.1040336

    Article  MATH  Google Scholar 

  20. Mills, D.L.: A brief history of NTP time: memoirs of an internet timekeeper. SIGCOMM Comput. Commun. Rev. 33(2), 9–21 (2003). https://doi.org/10.1145/956981.956983

    Article  MathSciNet  Google Scholar 

  21. Milner, R. (ed.): A Calculus of Communicating Systems. LNCS, vol. 92. Springer, Heidelberg (1980). https://doi.org/10.1007/3-540-10235-3

    Book  MATH  Google Scholar 

  22. Mironov, A.M.: Theory of processes. CoRR abs/1009.2259 (2010). http://arxiv.org/abs/1009.2259

  23. Object Management Group (OMG): OMG® Unified Modeling Language® (OMG UML®), Version 2.5.1. OMG Document Number formal, 05 December 2017. http://www.omg.org/spec/UML/2.5.1

  24. Prinz, A.: Distributed computing on distributed memory. In: Khendek, F., Gotzhein, R. (eds.) SAM 2018. LNCS, vol. 11150, pp. 67–84. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-01042-3_5

    Chapter  Google Scholar 

  25. Prinz, A., Sherratt, E.: Distributed ASM - pitfalls and solutions. In: Aït-Ameur, Y., Schewe, K.D. (eds.) ABZ 2014. LNCS, vol. 8477, pp. 210–215. Springer, Berlin (2014). https://doi.org/10.1007/978-3-662-43652-3_18

    Chapter  Google Scholar 

  26. Schewe, K., Prinz, A., Börger, E.: Concurrent computing with shared replicated memory. CoRR abs/1902.04789 (2019). http://arxiv.org/abs/1902.04789

  27. Sherratt, E.: Relativity and abstract state machines. In: Haugen, Ø., Reed, R., Gotzhein, R. (eds.) SAM 2012. LNCS, vol. 7744, pp. 105–120. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-36757-1_7

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Edel Sherratt .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Sherratt, E., Prinz, A. (2019). Eventual Consistency Formalized. In: Fonseca i Casas, P., Sancho, MR., Sherratt, E. (eds) System Analysis and Modeling. Languages, Methods, and Tools for Industry 4.0. SAM 2019. Lecture Notes in Computer Science(), vol 11753. Springer, Cham. https://doi.org/10.1007/978-3-030-30690-8_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-30690-8_15

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-30689-2

  • Online ISBN: 978-3-030-30690-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics