Access and Feeds

NoSQL: Polyglot Persistence — Matching the Data Storage Tool to the Data

By Dick Weisinger

NoSQL Distilled, A brief guide to the world of Polyglot Persistence” is a great new book by Pramod J. Sadalage and Martin Fowler, published by Pearson’s Addison-Wesley Professional.  Both Sadalage and Fowler now work at ThoughtWorks, a consultancy that specializes in data storage technologies.

The book provides a concise and easy-to-understand overview of NoSQL databases.  The writing style is very accessible and the total length of the book comes in at only 150 pages.  It is perhaps one of very few technical books that most of its readers will be able to easily read from cover to cover.  It’s a great starting point for coming up to speed on NoSQL technologies.  [Chapter 13 of the book is available on-line for free here.]

The book provides good insight into understanding the basic differences between the many available NoSQL options, and the authors provide scenarios that demonstrate which types of data are best handled by different types of NoSQL databases.

The authors cite two primary motivations for adopting NoSQL technology:

  • To improve programmer productivity
  • To improve data access performance by being able to better handle large data volumes, reduce latency, and improve throughput

Sadalage and Fowler argue that, rather than force-fitting all data into the mold of a relational database, a case can be made for considering ‘polyglot persistence’, or the use of multiple types of data stores, selectively choosing the storage technology based on the structure of the data being handled.  In a slidedeck from a presentation made earlier in 2012, Sadalage and Fowler say that “Polyglot Persistence is the use of multiple data storage technologies, chosen based on the way data is used by the individual application. Why store binary images in a relational database, when there are better storage systems?”

The book “NoSQL Distilled” classifies NoSQL databases into four categories.  The breakdown of NoSQL technologies into those four categories, as described in the book, is shown below.  A more extensive listing of NoSQL databases can be found here and detailed comments about NoSQL technology is also available online on a site written by Alex Popescu.   Fowler and Sadalage note that while most NoSQL databases treat data as aggregations, there are some exceptions to this, like Graph databases.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Shout it
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)

Leave a Reply

Your email address will not be published. Required fields are marked *

*