Tuesday, May 31, 2016

Why am I betting on MongoDB

I have started my journey of getting back into IT so am attending my first meetup of the three I am attending this week.  .  Its going to be a MongoDB meetup. I originally installed MongoDb a few years ago like I also installed MySQL before Oracle bought it. I was more impressed with MySQL at that time.

My key strength has alway been managing data.  So in the process of getting back, I wanted to do some MySql courses but the MongoDB courses at the Mongo University was free. So I went all in on MongoDB and successfully completed three 7 week courses which was a real struggle at the beginning.

So you can say that I am already invested in MongoDB but the reality is that I have always seemed to lucky in finding the relevant technology for me. The course at Mongo University was a great learning experience. Especially when I realised that this is the type of database and distributed systems that I needed when I first proposed to create artificual intelligence program for my final project at Uni.

I would not recommend MongoDB for storing and recording financial transactions but for me its very relevent for storinging information going forward. I think the actual competitor is Firebase

To me the main streingth of MongoDB is the dynamic schema and the way its stores data in JSON. Its more how we think and work. Information is key and use cases are changing rapidly. The ability for a data collection to change rapidly with the use cases has to be a significant advantage going forward. JSON is also key strength as I have never been able to get my head around XML but found JSON natural.

In 2000 I was trying to make Microsoft SQL Server Replication work. I ended up working a lot of late nights manually fixing the replication errors. The replication in Mongodb is built in and part of its core function. Another major positive for me is when there is a failure you have another working server, which is much more beneficial then restoring from backups

What amazes me the most though is the sharding over many different servers and ability to add servers when hitting thoroughput limits. This functionality is just perfect timing with the provisioning services from AWS and Google Cloud which makes adding a server so easy. It took me days to get my head around the concept of working using SSH/SCP with Google Cloud but once learnt that, I was able to use same concepts with AWS servers.

Anyway hopefully writing this article has given me enough clarity to be able to talk about MongoDb with some confidence. I am also now more confident in my choice.

Forgot to add one extra benefit is that its fun and intiuative working with MongoDB because the data feels natural and query also the same.


Post a Comment

<< Home