Over the last few months I've been helping my colleague Pramod Sadalage work on a book on NoSQL technologies to be titled NoSQL Distilled. (You may know of Pramod's work on refactoring databases and evolutionary database design.) In the last year we've been doing a few projects that have used NoSQL technology, and we think it's going to play an important role in the next few years of software development.
We're writing this book as a brief introduction to help people understand the issues involved in using this technology. As you might expect by the "distilled" in the title, it's modeled on the style of UML Distilled - a short overview aimed at giving you enough information to get started, providing core concepts and orientation for further study should you get deeper into it. Our target is a book of 100-150 pages, and we intend to be pretty firm on the upper limit.
It's a ill-defined and volatile field, which makes it tricky to decide what to include. This problem is exacerbated by the fact that we want a book that will be of lasting value - so we have to try and pick core concepts that span the various NoSQL systems out there and will continue to be important as they develop over the next years.
The current contents include such topics as aggregate-oriented data models, consistency in distributed data, and database evolution. We also have short example chapters that look at databases such as MongoDB, Neo4J, and Riak.
As I write this we are getting close to a first draft for technical review. We hope to reach a final draft by spring this year at which point there will be an electronic rough-cut available. The physical book, and production ebooks, should appear early this summer. I'll post here as we make progress, and I have a few related bliki posts brewing in the brain too.