Data Types for Eventually Consistent Databases
summary
CRDTs provide a deterministic merge so replicas converge to a single value even under concurrent updates, implemented as state-based CRDTs inside Riak/React with operations and a server-side Erlang library react_dt. React uses version vectors and a default replication factor 3 to track causality and remove siblings; React 2.0 adds counters sets and maps, tombstones get garbage-collected, metadata grows with number of actors so space and merge cost rise, and an FP7 project with Basho and Rovio is exploring further limits.
AI-written summary · about
chapters (15)
- 0:00CODE MESH LONDON 2013
- 2:00Scale Out
- 7:59Riak Overview Consistent hashing
- 8:38Riak Overview Dynamic membership
- 10:03Riak Overview Two Writes: Writer, Value, Time
- 11:59SEMANTIC RECONCILIATION
- 12:11DB IS DOWN Fill in Form P170R-35 File for input
- 13:00DYNAMO The Shopping Cart Part.1
- 14:58REMOVES? Set Union?
- 15:31Ad Hoc For each new domain start over
- 17:05The Theory
- 21:01ACTORS? Version Vectors Entry Per Actor (Charron-Bost)
- 21:32Riak 2.0
- 23:47EVOLUTION OF A SET
- 28:48GARBAGE Tombstones Dead Actors
related talks
50mCRDTs in Practice
57mLiving in eventually consistent reality
22mHappily Ever After: A CRDT Fairy Tale
29mHow to Read the Exact Time When You Have a Billion Clocks
49mDistributed Data: Conflict-free Data Structures in JS
46mCoordination-Free Computations
41mBig(ger) Sets: Making CRDT Sets Scale in Riak
41mConsistency without consensus in production systems
