Distributed systems theory for the distributed systems engineer
the-paper-trail.org
the-paper-trail.org
Today I would add a fifth item to that list: "Why Logical Clocks are Easy", which is one of the best explanations of causality I have seen so far [2].
[1] https://blog.separateconcerns.com/2015-07-07-four-easy-reads...
We can't keep everything we ever write up to date, but there's little point in reading someone's 2015 list of what to read when they've decided there's a good addition in 2016.
Couldn't recommend it more - http://courses.cs.washington.edu/courses/csep552/13sp/video/
Class Webpage - http://courses.cs.washington.edu/courses/csep552/13sp/
Just downloaded and sent to Kindle 'Distributed Systems for Fun and Profit' as a free PDF written by an engineer currently working for Stripe, a book recommended in the article. It's only 62 pages and doesn't feel intimidating!
http://shop.oreilly.com/product/0636920032175.do?sortby=publ...
Bingo! We need some "O'Reilly style" distributed systems material. Most of us are not going to be designing new algorithms, but plugging in various pieces. Having a generic understanding of those pieces and where they work well, and when to actually go to the research are kind of missing right now in that world.
Some other links that people might find interesting:
http://videlalvaro.github.io/2015/12/learning-about-distribu...
Something I'm looking forward to, Pearson has returned the copyrights of the book to the authors and they are supposedly updating it. Could be interesting: http://www.distributed-systems.net/index.php?id=distributed-...
The main web site says the 3rd edition is nearing completion.
I'm thinking of something like Lamport's global time model from "On interprocess communication".
Gwen is at Confluent, the Kafka company. Doing a great job there!
I think a fundamental and very underrated paper and concept (which actually predates Paxos, yet Lamport ignored or was unaware of) is the notion of randomized consensus protocols. Simpler than "structured" leader type algorithms. Believe Ben Or's algorithm was first.
Ben-Or's "Another Advantage of Free Choice" beat Rabin's "Randomized Byzantine Generals" by a couple of months in 1983. These algorithms show how much people over-extend results like FLP. The result is about a very particular system model, and the addition of even a very tiny extra piece (in Ben-Or's case, a random oracle) makes the consensus problem possible again.
I wouldn't say that these algorithms were really ignored by Lamport when he wrote the Paxos paper. Again, they're solving a different problem in a different system model. If you want to pick on Lamport, talk about Liskov's Viewstamped Replication.
If anybody has a digital copy of Ben-Or's paper that isn't partially cut off, please make it available. Both the copy in the ACM library and the only copy the author himself has are missing some of the right hand side.
A bee trapped indoors will go for the sun: a great algorithm for a forest/thicket but fatal in a house or car with windows. A fly will randmly try until it succeeds, meaning it is slower at escaping a thicket but will eventually find the open door even if it's opposite from the window.