Efficient State-Based CRDTs by Delta-Mutation

@article{Almeida2015EfficientSC,
  title={Efficient State-Based CRDTs by Delta-Mutation},
  author={Paulo S{\'e}rgio Almeida and Ali Shoker and Carlos Baquero},
  journal={ArXiv},
  year={2015},
  volume={abs/1410.2803}
}
CRDTs are distributed data types that make eventual consistency of a distributed object possible and non ad-hoc. Specifically, state-based CRDTs ensure convergence through disseminating the entire state, that may be large, and merging it to other replicas; whereas operation-based CRDTs disseminate operations (i.e., small states) assuming an exactly-once reliable dissemination layer. We introduce Delta State Conflict-Free Replicated Datatypes (\(\delta \)-CRDT) that can achieve the best of both… 
Delta state replicated data types
TLDR
This work introduces Delta State Conflict-Free Replicated Data Types ( δ -CRDT) that can achieve the best of both operation-based and state-based CRDTs: small messages with an incremental nature, as in operation- based CR DTs, disseminated over unreliable communication channels, and another one that ensures causal consistency.
Efficient Synchronization of State-Based CRDTs
TLDR
Two sources of inefficiency in current synchronization algorithms for delta-basedCRDTs are identified and the concept of join decomposition is brought to state-based CRDTs to obtain optimal deltas and efficiency of synchronization algorithms are improved.
Δ-CRDTs: making δ-CRDTs delta-based
TLDR
A new design for CRDTs is proposed which is called Δ-CRDT, and it is experimentally shown that under dynamic communication patters, this novel design achieves better network utilization than existing alternatives.
Linearizable State Machine Replication of State-Based CRDTs without Logs
TLDR
This paper presents a protocol for linearizable state machine replication of conflict-free replicated data types (CRDTs) that neither requires consensus nor a leader, and achieves high throughput without auxiliary processes such as command log management or leader election.
Pure Operation-Based Replicated Data Types
TLDR
This work introduces pure op-based CRDTs, that can only send operations to other replicas, drawing a clear distinction from state-based ones.
Putting Order in Strong Eventual Consistency
TLDR
This paper introduces strong eventually consistent replicated objects (SECROs), a general-purpose data type for building available data structures that guarantee strong eventual consistency (SEC) without restrictions on the operations.
Merkle Search Trees: Efficient State-Based CRDTs in Open Networks
TLDR
It is argued in this paper that pure state-based CRDTs can be efficiently implemented by encoding states as specialized Merkle trees, and that this approach is well suited to open networks where many nodes may join and leave.
Conflict-Free Replicated Data Types in Dynamic Environments
TLDR
The experimental results show that in volatile scenarios of disconnection, mobile users in collaborative activity maintain consistency among themselves and when compared to other available CRDT models, the P/S-CRDTs model is able to decouple the required knowledge of whom the updates must be disseminated to, while ensuring appropriate network traffic values.
Dynamic adaptation of geo-replicated CRDTs
Conflict-free Replicated Data Types (CRDTs) are high-level data types that can be replicated with minimal coordination among replicas due to its confluent semantics. This property makes CRDTs
Integration Challenges of Pure Operation-based CRDTs in Redis
TLDR
The experience demonstrates that pure op-based CRDTs can be implemented in existing systems with minor changes in the original API, and chooses Redis to implement a multi-master replication feature, which the current system lacks.
...
1
2
3
4
5
...

References

SHOWING 1-10 OF 32 REFERENCES
D C ] 3 F eb 2 01 5 Efficient State-based CRDTs by Delta-Mutation
CRDTs are distributed data types that make eventual consistency of a distributed object possible and non ad-hoc. Specifically, state-based CRDTs ensure convergence through disseminating the entire
A Scalable Conflict-Free Replicated Set Data Type
  • Andrei Deftu, J. Griebsch
  • Computer Science
    2013 IEEE 33rd International Conference on Distributed Computing Systems
  • 2013
TLDR
This work improves the original CRDT specification by introducing an efficient algorithm for sending deltas of updates between replicas and by partitioning a set replica into disjunctive subsets, and adds support for limited-lifetime elements to enable simple garbage collection strategies to address the problem of unbounded database growth.
Conflict-Free Replicated Data Types
TLDR
This paper formalises two popular approaches (state- and operation-based) and their relevant sufficient conditions and studies a number of useful CRDTs, such as sets with clean semantics, supporting both add and remove operations, and considers in depth the more complex Graph data type.
Riak DT map: a composable, convergent replicated dictionary
TLDR
The design of a new convergent (state-based) replicated data-type, the Map, as implemented by the Riak DT library and the RiAK data store is discussed, which allows greater flexibility to application developers working with semi-structured data, while removing the need for the developer to design custom conflict-resolution routines for each class of application data.
Managing update conflicts in Bayou, a weakly connected replicated storage system
TLDR
The motivation for and design of these mechanisms for conflict detection and per -write conflict resolution based on client-provid ed procedures are presented and the experiences gained with an initial implementation of the system are described.
A comprehensive study of Convergent and Commutative Replicated Data Types
TLDR
This paper formalises asynchronous object replication, either state based or operation based, and provides a sufficient condition appropriate for each case, and describes several useful CRDTs, including container data types supporting bothadd and remove operations with clean semantics, and more complex types such as graphs, montonic DAGs, and sequences.
Optimized OR-Sets without Ordering Constraints
TLDR
This work formalizes a concurrent specification for OR-Sets without ordering constraints and proposes a generalized implementation of OR-sets without tombstones that provably satisfies strong eventual consistency, and introduces Interval Version Vectors to succinctly keep track of distributed time-stamps in systems that allow out-of-order delivery of messages.
An optimized conflict-free replicated set
TLDR
A reasoning abstraction, \emph{permutation equivalence}, is presented that systematizes the characterization of the expected concurrency semantics of concurrent types and presents one of the existing conflict-free replicated data types, Observed-Remove Set.
Making operation-based CRDTs operation-based
TLDR
The design space for operation-based solutions is explored, and the interaction with the middleware is leveraged by offering a technique that delivers very compact solutions, while only broadcasting operation names and arguments.
Replicated data types: specification, verification, optimality
TLDR
This work proposes a framework for specifying replicated data types using relations over events and verifying their implementations using replication-aware simulations, and shows how to specify consistency of replicated stores with multiple objects axiomatically, in analogy to prior work on weak memory models.
...
1
2
3
4
...