MongoDB – Introduction


Home Page

You can find the home page for MongoDB here.  Please visit their web site.  It is really easy to get a feel for what MongoDB is by having a look at what they have there.  Their online documentation is extremely useful and will help you get up and running very quickly.  I’m mainly writing this series on MongoDB because I believe it to be an amazing platform for many use cases and the completeness of their documentation, their forums and their community is quite literally astonishing…

About

In short, MongoDB is a Document-oriented storage platform.  What does that mean?  Well, in short it means that it’s a database where there is no pre-defined schema.  Your domain model is the schema, so let’s assume for the moment that you have a domain model as follows:

DomainModel - Introduction

DomainModel - Introduction

Seeing that MongoDB saves all data in a Binary JSON (BSON) format.  For those who do not know what JSON is, please visit the JSON home site here.  So, if we take this into consideration then when we save the above domain model it will look something like the JSON structure below, but in Binary format.


{
"OrderNumber":"6c844f9d-9aec-40e9-a882-2b25ea9f693e",
"OrderItems":
[
{ "Item":
{
"ItemCode":"ITEM123", "Description":"BrokenCode", "Price":10.59
},
"Quantity":3,"TotalPrice":31.77
}
]
}

</code>

Why use MongoDB

Well…  If you head over to the MongoDB web site, then you’ll see that it gives you the following:

I’m not going to go too much into everything that you can find at the links provided above, but in this series I’ll try and explain some of the things the way I understand them.  The idea being to use this as a scratch pad for myself, while maybe even enabling someone out there to start using this great platform.

How do I get up and running quickly

This is the simplest thing you can think of.  If you follow the steps on their site as follows you should have a MongoDB instance running in next to no time. Windows Installation Unix Installation OS X Installation Once you’ve followed the steps in the links above you should be able to start working.  If you’re not quite familiar with how the Mongo syntax work or would like some kind of quick tutorial, then you can go to their online tutorial by going to their home page and click on “Try it out” which will open up an online MongoDB Console for you.  Once that has opened you simply follow the on-screen prompts and this should give you a nice primer for the MongoDB notation.

Production Deployments

There are a number of current production deployments of MongoDB which can be found here.  If you’re looking for specific use cases and scenarios where MongoDB could work for you, then you can have a look here.  Personally I like playing with a technology to the point where I understand it quite well and where I can then fit it to use cases of my own as they come up.

Conclusion

MongoDB is an awesome database platform to work with in all kinds of scenarios.  It’s extremely powerful and the fact that the guys over at Mongo had scalability, failover and so much more in mind with the platform from day one as well as the new replica set and sharding features of their 1.6.x versions makes this an even bigger win for any company to use.  The only thing that remains is to really take a deep dive into the intricacies of the technology to see and understand the use cases for your specific scenarios.

Personally, I’m quite sold on the concept and in will be exploring the platform more in upcoming articles under the MongDB menu on this site.

Related Articles

  1. No comments yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 26 other followers

%d bloggers like this: