Building on Quicksand - Helland & Campbell 2009 Last week we looked at Consistency analysis in Bloom, and Coordination Avoidance in Database Systems. A common theme in both of these is that some collaboration between the application (understanding of application level semantics) and datastore is key to unlocking the next level of performance. We can … Continue reading Building on quicksand
Tag: Distributed Systems
A Comprehensive study of Convergent and Commutative Replicated Data Types
A comprehensive study of Convergent and Commutative Replicated Data Types - Shapiro et al. 2011 This is the third of five Desert Island Paper choices from Jonas Bonér, and it continues the theme of avoiding coordination overhead in a principled manner whenever you can. As we saw yesterday, there are trade-offs between consistency, failure tolerance, … Continue reading A Comprehensive study of Convergent and Commutative Replicated Data Types
Consistency, Availability, and Convergence + COPS
Consistency, Availability, and Convergence Mahajan et al. 2014, and Don't Settle for Eventual: Scalable Causal Consistency for Wide-Area Storage with COPS - LLoyd et al. 2011 This is the second of five Desert Island Paper selections from Jonas Bonér that we'll be looking at this week. I've turned this post into a double-header since Consistency, … Continue reading Consistency, Availability, and Convergence + COPS
Consistency analysis in Bloom: a CALM and collected approach
Consistency analysis in Bloom: a CALM and collected approach - Alvaro et al. 2011 This week I'm delighted to bring you another edition of Desert Island Papers, featuring Jonas Bonér. And it seems fitting that Jonas' first choice is a paper by our previous Desert Island Paper guest, Peter Alvaro. There are several big ideas … Continue reading Consistency analysis in Bloom: a CALM and collected approach
Raft Refloated: Do we have consensus?
Raft Refloated: Do we have consenus? - Howard et al. 2015 This is part ten of a ten-part series on consensus and replication. We're nearing the end of this journey after looking at Viewstamped Replication (and VRR), Paxos, ZooKeeper's atomic broadcast, and Raft. Not that we've exhausted all the literature on these topics - far … Continue reading Raft Refloated: Do we have consensus?
In Search of an Understandable Consensus Algorithm
In Search of an Understandable Consensus Algorithm (Extended Edition) - Ongaro & Ousterhout 2014 This is part 9 of a ten part series on consensus and replication. Here's something to be grateful for: a consensus algorithm with a primary goal of being understandable! The authors also claim it provides a better foundation (than previous algorithms) … Continue reading In Search of an Understandable Consensus Algorithm
Vive La Différence: Paxos vs Viewstamped Replication vs Zab
Vive La Différence: Paxos vs Viewstamped Replication vs Zab - van Renesse et al. 2014 This is part 8 of a ten part series on consensus and replication. Perhaps by now you've started to discern some common patterns in the algorithms we've looked at. A leader or primary; two-phases to each goal the group wants … Continue reading Vive La Différence: Paxos vs Viewstamped Replication vs Zab
ZooKeeper’s Atomic Broadcast Protocol: Theory and Practice
ZooKeeper's Atomic Broadcast Protocol: Theory and practice - Medeiros 2012. This is part 7 in a ten part series on consensus and replication. Perhaps after reading yesterday's paper on Zab you feel like you've got a good high-level understanding of how ZooKeeper atomic broadcast works under the covers. Unfortunately I've got news for you - … Continue reading ZooKeeper’s Atomic Broadcast Protocol: Theory and Practice
Zab: High-performance broadcast for primary-backup systems
Zab: High-performance broadcast for primary-backup systems - Junqueira et al. 2011 This is part six of a ten-part series on consensus and replication. This paper describes the atomic broadcast protocol that underpins Zookeeper. Rather than replicate operations as we've seen so far for Paxos and VR, Zab replicates state changes. Critical to the design of … Continue reading Zab: High-performance broadcast for primary-backup systems
Viewstamped Replication Revisited
Viewstamped Replication Revisited - Liskov & Cowling 2012 This paper presents an updated version of Viewstamped Replication (referred to as VR from now on). VR works in an asynchronous network like the Internet, and handles failures in which nodes fail by crashing. It supports a replicated service that runs on a number of replica nodes. … Continue reading Viewstamped Replication Revisited