Efficient Synchronization of State-based CRDTs

To ensure high availability in large scale distributed systems, Conflict-free Replicated Data Types (CRDTs) relax consistency by allowing immediate query and update operations at the local replica, with no need for remote synchronization. State-based CRDTs synchronize replicas by periodically sendin...

Full description

Bibliographic Details
Main Author: Enes, Vitor (author)
Other Authors: Almeida, Paulo Sérgio (author), Baquero, Carlos (author), Leitão, João (author)
Format: conferencePaper
Language:eng
Published: 2019
Subjects:
Online Access:http://hdl.handle.net/1822/68499
Country:Portugal
Oai:oai:repositorium.sdum.uminho.pt:1822/68499
Description
Summary:To ensure high availability in large scale distributed systems, Conflict-free Replicated Data Types (CRDTs) relax consistency by allowing immediate query and update operations at the local replica, with no need for remote synchronization. State-based CRDTs synchronize replicas by periodically sending their full state to other replicas, which can become extremely costly as the CRDT state grows. Delta-based CRDTs address this problem by producing small incremental states (deltas) to be used in synchronization instead of the full state. However, current synchronization algorithms for delta-based CRDTs induce redundant wasteful delta propagation, performing worse than expected, and surprisingly, no better than state-based. In this paper we: 1) identify two sources of inefficiency in current synchronization algorithms for delta-based CRDTs; 2) bring the concept of join decomposition to state-based CRDTs; 3) exploit join decompositions to obtain optimal deltas and 4) improve the efficiency of synchronization algorithms; and finally, 5) experimentally evaluate the improved algorithms.