MongoDB vs RDBMS : Part 2

Created On : Apr-14-2016 Author Author : Kundan Singh
In part 1(http://www.gunaatita.com/Blog/MongoDB-vs-RDBMS-Part-1/1077) we discussed feature by comparison of MongoDB and MySQL.

In this part we will discuss the reason behind MongoDB rise:
1) Reduced design time: With rise of Agile methodology, the time allotted for software architecture has taken most severe hit. MongoDB allows to think about business logic with worrying about structure of business objects.
Note this does not obviate the need of software design, this merely pushes data structure decision to implementation phase from design phase.

2) Schema flexibility: Small changes like coulmn/field type or adding/removing a column/field is easy to do in MongoDB. The coders have to only about software/ORM layer instead of DB layer for these kind of changes.
There is no foreign key or constraint to worry about because it does not exist in NOSQL.
RDBMS fan can say it is like to remove break from car to gain speed.

3) ACID fatigue: You don't have to worry about ACID (Atomicity, Consistency, Isolation, Durability) properties in MongoDB. MongoDB provide only one option. If you need these things in your software, handle these in software layer.

4) Freedom from DBA: there are no database administrator required to authorize schema change. If you have access from code, you can do whatever you want including dropping the db, table, deleting all records.

5) Scalibility: Horizontal/vertical scaling can be easily done in MongoDB. If your entire DB size is less than 32 GB, and you have less than 1000 writes/second, A simple mongo cluster with 1 primary and 2 secondary will suffice.

6) Low learning curve: There is no dificult mathematical SQL concept to learn before using MongoDB. Although ignorance of these concept will bite you very hard once you reach a certain threshold of table size, but this is true in any aspect of software developement.
MongoDB has democratize DB in similar way as PHP as democratize web developement.
    
I think both RDBMS and NoSQL will coexist and grow in future as both have their application. I think future belongs to those DB which will be schema less but ACID compliant and have table join capability( This does not exist in present ).
comments powered by Disqus