Introduction

MongoDB is a source-available cross-platform document-oriented database program. Classified as a No-SQL database program, MongoDB uses JSON-like documents with optional schemas. MongoDB is developed by MongoDB Inc. and licensed under the Server Side Public License (SSPL).

 

Main Features

  1. Ad-hoc queries

MongoDB supports field, range query, and regular-expression searches.

2.Indexing

Fields in a MongoDB document can be indexed with primary and secondary indices.

3.Replication

A master can perform Reads and Writes and a Slave copies data from the master and can only be used for reads or back up.

4.Load Balancing

MongoDB can run over multiple servers, balancing the load or duplicating data to keep the system up and running in case of hardware failure.                                                                                                                5.File Storage                                                                                                      MongoDB can be used as a file system, called GridFS, with load balancing and data replication features over multiple machines for storing files. GridFS divides a file into parts, or chunks, and stores each of those chunks as a separate document.

6.Aggregation

MongoDB provides three ways to perform aggregation: the aggregation pipeline, the map-reduce function, and single-purpose aggregation methods.Aggregation Pipeline provides better performance for most aggregation operations.Map-reduce can be used for batch processing of data and aggregation operations.

7.Server-side_JavaScript_execution

JavaScript can be used in queries, aggregation functions (such as MapReduce), and sent directly to the database to be executed.                                                                                                           8.Capped_collections    This type of collection maintains insertion order and, once the specified size has been reached, behaves like a circular queue.

9.Transactions.

Purpose of building MongoDB

  1. Scalability
  2. Performance
  3. High Availability
  4. Scaling from single server deployments to large, complex multi-site architectures.
  5. Key points of MongoDB
  6. Develop Faster
  7. Deploy Easier
  8. Scale Bigger

 

MongoDB Advantages

  1. MongoDB is schema less. It is a document database in which one collection holds different documents.
  2. There may be difference between number of fields, content and size of the document from one to other.
  3. Structure of a single object is clear in MongoDB.
  4. There are no complex joins in MongoDB.
  5. MongoDB provides the facility of deep query because it supports a powerful dynamic query on documents.
  6. It is very easy to scale.
  7. It uses internal memory for storing working sets and this is the reason of its fast access.

Where MongoDB should be used

  1. Big and complex data
  2. Mobile and social infrastructure
  3. Content management and delivery
  4. User data management
  5. Data hub