Verifying Strong Eventual Consistency in δ-CRDTs

06/05/2020
by   Taylor Blau, et al.
0

Conflict-free replicated data types (CRDTs) are a natural structure with which to communicate information about a shared computation in a distributed setting where coordination overhead may not be tolerated, and individual participants are allowed to temporarily diverge from the overall computation. Within this setting, there are two classical approaches: state- and operation-based CRDTs. The former define a commutative, associative, and idempotent join operation, and their states a monotone join semi-lattice. State-based CRDTs may be further distinguished into classical- and δ-state CRDTs. The former communicate their full state after each update, whereas the latter communicate only the changed state. Op-based CRDTs communicate operations (not state), thus making their updates non-idempotent. Whereas op-based CRDTs require little information to be exchanged, they demand relatively strong network guarantees (exactly-once message delivery), and state-based CRDTs suffer the opposite problem. Both satisfy strong eventual consistency (SEC). We posit that δ-state CRDTs both (1) require less communication overhead from payload size, and (2) tolerate relatively weak network environments, making them an ideal candidate for real-world use of CRDTs. Our central intuition is a pair of reductions between state-, δ-state, and op-based CRDTs. We formalize this intuition in the Isabelle interactive theorem prover and show that state-based CRDTs achieve SEC. We present a relaxed network model in Isabelle and show that state-based CRDTs still maintain SEC. Finally, we extend our work to show that δ-state CRDTs maintain SEC when only communicating δ-state fragments, even under relatively weak network conditions.

READ FULL TEXT
research
10/23/2022

Keep CALM and CRDT On

Despite decades of research and practical experience, developers have fe...
research
10/12/2017

Pure Operation-Based Replicated Data Types

Distributed systems designed to serve clients across the world often mak...
research
03/07/2018

Efficient Synchronization of State-based CRDTs

Data consistency often needs to be sacrificed in order to ensure high-av...
research
05/26/2023

GOC-Ledger: State-based Conflict-Free Replicated Ledger from Grow-Only Counters

Conventional blockchains use consensus algorithms that totally order upd...
research
07/14/2019

Delivery, consistency, and determinism: rethinking guarantees in distributed stream processing

Consistency requirements for state-of-the-art stream processing systems ...
research
06/10/2020

Predicative theories of continuous lattices

The paper introduces strong proximity join-semilattice, a predicative no...

Please sign up or login with your details

Forgot password? Click here to reset