Back to books
Designing Data-Intensive Applications — cover

Designing Data-Intensive Applications

by Martin Kleppmann · Published 2017

The most technical book on this list, and one of the most valuable. Outstanding for understanding distributed systems, databases, replication, consistency and system architecture. Not a book to read — a book to study.

What works

  • Exceptional technical depth.
  • Explains why systems work, not just how to use them.
  • Excellent treatment of distributed systems.
  • Valuable across many technology stacks.

What doesn't

  • Very demanding.
  • Not suitable for beginners.
  • Some technologies evolve faster than the book.
  • Requires hands-on engineering experience to fully appreciate.

Building reliable large-scale systems requires understanding the fundamental trade-offs between consistency, availability, scalability, storage, processing and failure.

The most technical book on this list, and one of the most valuable. Outstanding for understanding distributed systems, databases, replication, consistency and system architecture. Not a book to read — a book to study.

Was this useful?

Counts appear once there are 5 votes.