MongoDB in Action

Author: Kyle Banker
Publisher: Manning, 2012
Pages: 280
ISBN: 978-1935182870
Aimed at: Application developers and DBAs wanting to use MongoDB from the ground up
Rating: 4.5
Pros: Well written description of MongoDB and its advantages
Cons: Tends to be over-enthusiastic
Reviewed by: Kay Ewbank

MongoDB is attracting a lot of attention. Does this book help developers get to grips with it?

MongoDB is a database that arouses great loyalty in its fans, who argue that its document-based data model works better in web applications than the traditional relational database. Kyle Banker works at 10gen, the company doing much of the development of the open-source MongoDB, so you’d expect him to be enthusiastic about MongoDB, and he is. He manages the MongoDB drivers for Ruby and C, which also has a bearing on the focus of this book.

 

Banner

 

Banker starts with a description on MongoDB and how it was developed, then a quick sales pitch to persuade you why it’s the solution to all your problems. This opening gives a really excellent introduction to MongoDB and the ideas behind it, and like the rest of the book the style of writing is clear and easy to read. There are chapters on working with the JavaScript shell and Ruby, and Banker develops a simple application for archiving and displaying tweets. The code is well written, and even if you don’t know Ruby you should be able to see what’s happening.

The next part of the book looks at the query language you work with in MongoDB and the document data model. This is the key to MongoDB, and you’re shown how to design the structures, create the documents and collections then work with them using the JavaScript shell. Alongside the explanations Banker develops a quite detailed e-commerce application with orders, customers, products, product reviews and categories. Banker shows where you might encounter problems and how to get around them.

Part Three is titled ‘MongoDB Mastery’, and looks at optimizing queries using indexes and the query optimizer. There’s a chapter on replication, and another on sharding. If you’ve not encountered sharding before, it’s another term for distributed databases, and MongoDB has automatic sharding to deal with large data sets. This is a useful chapter that takes you from a basic understanding of a shard through setting up a shard cluster, querying and indexing, the tricky task of shard keys, and working with shards in production. The book closes with a chapter on deployment and administration.

As a developer this is a good book for learning what MongoDB offers and how to use it. There is quite a lot of focus on Ruby which could be a disadvantage if you’d rather use an alternative language, and I’d have liked more examples, but overall I enjoyed this book. A useful read that’s well written.

 

Banner


Understanding Software Dynamics (Addison-Wesley)

Author: Richard L. Sites
Publisher: Addison-Wesley
Pages: 464
ISBN: 978-0137589739
Print: 0137589735
Kindle: B09H5JB5HC
Audience: Every developers
Rating: 5
Reviewer: Kay Ewbank

This book looks at the different reasons why software runs too slowly, and what developers can do about it, starting by looki [ ... ]



Core Java for the Impatient, 3rd Ed

Authors:  Cay S. Horstmann 
Publisher: Addison Wesley
Pages: 576
ISBN: 9780138052102
Print: 0138052107
Kindle: B0B8RZZBDJ
Audience: Smart programmers wanting in-depth coverage
Rating: 4.8
Reviewer: Mike James

The key to this book is the word "impatient" in the title. What does this m [ ... ]


More Reviews

Last Updated ( Thursday, 09 February 2012 )