What Is MongoDB? its advantages and disadvantages

What is MongoDB?
MongoDB is a document-oriented NoSQL database used for high volume data storage. MongoDB is a database which came into light around the mid-2000s. It falls under the category of a NoSQL database.
  • Document-oriented NoSQL database
  • That means its not relational database this is a non-relational database
  • SQL:: MySql & PostgreSQL has a relational  database like table rows and column related to each other 
  • NOSQL: Collection or the Data are not related to each other.
  • Schema-free based on binary JSON BJSON
  • MongoDB is schema-free database and it's based on binary JSON format and special format is BSON B for BInary and SON for JSON
  • MongoDB is a document database that stores JSON objects.
  • MongoDB is an open source database management system (DBMS) that uses a  document-oriented database model which supports various forms of data.
  • https://www.quora.com/What-is-MongoDB-1


What are the disadvantages of MongoDB?

  • MongoDB is not relational so you lose all the capabilities of relational databases
  • No joins. You design as if they were never an option.
  • It scales well in a narrow range but other NoSQL solutions are better at scaling. Sharding is annoying, complex and seems like it was bolted on.
  • It uses eventual consistency, which is good and bad.
  • No transactions except at the record level. If you want a transaction you have to fit the whole transaction into a single record.
  • Hard to secure properly without going with an Enterprise license.
  • Data consumption is generally high due to denormalization


What are the Advantages of MongoDB?

  • Relatively low-friction. It's easy to get installed and it has no formal schema. So you can just drop in JSON objects now and easily pull them out later. Drivers for every major language, you can really be up and running in minutes.
  • The Replication is relatively easy to set up and more or less supported in the drivers. So fail-overs can often happen transparently.
  • The Sharding works without needing to write any special programs. Of course, it still needs you to be smart about some things or it will fall over.
  • Schema-less: MongoDB is a document database in which one collection holds different documents. A number of fields, content, and size of the document can differ from one document to another.
  • Structure of a single object is clear
  • No complex joins
  • Deep query-ability. MongoDB supports dynamic queries on documents using a document-based query language that's nearly as powerful as SQL
  • Tuning
  • Ease of scale-out: MongoDB is easy to scale
  • Conversion/mapping of application objects to database objects not needed
  • Faster read and write performance on commodity hardware as compared to MySQL (InnoDB and MyISAM).
  • Uses internal memory for storing the (windowed) working set, enabling faster access to data.

0 Comments