Book: Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems

Book: Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems

One of my favourite computer science books

Published on Monday, February 13, 2023

Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems is one of my favourite computer science books. Author managed to strike a fantastic balance between academic writing and fun development book (ok, maybe not as fun as O'Reilly's Head First Book Series).

The main idea behind the book is to cover as many technologies and techniques as possible in short but concise style. Descriptions are great, and for those who want to dive deeper into the topic there are many links with great resources.

It would be too much to go into details about every chapter in this short review, so I will just list them here:

  • Foundations of Data Systems
    • Reliable, Scalable, and Maintainable Applications
    • Data Models and Query Languages
    • Storage and Retrieval
    • Encoding and Evolution
  • Distributed Data
    • Replication
    • Partitioning
    • Transactions
    • The Trouble with Distributed Systems
    • Consistency and Consensus
  • Derived Data
    • Batch Processing
    • Stream Processing
    • The Future of Data Systems

Depending of your skill level, book can be very fast to read. However, if you get stuck on some chapter, I would recommend to check other resources about the topic, especially author's YouTube videos. He gives a lot of great presentations!

For true fans, there are also posters of the maps from the book on the Kickstarter.

designing-data-intensive-applications-map.jpg

Author

Martin Kleppmann is a computer scientist and author, known for his work in the field of data systems. He is a researcher at Technical University of Munich, and before that he was working at the University of Cambridge.

Check out Martin's YouTube Channel, as well as his talks on big conferences like QCon, GOTO, Strange Loop etc.