HACKER Q&A
📣 DisagreeAndQuit

Distributed System Design book recommendations?


So I work at a FAANG company where the ‘durrr relational databases’ don’t scale cult is preeminent. We draw fancy boxes and arrows and sweep the split brain problems under the rug. All literature I have read so far treat the topic very naively — I want something that airs out all the dirty laundry — split brain issues, failure recovery, etc and provides suggestions how to deal with it. I’ve already and enjoyed “data-intensive” but looking for something a little broader.


  👤 hayst4ck Accepted Answer ✓
I would take a tour of the top 10 colleges and look through their course syllabi and recommended readings.

Here is Stanford's recommended reading: https://www.scs.stanford.edu/22sp-cs244b/sched/

Here is CMU's: https://www.andrew.cmu.edu/course/15-440/readings/

I would imagine you will end up reading various papers on things like:

spanner: https://en.wikipedia.org/wiki/Spanner_(database)

cassandra: https://en.wikipedia.org/wiki/Apache_Cassandra

paxos: https://en.wikipedia.org/wiki/Paxos_(computer_science)

raft: https://en.wikipedia.org/wiki/Raft_(algorithm)

two-phase commit: https://en.wikipedia.org/wiki/Two-phase_commit_protocol