I have spent most of my career either as a DBA or integration specialist. This is the best book by far I have read covering those subjects. His descriptions of the theoretical underpinnings of the different technologies involved is perfectly pitched. He manages to describe complex things simply which demonstrates a real mastery of the subject. His use of simple unix commands to illustrate what, for example, a database is doing again is very impressive. This promises to be a very influential read for me.
Just finished reading the book. Stunned by how good it is, surpassing even "Release It!" by Michael Nygard, which I was blown away by, nearly 10 years ago. This book is insightful. informative. impartial, extensively researched, mind-expanding, precise, and even, in the end, philosophical.
I'd regard the book as required reading for anyone involved in software engineering. I recently asked my manager to buy copies for 15 of my peers in my team (which he did). Buying this book is a no-brainer with respect to personal ROI.
Data-Intensive Applications is an amazing piece of work. It's easy to read. It drives you from simple to more complex topics with grace. It's full of references to other people's work, and it's constantly linking to previous and future parts of the book where relevant content is further explained, making the book beautifully cohesive. It's even funny (sometimes).
I think it took the author more than 4 years to finish it. He could have waited any number of years more and the book would be as valuable as it is today.
This seems to be a very knowledgeable book, to be honest quite a lot of it goes over my head and makes me very afraid of distributed systems, as it sounds like you need a whole department to work on it, so not something I could easily have a go at. There is so much in this that it is worth reading a few times which I should really do, but now near the end I'm not sure I know where to start :)
A foundation book to understanding how Web-scale distributed systems work. This book should be on every computer science student's or graduate's shelf. Every chapter is accompanied with a wealth of references that open doors to further research and exploration. Martin Kleppmann did a great job and a great service to all of us working with distributed systems. For (a hopefully to-be) next edition of the book, I'd like to see even more depth for transaction isolation levels (there is info out there on the Web), consistency "levels" (also out there on the Web) and umbrella "unification" of these two areas.
I like the writing style, my comprehension has been improved over other books I've read on subjects such as riak or cassandra. Although I was familiar with the topics, after reading each chapter I felt I had a far deeper and clearer understand of every aspect of data base design from file systems to application design.
It took me 6 months to finish this book, it's definitely not a bed time read, if one is to understand the concepts properly. Nonetheless, Martin defintely knows the area, it's shows it's a very well researched book. Combined with the SRE book by O'Reilly it's a strong foundation for Distributed Systems Developers.
Reading this is at least as useful for your professional development as "Clean Code" or "Design Patterns", and unlike them, it is virtually peerless - there is no other book on the topic of databases and data infrastructure that comes even close to competing with this one in terms of information covered and writing style.
An encyclopedic overview of data storage systems, from fundamental concepts and algorithms to practical use cases and details of specific technologies. Would definitely recommend it to anybody interested in distributed systems, database internals and big data processing. This book offers much more than it promises!