What is Mongo DB and Why You'll Use It

If I say easily Mongo DB is a Document Oriendted Database, but MySQL is RDBMS or Relational Database Management System.

In MySQL data store in some columns and rows. But in Mongo DB store data like as JSON-like documents.

We can imagine a MySQL table like as-
First_Name -------- Last_Name -------- Salary
Bill -------------------- Gates --------------- 200
Larry ----------------- Page ---------------- 350
Amir ------------------ Khan --------------- 150

Now if we see the table in Mongo DB, then it will look like as JSON file-

{
'_id' : Objectid('2ilo13d2525'),
'First_Name' : 'Bill',
'Last_Name' : 'Gates',
'Salary' : '200'
},
{
'_id' : Objectid('2imo13d2501'),
'First_Name' : 'Larry',
'Last_Name' : 'Page',
'Salary' : '350'
},
{
'_id' : Objectid('2iKo13d2585'),
'First_Name' : 'Amir',
'Last_Name' : 'Khan',
'Salary' : '150'
}
.
Now what is the opportunity of Mongo DB, why I'll leave MySQL:
=======================================================
>> It's so fast than RDBMS like as MySQL

>> It has a great feature Horizontal Scalability, which have no in MySQL

>> MySQL is not able to store Large Scale Data, but Mongo DB is for store Large Scale Data.

>> If you're a developer and if you need to develop a modern application with Big Data, then MySQL isn't good for you, you need to choice MongoDB.

>> If you use MySQL in server and if you get million million requests, then your server will crash. Because, MySQL can't process huge request.

>> Mongo DB can work in multiple server.

>> In one word we can say that Mongo DB can work with massive data. It's created for it.

You can think about Google Map. There has a lot of data in Google Map and they process billion billion data in every minute.

>> There has features field, range queries ও REGEX in Mongo DB.

>> In Mongo DB has master-slave replication feature.

>>  Automatic Load Balancing is another features, that's why it can process billion billion data.

>> You can use Javascript when you are querying data access.

>> In Mongo DB has  Longitude and Latitude support. It is a special support for Geospatial Indexes and Queries.

>> Mongo DB is Schema-less. In MySQL there is really isn't much flexibility in how you structure your data if you follow normalization standards. Mongo DB is flexible for the data structure.

>> Mongo DB supports most of the OS like as: Windows, Linux, Mac OSX, Sun Solaris etc.

>> Mongo DB supports PHP, Java, JavaScript, Python, Ruby, C# etc.

Now I'll start to use Mongo DB by leaving MySQL?
=============================================
Nope. Why not? Before you need to some drawback in Mongo DB.

>> JOIN operation is a great feature in MySQL. By using it, we can query in multiple table. In Mongo DB has no JOIN operation.

>> Complex Transaction is another great feature of MySQL/RDBMS. It's absent in Mongo DB. Like as: if you develop travel & a tourism booking application, then you need Complex Transaction & Join. For this reason MySQL if flexible than Mongo DB.

Now who is the best? Answer- nobody. You'll choice as your needed. If you need Complex Transaction & Join, then you'll choice MySQL. If you need to process big data, you'll choice Mongo DB.

It's something like as chopper and knife. You'll use the chopper for shearing coconut and you'll use the knife for the butter.

Some best tutorial for learning Mongo DB:
====================================

A free short course on Mongo DB by edX:
====================================
Introduction to MongoDB using the MEAN Stack – > https://goo.gl/nyTUAD
You'll learn from the course MongoDB, ExpressJS, AngularJS, and Node.js.

Some good books on Mongo DB:
=============================
1) MEAN Web Development by Amos Q. Haviv
2) Web Development with MongoDB and NodeJS by Mithun Satheesh
3) Mongo DB: The Definitive Guide by Kristina Chodorow
4) Mongo DB Data Modeling by Wilson da Rocha Franca
5) Mongo DB BasicsNov by David Hows and Peter
6) Mongo DB for Java Developers by Francesco Marchioni
7) Node.js, MongoDB, and AngularJS Web Development by Brad Dayley
8) Mongo DB CookbookNov by Amol Nayak

Which company are using Mongo DB:
=================================
Facebook → Facebook adapted the storage engine API, extending MongoDB into new workloads and new capabilities.

The New York Times → A great newspaper in the world.

EA → Great game developer company.

CISCO → A world leader in Networking 

eBAY → Famous eCommerce website

These companies also use Mongo DB- MTV Networks, Adobe, Craiglist, Forbes, The Washington Post, Stripe, Hudl, Metlife

Last of all MongoDB is Scalable, Agile and Cloud Ready. It is awesome. If you want to be ready for the future, then learn Mongo DB.

Writer: Din Muhammad Sumon




একটি মন্তব্য পোস্ট করুন

নবীনতর পূর্বতন

যোগাযোগ ফর্ম