As software engineers, we need to build applications that are reliable, scalable and maintainable in the long run. We need to understand the range of available tools and their trade-offs. This book will help you navigate the diverse and fast-changing landscape of technologies for storing and processing data. The author, Martin Kleppman, compares a broad variety of tools and approaches, so that you can see the strengths and weaknesses of each, and decide what’s best for your application.
Designing Data-Intensive Applications is a rare resource that bridges theory and practice to help developers make smart decisions as they design and implement data infrastructure and systems.