Eventual Consistency at Google 16 “We [also] have a lot of experience with eventual consistency systems at Google. In all such systems, we find developers spend a significant fraction of their time building extremely complex and error-prone mechanisms to cope with eventual consistency and handle data that may be out of date. We think this is an unacceptable burden to place on developers and that consistency problems should be solved at the database level.” - F1: A Distributed SQL Database That Scales (2012)
Causal Consistency 18 “No consistency stronger than real-time causal consistency (RTC) can be provided in an always available, one-way convergent system, and RTC can be provided in an always available one-way convergent system.”
What can’t we protect against assuming HA? 19 Cursor Lost Updates P4C Lost Updates P4 Write Skew A5B Stale Reads Not reading your writes L4 Can provide Read Your Writes with sticky sessions Recency Guarantees
Human computers at Dryden by NACA (NASA) - Dryden Flight Research Center Photo Collection http://www.dfrc.nasa. gov/Gallery/Photo/Places/HTML/E49-54.html. Licensed under Public Domain via Commons - https://commons.wikimedia.org/wiki/File: Human_computers_-_Dryden.jpg#/media/File: Human_computers_-_Dryden.jpg
2-10m Computing on a Human Scale 31 10s 1:10s 116d File on desk Office filing cabinet Trip to the warehouse 4x capacity fireproof local filing cabinets 23-40m Phone another office (RDMA) 3h20m Next-gen warehouse
No Compromises 35 “This paper demonstrates that new software in modern data centers can eliminate the need to compromise. It describes the transaction, replication, and recovery protocols in FaRM, a main memory distributed computing platform. FaRM provides distributed ACID transactions with strict serializability, high availability, high throughput and low latency. These protocols were designed from first principles to leverage two hardware trends appearing in data centers: fast commodity networks with RDMA and an inexpensive approach to providing non-volatile DRAM.”
A new paper every weekday Published at http://blog.acolyer.org. 01 Delivered Straight to your inbox If you prefer email-based subscription to read at your leisure. 02 Announced on Twitter I’m @adriancolyer. 03 Go to a Papers We Love Meetup A repository of academic computer science papers and a community who loves reading them. 04 Share what you learn Anyone can take part in the great conversation. 05