Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3426182.3426183acmotherconferencesArticle/Chapter ViewAbstractPublication PagesisstaConference Proceedingsconference-collections
research-article

From causality to stability: understanding and reducing meta-data in CRDTs

Published: 04 November 2020 Publication History

Abstract

Modern distributed applications increasingly replicate data to guarantee both high availability of systems and optimal user experience. Conflict-Free Replicated Data Types (CRDTs) are a family of data types specially designed for highly available systems that guarantee some form of eventual consistency. To ensure state convergence between replicas, CRDT implementations need to keep track of additional meta-data. This is not a scalable strategy, as a growing amount of meta-data has to be kept.
In this paper, we show that existing solutions for this problem miss optimisation opportunities and may lead to less reactive CRDTs. For this, we analyse the relation between meta-data and the causality of operations in operation-based CRDTs. We explore a new optimisation strategy for pure operation-based CRDTs and show how it reduces memory overhead. Our approach takes advantage of the communication layer providing reliable delivery to determine causal stability, and as a result, meta-data can be removed sooner. We furthermore propose a solution for improving the reactivity of CRDTs built on a reliable causal broadcasting layer.
We apply our strategy to pure-operation based CRDTs and validate our approach by measuring its impact on several different set-ups. The results show how our approach can lead to significant improvements in meta-data cleanup when compared to state-of-the-art techniques.

References

[1]
H. C. Baker and C. Hewitt. 1977. The Incremental Garbage Collection of Processes. In Proceedings of the 1977 Symposium on Artificial Intelligence and Programming Languages. Association for Computing Machinery, New York, NY, USA, 55-59. https://doi.org/10.1145/800228.806932
[2]
C. Baquero, P. S. Almeida, and A. Shoker. 2014. Making Operation-Based CRDTs Operation-Based. In Distributed Applications and Interoperable Systems, Kostas Magoutis and Peter Pietzuch (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg, 126-140.
[3]
C. Baquero, P. S. Almeida, and A. Shoker. 2017. Pure Operation-Based Replicated Data Types. CoRR abs/1710.04469 ( 2017 ). arXiv: 1710. 04469
[4]
J. Bauwens and E. Gonzalez Boix. 2020. Flec: A Versatile Programming Framework for Eventually Consistent Systems. In Proceedings of the 7th Workshop on Principles and Practice of Consistency for Distributed Data (PaPoC '20). Association for Computing Machinery, New York, NY, USA, Article 12, 4 pages. https://doi.org/ 10.1145/3380787.3393685
[5]
A. Bieniusa, M. Zawirski, N. Preguiça, M. Shapiro, C. Baquero, V. Balegas, and S. Duarte. 2012. An optimized conflict-free replicated set., 12 pages.
[6]
K. P. Birman and T. A. Joseph. 1987. Reliable Communication in the Presence of Failures. ACM Trans. Comput. Syst. 5, 1 (Jan. 1987 ), 47-76. https://doi.org/10. 1145/7351.7478
[7]
S. Burckhardt, M. Fähndrich, D. Leijen, and B. P. Wood. 2012. Cloud Types for Eventual Consistency. In Proceedings of the 26th European Conference on ObjectOriented Programming (ECOOP'12). Springer-Verlag, Berlin, Heidelberg, 283-307. https://doi.org/10.1007/978-3-642-31057-7_14
[8]
T. Van Cutsem, S. Mostinckx, E. Gonzalez Boix., J. Dedecker, and W. De Meuter. 2007. AmbientTalk: Object-oriented Event-driven Programming in Mobile Ad hoc Networks. In XXVI International Conference of the Chilean Society of Computer Science (SCCC'07). Iquique, Chile, 3-12. https://doi.org/10.1109/SCCC. 2007.12
[9]
J. Dedecker, T. Van Cutsem, S. Mostinckx, T. D'Hondt, and W. De Meuter. 2006. Ambient-Oriented Programming in AmbientTalk. In ECOOP 2006-ObjectOriented Programming, Dave Thomas (Ed.). Springer Berlin Heidelberg, Berlin, Heidelberg, 230-254.
[10]
D. P. Friedman and D. S. Wise. 1976. The impact of applicative programming on multiprocessing.
[11]
R. Hyun-Gul, J. Myeongjae, K. Jin-Soo, and L. Joonwon. 2011. Replicated abstract data types: Building blocks for collaborative applications. J. Parallel and Distrib. Comput. 71, 3 ( 2011 ), 354-368.
[12]
G. Kaki, S. Priya, KC Sivaramakrishnan, and S. Jagannathan. 2019. Mergeable Replicated Data Types. Proc. ACM Program. Lang. 3, OOPSLA, Article 154 (Oct. 2019 ), 29 pages. https://doi.org/10.1145/3360580
[13]
L. Lamport. 1978. Time, Clocks, and the Ordering of Events in a Distributed System. Commun. ACM 21, 7 ( July 1978 ), 558-565. https://doi.org/10.1145/ 359545.359563
[14]
N. Preguiça. 2018. Conflict-free Replicated Data Types: An Overview. arXiv:cs.DC/ 1806.10254
[15]
M. Shapiro. 2017. Replicated Data Types. In Encyclopedia Of Database Systems, Ling Liu and M. Tamer Özsu (Eds.). Vol. Replicated Data Types. Springer-Verlag, 1-5. https://doi.org/10.1007/978-1-4899-7993-3_80813-1
[16]
M. Shapiro, N Preguiça, C. Baquero, and M. Zawirski. 2011. A comprehensive study of Convergent and Commutative Replicated Data Types. Technical Report 7506. INRIA.
[17]
A. S. Tanenbaum and M. van Steen. 2006. Distributed Systems: Principles and Paradigms (2Nd Edition). Prentice-Hall, Inc., Upper Saddle River, NJ, USA.

Cited By

View all
  • (2024)Performance optimisation techniques for Conflict-free Replicated Data Types (CRDT)Вісник Черкаського державного технологічного університету10.62660/bcstu/1.2024.2329:1(10-23)Online publication date: 18-Mar-2024
  • (2021)Improving the Reactivity of Pure Operation-Based CRDTsProceedings of the 8th Workshop on Principles and Practice of Consistency for Distributed Data10.1145/3447865.3457968(1-6)Online publication date: 26-Apr-2021

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
MPLR '20: Proceedings of the 17th International Conference on Managed Programming Languages and Runtimes
November 2020
97 pages
ISBN:9781450388535
DOI:10.1145/3426182
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 04 November 2020

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. CRDTs
  2. Memory Management
  3. Replication

Qualifiers

  • Research-article

Conference

MPLR '20

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)21
  • Downloads (Last 6 weeks)3
Reflects downloads up to 15 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Performance optimisation techniques for Conflict-free Replicated Data Types (CRDT)Вісник Черкаського державного технологічного університету10.62660/bcstu/1.2024.2329:1(10-23)Online publication date: 18-Mar-2024
  • (2021)Improving the Reactivity of Pure Operation-Based CRDTsProceedings of the 8th Workshop on Principles and Practice of Consistency for Distributed Data10.1145/3447865.3457968(1-6)Online publication date: 26-Apr-2021

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media