At the Forge - Advanced MongoDB
Where things get tricky, and even sticky, is precisely in the area where relational databases have excelled (and have been optimized) for decades—namely, the interactions and associations among related objects, ensuring data integrity without compromising speed too much. I'm sure MongoDB will continue to improve in this area, but for now, this is the main thing that bothers me about MongoDB. Nevertheless, I've been impressed by what I've seen so far, and I easily can imagine using it on some of my future projects, especially those that will have a limited number of cross-collection references.
For an excellent introduction to MongoDB, including some corporate background on 10gen and how it can be used in your applications, listen to episode 105 of the “FLOSS Weekly” podcast. I found the podcast to be both entertaining and informative.
Another good introduction is from John Nunemaker, a well-known blogger in the Ruby world: railstips.org/blog/archives/2009/06/03/what-if-a-key-value-store-mated-with-a-relational-database-system.
Mathias Meyer wrote a terrific introduction and description of MongoDB on his blog: www.paperplanes.de/2010/2/25/notes_on_mongodb.html.
Because MongoDB is a “document” database, you might be wondering if if there is any way to generate a full-text index on a document. The answer is “kind of”, with more information and hints available at www.mongodb.org/display/DOCS/Full+Text+Search+in+Mongo.
Finally, David Mytton recently wrote a blog post, in which he described some of the issues he encountered when using MongoDB in a production environment: blog.boxedice.com/2010/02/28/notes-from-a-production-mongodb-deployment.
Reuven M. Lerner is a longtime Web developer, trainer, and consultant. He is a PhD candidate in Learning Sciences at Northwestern University. Reuven lives with his wife and three children in Modi'in, Israel.
- An Introduction to Tabled Logic Programming with Picat
- Ubuntu MATE, Not Just a Whim
- Build Your Own Raspberry Pi Camera
- Nasdaq Selects Drupal 8
- Non-Linux FOSS: Screenshotting for Fun and Profit!
- Secure Desktops with Qubes: Compartmentalization
- Getting a Windows Refund in California Small Claims Court
- Canonical Ltd.'s Ubuntu Core
- A New Mental Model for Computers and Networks
- The Peculiar Case of Email in the Cloud