
Designing Data-Intensive Applications
The only book that made distributed systems feel like engineering rather than folklore.
- Author
- Martin Kleppmann
- Year
- 2017
After finishing this the vocabulary I use in architecture discussions changed. I stopped saying “consistency” and started asking which consistency.
The chapter that helped me most was not replication but data encoding. I had been underestimating schema evolution; afterwards it happened to us in exactly the way described, on three separate projects.
Its weakness is that most examples come from systems around 2016. The ideas hold, the product names have aged.