Review: Designing Data-Intensive Applications by Martin Kleppmann
Short version: If you are maintaining, touching, planning, developing or interested in systems which are working with a lot of data, then read this book.
It gives on one side a good overview of the best practices, tools, concepts and scientific work in this field and goes in-depth to the most-important topics, so that you can understand them good enough for decision finding.
I think everyone from the group of people I mentioned in the first paragraph should have a copy of it and keep it as a reference book. Even if it doesn’t go deep enough for you, you can take a look at the bunch of references at the end of every chapter.
Personally I loved the topic about clocks and streaming, as I have a personal love and interest into the realtime topic.
This book will definitely help you to prevent problems in data-intensive applications and push you into the right direction.
Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems by Martin Kleppmann ISBN: 978-1449373320