Photo

Distributed Systems Reading List

Mar 25, 2024

I love distributed systems. I love building them and reading about them. If only I could get paid to read about them all day.

This is where I keep track of what I’ve read, and a few places I go to find good things to read.

TODO:

  • Add a section on the people behind distributed systems research. It will be a long list, I know, but I really admire and respect them and want to pay tribute to the long history of the field. It also helps to have a mental picture of the people behind the research. It would be very cool to have a tree or graph that showed all the connections.
  • Write a short paragraph about each paper. It would help you decide if the paper is one you’d be interested in, and it would help me to solidify by own understanding of the paper.

Blogs

All Things Distributed (Werner Vogels)

Amazon Builders Library

Marc Brooker

Courses

MIT 6.824/6.5840

Consistency

Keeping CALM: When Distributed Consistency is Easy (Joseph M. Hellerstein and Peter Alvaro)

Replication

Object Storage on CRAQ (Jeff Terrace and Michael J. Freedman)

Fault tolerance

Avoiding fallback in distributed systems (Jacob Gabrielson)

Distributed Transactions

Highly Available Transactions: Virtues and Limitations (Peter Bailis, Aaron Davidson, Alan Fekete, Ali Ghodsi, Joseph M. Hellerstein, Ion Stoica)

Containers

On-demand Container Loading in AWS Lambda (Marc Brooker, Mike Danilov, Chris Greenwood, and Phil Piwonka, Amazon Web Services)

Load Balancing

The Power of Two Random Choices: A Survey of Techniques and Results (Michael Mitzenmacher, Andrea W. Richa, Ramesh Sitaraman)

The power of two random choices (Marc Brooker)

Finding Needles in a Haystack with Best-of-K (Marc Brooker)