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


Kill It With Fire

Author: Marianne Bellotti
Publisher: No Starch Press
Pages: 248
ISBN: 978-1718501188
Print: 1718501188
Kindle: B08CTFY4JP
Audience: Developers renovating aging systems
Rating: 4.5
Reviewer: Kay Ewbank

The subtitle of this book is "Manage aging computer systems and future proof modern ones". Thi [ ... ]



Programming with Rust

Author:  Donis Marshall
Publisher: Addison-Wesley
Pages: 400
ISBN: 978-0137889655
Print: 0137889658
Kindle: B0CLL1TGVT
Audience: Programmers wanting to learn Rust
Rating: 3
Reviewer: Mike James
Rust is the language we all want to learn at the moment so this is just in time.


More Reviews

Last Updated ( Thursday, 09 February 2012 )