Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems
£34.75£47.99 (-28%)
Data is at the center of many challenges in system design today. Difficult issues need to be figured out, such as scalability, consistency, reliability, efficiency, and maintainability. In addition, we have an overwhelming variety of tools, including relational databases, NoSQL datastores, stream or batch processors, and message brokers. What are the right choices for your application? How do you make sense of all these buzzwords?
In this practical and comprehensive guide, author Martin Kleppmann helps you navigate this diverse landscape by examining the pros and cons of various technologies for processing and storing data. Software keeps changing, but the fundamental principles remain the same. With this book, software engineers and architects will learn how to apply those ideas in practice, and how to make full use of data in modern applications.
- Peer under the hood of the systems you already use, and learn how to use and operate them more effectively
- Make informed decisions by identifying the strengths and weaknesses of different tools
- Navigate the trade-offs around consistency, scalability, fault tolerance, and complexity
- Understand the distributed systems research upon which modern databases are built
- Peek behind the scenes of major online services, and learn from their architectures
Read more
Additional information
Publisher | O'Reilly UK, 1st edition (25 Jan. 2016) |
---|---|
Language | English |
Paperback | 400 pages |
ISBN-10 | 1449373321 |
ISBN-13 | 978-1449373320 |
Dimensions | 17.53 x 3.05 x 23.11 cm |
by Amine
It’s been with no doubt one of the best books I’ve read so far. Martin provides a very thorough overview of the existing data stores and the kind of challenges we can face when using them. Sometimes we undervalue the importance of having a full understanding of the type of storage we use in our systems and the possible consequences of choosing a solution that is not appropriate for the needs of our business. This book really helped me to clarify many concepts that were unclear to me and made me feel more interested in the world of big data and its challenges.
by J. K. Barnett
Should be a must read for every software engineer regardless of their level of experience! There is so much covered by this beautifully organized and thought book in a such a methodological way, with examples, illustrations, references and so much more.
There is something to learn with every page and every chapter. Undeniably a meticulous attention to details and accuracy was given to this intellectual masterpiece.
I’m truly struggling to find anything to criticize about the book. Tons of thanks for the author for delivering such an amazing work.
by Just Some Guy
This book is astonishingly good. I’ll leave you to read the many other 5 star reviews as they speak volumes. I’ll just add that Kleppmann is a first class technical writer whose knowledge of his subject truly elemental. This book teaches and informs the reader by bringing a truly deep understanding of the subjects at hand without ever being academic. The result is that your newly gained knowledge about data-centric systems will help you better understand both traditional technologies (which you probably take for granted) and the many emerging technologies of today (which are often presented as revolutionary). A majestic work of truly great insight.
by Maciej Nowakowski
This book is outstanding – it absolutely deserves all the praise and stars it’s received. I’m not going to begin to summarize or explain the contents because it covers way too much ground. I’ll just say that it’s approachable, easy to comprehend and digest for anyone with moderate development experience and technical competence, and manages to not be dull or tiresome throughout.
My only complaints are that most of the chapters are too long – you do really have to set aside a big block of time to make it thru a whole chapter in a sitting (much less 2 or more).
If you’re a developer or DBA who is at all serious about building modern networked applications, you should read this book. Enough said.
by Maciej Nowakowski
The book is great but it arrived dirty and with dog eared corners
by Chris Roberts
Takes the works of distributed systems luminaries such as Liskov, Tanenbaum, Lamport, Coulouris, et al. and gives a 21st Century practical application. Highly recommended for those just starting out in distributed systems, and a great refresher for the more experienced professional.
by Nicus
Must read book for every serious software and data engineer. Keep a copy on your bedside table and read a page every day.
by a s forbes
Great