Habilelabs-Logo
Blog

Why choose MongoDB over other Databases?

September 21st, 2017 . 9 minutes read
Blog featured image

MongoDB database is one of the fastest-growing databases. It is an open-source, document-based, and leading NoSQL database with the scalability and flexibility that you want with the querying and indexing that you need.

In this article, I will discuss, why you should prefer MongoDB over other databases?

I will cover these 7 points in this article.

1. Growth of MongoDB
2. Flexible Data Model
3. MongoDB features
4. Rich set drivers and connectivity
5. Availability & Uptime
6. Elastic Scalability
7. Security

1. Growth of MongoDB:

MongoDB is one of the fastest-growing and very popular databases. Let me cover this one by one-

Fastest-Growing Database

MongoDB is growing faster in comparison to other databases on all the platforms like Google, Facebook, Twitter, and LinkedIn.

Fastest growing database

Popularity of MongoDB

MongoDB is the most popular database these days. It is fastly ranked among other databases.

Most popular database

As this is a fast-growing database it is important for someone to use it now than later.

2. Flexible Data Model:

MongoDB is having a flexible schema model. MongoDB internally does not have any schema. So, it’s very easy for a developer to change data model in the application at any time. It is especially helpful when we work in agile environment.

Developer Costs on the Rise

Flexible database

The above graph shows the comparison between 1985 to 2013. Developers cost is increasing and storage cost in coming down big time. Development using mongodb is faster than compared to any other database. Mongodb takes a little more storage than other databases.

Optimizing for Engineering Productivity

Optimizing Productivity

Again this image shows the cost breakdown between engineering cost vs Infrastructure cost. As we see the trend of companies spending lessor ratio on engineers in 2013. So it is important to spend less on development rather than focusing on core business.

Document Model with Flexible Schema

Let me show you an example of how to store data of cars and the person associated with them. In RDBMS, we need two tables in this. And the CAR table will need a foreign key to the PERSON table. This makes it lengthy for a developer to store data and query relevant information later on. See the data model below.

RDBMS

On the other hand this is how we can store this information in Mongodb

Documents are Rich Data Structures

MongoDB supports every datatype, whether it is a String, Numbers, Booleans, Array, Objects, or Geolocation.

Rich Data Structure

Development – The Past vs WIth MongoDB

Development with MongoDB

As you see in the images. The development cycle has improved a lot using MongoDB. We are able to cut down several steps.

3. MongoDB Features:

MongoDB is feature-rich compared to other NoSQL as well as MySQL databases. It has features like Auto sharding and the queries which are really complex in RDBMS can be very easy in MongoDB. See the comparison table below-

Features of MongoDB


Features compare of My SQL and MongoDB

features

Dynamic Lookup

dynamic look


Query combine data from multiple collections with left outer joins for richer analytics & more flexibility in data modeling.

Model of the Aggregation Framework

aggregation Framework

Richer In-Database Analytics & Search

New Aggregation operators extend options for performing analytics with lower developer complexity.

Richer database

4. Rich set drivers and connectivity

Mongodb has a rich set of drivers, that makes it easy to use mongodb with any framework.

Drivers & Frameworks

MongoDB has drivers for every language. We have official drivers for Java, Ruby, Python, Perl, .Net, Php, C++, C, Scala, and Node,js.

In Popular frameworks like MEAN stack M stands for MongoDB. It also supports Hibernate ORM.

drivers and framework of MongoDB

MongoDB Connector for BI

It provides connectors for Many BI platforms.

BI Platforms

Visualize and explore multi-structured data using SQL-based BI platforms.

5. High Availability & Uptime

Mongodb ensures 99.99% Uptime. To ensure this we can create Replica sets and shards.

Replica Sets

Replication

1. Replica set – 2 to 50 copies
2. Makes up a self-healing ‘shard’
3. Data center aware
4. Addresses:
– High availability
– Data durability, consistency
– Maintenance (e.g., HW swaps)
– Disaster Recovery

In the next images, it is showing the replica sets work in Mongodb.

Replica Set – Initialize

Replica set initialization

Replica Set – Failure

Replica set failure

Replica Set – Failover

Replica set failover

Replica Set – Recovery

Replica Set – Recovered

Replica set recovered

6. Elastic Scalability

Elastic Scalability with Automatic Sharding

Elastic Sacalibilty

1. Increase or decrease capacity as you go
2. Automatic load balancing
3. Three types of sharding
– Hash-based
– Range-based
– Tag-aware

Query Routing

1. Multiple query optimization models.
2. Each of the sharding options are appropriate for different apps/use cases.

Query Routing

Designed for Performance

Mongodb is designed for giving a fast performance. It is cool features like better data locality, in-memory caching anf in-place updates.

Design for performance

Performance at Scale

Performance comparison in marketting, government and investment backs.

Performance at scale

7. Security

Mongodb is very secure database, it has enterprise grade security. It support lot of protocals for authorizations.

Enterprise-Grade Security

Grade security

Habilelabs is the official MongoDB partner, Contact Us for project related queries. Download this content in PDF format at SlideShare.

For any questions or suggestions drop me a line in the comment section.
I hope you found this article helpful, share it on social media.

Checkout the presenations at SlideShare Here:

Author: morwal89
Share: