MongoDB in Action
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.




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.



Learning Python with Raspberry Pi

Author: Alex Bradbury and Ben Everard
Publisher: Wiley
Pages: 286
ISBN: 978-1118717059
Audience: Complete beginners to programming
Rating: 3
Reviewer: Mike James

Python 2 and 3 come ready to run on the Raspberry Pi - is this a good way to get started?

Learning PHP Design Patterns

Author: William Sanders
Publisher: O'Reilly
Pages: 362
ISBN: 978-1449344917
Audience: PHP programmers
Rating: 2
Reviewer: Alex Armstrong

PHP design patterns? Sounds just what you need to build an enterprise standard website. Does this book succeed in educating you? 

More Reviews

Last Updated ( Thursday, 09 February 2012 )

RSS feed of book reviews only
I Programmer Book Reviews
RSS feed of all content
I Programmer Book Reviews
Copyright © 2015 All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.