Movies Books Music Food Tv Shows Technology Politics Video Games Parenting Fashion Green Living more >

Lunch » Tags » Untagged » NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence » User review

Excellent overview of just what NoSQL covers...

  • Nov 9, 2012
  • by
Back in August, I wrote an article for the Developer Tips Newsletter titled "Domino Was NoSQL Before NoSQL Was Cool". In it, I talked a little about how Domino's "NoSQL" database is both a blessing and a curse when it comes to trying to explain exactly where Domino fits in your environment. To get deeper into the whole topic of NoSQL (and to see how Domino fits in that world), I read "NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence" by Pramodkumar J Sadalage and Martin Fowler. Not only do I now have a better understanding of the entire NoSQL topic, but I also better understand some of the unique ways that Domino has dealt with the pros and cons of this style of data storage.

Sadalage and Fowler do an excellent job in making NoSQL Distilled an "easy" read in terms of interest and flow. Their goal is not to give you an encyclopedic knowledge of every type of NoSQL implementation and product offering. Instead, they aim to give you a solid grasp of the basics, with references back to actual database implementations that use the various structures. Even after reading just the first two chapters, you should have a much clearer understanding of what makes up a NoSQL database and the various data models used to implement it. I could have stopped right there and still have been happy with the value. But it continues to deliver throughout each remaining chapter.

Part 2 of the book is where many of the "I get it" moments happened for me. As a Domino developer, I naturally read chapter 9, Document Databases, with interest. That's the structure that Domino uses (and is in fact mentioned by name in the chapter), as well as CouchDB. If you're unfamiliar with CouchDB, it was created by Damien Katz, who was also one of the chief developers at IBM working on the Domino product before leaving to start his own project. It's one of the reasons there are so many similar architectural concepts for data when you compare the two.
The authors dive into what is meant by a "document database" when it comes to NoSQL, and how it plays out in terms of how data is stored. As with the rest of the chapters, they give some examples as to how document databases differ from the traditional relational model, suitable use cases for that type of database, and most importantly, when *not* to use that type of model. Although it doesn't mention Domino specifically throughout the chapter, it's easy to take their recommendations and understand why Domino is great for some projects and absolutely the wrong choice for others.

"NoSQL Distilled" is a book that is well worth the time you'll spend reading it. Not only will you have a few "ah-ha" moments when it comes to working with and using Domino, but you'll also come away with a greater appreciation of the whole NoSQL topic and how you can use that for your own projects going forward.

Table of Contents
Part 1: Understand
Chapter 1: Why NoSQL?
Chapter 2: Aggregate Data Models
Chapter 3: More Details on Data Models
Chapter 4: Distribution Models
Chapter 5: Consistency
Chapter 6: Version Stamps
Chapter 7: Map-Reduce
Part 2: Implement
Chapter 8: Key-Value Databases
Chapter 9: Document Databases
Chapter 10: Column-Family Stores
Chapter 11: Graph Databases
Chapter 12: Schema Migrations
Chapter 13: Polyglot Persistence
Chapter 14: Beyond NoSQL
Chapter 15: Choosing Your Database

What did you think of this review?

Fun to Read
Post a Comment
About the reviewer
Thomas Duff ()
Ranked #43
Thomas Duff, aka "Duffbert", is a long-time member of the Lotus community. He's primarily focused on the development side of the Notes/Domino environment, currently working for a large insurance … more
About this product


Pramod J. Sadalage, Principal Consultant at ThoughtWorks, enjoys the rare role of bridging the divide between database professionals and application developers. He regularly consults with clients who have particularly challenging data needs requiring new technologies and techniques. He developed pioneering techniques that allowed relational databases to be designed in an evolutionary manner based on version-controlled schema migrations. With Scott Ambler, he coauthoredRefactoring Databases(Addison-Wesley, 2006).


Martin Fowler, Chief Scientist at ThoughtWorks, focuses on better ways to design software systems and improve developer productivity. His books include Patterns of Enterprise Application Architecture; UML Distilled, Third Edition; Domain-Specific Languages (with Rebecca Parsons); and Refactoring: Improving the Design of Existing Code (with Kent Beck, John Brant, and William Opdyke). All are published by Addison-Wesley.

view wiki



© 2014 Lunch.com, LLC All Rights Reserved
Lunch.com - Relevant reviews by real people.
This is you!
Ranked #
Last login
Member since