Conflict-Free Replicated Data Types

  • Marc Shapiro
  • Nuno Preguiça
  • Carlos Baquero
  • Marek Zawirski
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6976)

Abstract

Replicating data under Eventual Consistency (EC) allows any replica to accept updates without remote synchronisation. This ensures performance and scalability in large-scale distributed systems (e.g., clouds). However, published EC approaches are ad-hoc and error-prone. Under a formal Strong Eventual Consistency (SEC) model, we study sufficient conditions for convergence. A data type that satisfies these conditions is called a Conflict-free Replicated Data Type (CRDT). Replicas of any CRDT are guaranteed to converge in a self-stabilising manner, despite any number of failures. This paper formalises two popular approaches (state- and operation-based) and their relevant sufficient conditions. We study a number of useful CRDTs, such as sets with clean semantics, supporting both add and remove operations, and consider in depth the more complex Graph data type. CRDT types can be composed to develop large-scale distributed applications, and have interesting theoretical properties.

Keywords

Eventual Consistency Replicated Shared Objects Large-Scale Distributed Systems 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Marc Shapiro
    • 1
    • 5
  • Nuno Preguiça
    • 1
    • 2
  • Carlos Baquero
    • 3
  • Marek Zawirski
    • 1
    • 4
  1. 1.INRIAParisFrance
  2. 2.CITIUniversidade Nova de LisboaPortugal
  3. 3.Universidade do MinhoPortugal
  4. 4.UPMCParisFrance
  5. 5.LIP6ParisFrance

Personalised recommendations