I recently bought (Kindle version) the book "NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence" to get a better overview and comparison of NoSQL databases. At the halfway point I can say that this book is pretty good at conveying concepts and comparisons in the NoSQL world. I am somewhat familiar with them from a practical usage perspective but had been wanting to get a better formal understanding and this book does the trick. I recommend it if you are looking for a reasonably quick read on the subject. One of the key elements of using something like MongoDB is that it can be viewed as an application database rather than an integration one. This means that you are using it for storage/access from a single application rather than as something that acts as a communication point for numerous applications of different types. The advantage from a single app perspective is that an API and server are provided that you do not have to code in. MongoDB is probably my current "favorite" but that is just from the perspective of having used it the most recently.