Fear No More: Embrace Eventual Consistency
Sean Cribbs @seancribbs
Fear No More: Embrace Eventual Consistency Sean Cribbs - - PowerPoint PPT Presentation
Fear No More: Embrace Eventual Consistency Sean Cribbs @seancribbs Distributed Systems Experts FEAR Photo from Wikimedia ACID vs. BASE ACID vs. BASE Strong consistency Weak consistency Isolation Availability first Focus
Sean Cribbs @seancribbs
Photo from Wikimedia
(pessimistic)
(optimistic)
Fox, Gribble, Chawathe, Brewer, Gauthier - Cluster-Based Scalable Network Services (SOSP97)
“Inconsistency is the worst thing that could happen.” “Being unavailable is the worst thing that could happen.”
“Any sufficiently large system is in a constant state of partial failure.” Justin Sheehy, Basho CTO
Leslie Lamport 1977
don’t happen”
identifiable
don’t happen”
identifiable
exclusion
correctness
first-serve
eventually happen”
future
eventually happen”
future
freedom
service
(pessimistic)
(optimistic)
Fox, Gribble, Chawathe, Brewer, Gauthier - Cluster-Based Scalable Network Services (SOSP97)
“...it’s easy to satisfy liveness without being useful... If all replicas return the value 42 in response to every request, the system is eventually consistent.”
http://www.bailis.org/blog/safety-and-liveness-eventual-consistency-is-not-safe/
Peter Bailis
Photo from Wikimedia
Diagrams from Wikimedia
Diagrams from Wikimedia
updates
results and reply quicker
load-balanced
cooperative large-file transfer
and block discovery through the “tracker” node
http://computer.howstuffworks.com/bittorrent2.htm
eventually become seeds
progress
preferred
prevent corruption
documents identified by URIs
control
changed, moved, removed without coordination
unbounded staleness, redirection
the system
replicated, partitioned
node
Voldemort
1 2 3
exchanges, vector-clocks
updates
Photo by Associated Press
Photo by Associated Press
hugs!