Consistency Models
Linearizable, causal and eventual consistency explained.
All topics · 2 lessons · 18 resources
Learn Consistency Models on System Design Atlas
- 01Consistency, availability and the CAP theoremWhat goes wrong when data lives on several machines, and the vocabulary for choosing what to guarantee.System Design Foundations · 12 min read · start here
- 02Transactions and isolation levelsHow databases keep concurrent updates from corrupting each other, and the anomalies each isolation level allows.Core Concepts: How Things Actually Work · 9 min read
Related topics
These share a lesson with Consistency Models.
Curated Consistency Models resources
Books
- Concurrent and Distributed Systems (Cambridge lecture notes)Eight lectures on time, broadcast, replication, consensus and transactions, with notes, slides and video. Free from the author under CC BY-SA.University of Cambridge
- Distributed Systems for Fun and ProfitA short, readable tour of time, consistency and replication in distributed systems, free to read online from the author.mixu.net
- Designing Data-Intensive ApplicationsThe standard book on data systems: storage engines, replication, partitioning, transactions, batch and stream processing.O'Reilly
Blogs
- All Things DistributedThe Amazon CTO's blog on architecture, scale and the history of AWS services.Amazon
- CAP Twelve Years Later: How the Rules Have ChangedThe author of the CAP conjecture revisits it and explains the trade-offs more carefully.InfoQ
- Eventually Consistent - RevisitedAmazon's CTO explains the consistency models (strong, eventual, read-your-writes, monotonic) and why large systems choose among them.Amazon
- Jepsen analysesTests of real databases under failure, showing which consistency promises hold.Jepsen
- Please stop calling databases CP or APWhy the CAP labels hide more than they reveal, and what to ask instead.martin.kleppmann.com
- Martin Kleppmann's BlogEssays on distributed systems, CRDTs, consistency and data-intensive design.martin.kleppmann.com
Documentation
- Amazon S3 strong consistencyWhat strong read-after-write consistency means for S3 and how it simplifies applications.Amazon Web Services
- Cassandra architecture overviewThe ring, replication, tunable consistency and the storage engine of Cassandra.Apache Software Foundation
- PostgreSQL: Introduction to MVCCHow PostgreSQL lets readers and writers work without blocking each other using multiple row versions.PostgreSQL
Case Studies
- Read Consistency with Database Replicas at ShopifyAt Shopify, we’ve long used database replication for redundancy and failure recovery, but only fairly recently started to explore the potential of replicas as an alternative read-only data source for applications.Shopify
- Amazon Dynamo: Highly Available Key-Value StoreWerner Vogels' write-up of the design that inspired DynamoDB, Cassandra and Riak.Amazon