Distributed systems achieve fault tolerance and scalability by replicating data across multiple network nodes. However, replication introduces the fundamental challenge of consistency: what guarantees do clients have when concurrently reading and writing to distributed replicas across asynchronous networks?
Developers frequently conflate “Consistency” in ACID (which means preserving application-level database schema invariants) with “Consistency” in CAP (which means single-copy atomic visibility across distributed nodes). Under network partitions, hardware clock skew, and concurrent client requests, a distributed system must choose its guarantees carefully.
This module deconstructs the spectrum of consistency models: from the gold standard of Linearizability (recency guarantees mapped to real-time execution intervals) down through Sequential Consistency, Causal Consistency, Read-Your-Writes, Monotonic Reads, and Eventual Consistency.