Just-Right Consistency
summary
Argues that applications get the minimum synchronization they actually need: use commutative incremental updates (CRDT-style) for concurrent counters and merges, use causal consistency to preserve creation-before-reference ordering, and implement all-or-nothing joint updates where pointers must appear together. Performs static analysis of precondition tests to detect which checks are stable under concurrency and which require synchronization. Demonstrates an implementation in the Antidote database and reports where availability is preserved vs where coordination is unavoidable.
AI-written summary · about
chapters (16)
- 0:00Intro
- 1:17Geo-distributed DB
- 2:11Strong Consistency
- 3:30Eventual Consistency
- 5:01FMK Fælles Medicinkort
- 6:14Some invariants
- 6:57Availability + invariants?
- 7:31Approach
- 10:55Pattern 1: relative order
- 11:23Causal consistency
- 11:37joint update
- 12:16All-or-nothing
- 13:21Pattern 3: precondition
- 13:38CAP-sensitive invariants
- 15:05Not stable precondition
- 15:57Summary: Just-Right Consistency
related talks
18mAvoiding Conflicts in Highly-Concurrent Applications
35mDon't Give Up on Serializability Just Yet
46mCoordination-Free Computations
29mHow to Read the Exact Time When You Have a Billion Clocks
41mConsistency without consensus in production systems
50mCRDTs in Practice
16mNCC: Natural Concurrency Control for Strictly Serializable Datastores by Avoiding the...
22mHappily Ever After: A CRDT Fairy Tale
