MongoDB


MongoDB is an open-source NoSQL database (implemented on multiple computing platforms) that can store, retrieve and manage document-oriented information. In order to adapt JSON documents, MongoDB is evading the relational database table-based structures.

MongoDB is created on an architecture of documents and collections, instead of using rows and tables as in a relational database. Also, MongoDB was written in C++, C and JavaScript by MongoDB Inc., published under dual license: GNU Affero General Public License and the Apache License.

Advantages

  • Schema less: MongoDB is a document-based database, in which one collection holds different documents
  • It has no complex joins
  • The database is easy to scale in size
  • MongoDB enables horizontal scalability, by using a technique called sharding. Sharding distributes the data across physical partitions to overcome the hardware limitations
  • It provides ACID properties at the document level, as in the case of relational databases
  • It supports replica sets; meaning that a failover mechanism is automatically handled. If the primary server goes down, the secondary server becomes automatically the primary server, without any human intervention
  • It supports the common authentication mechanisms, such as: LDAP, AD and certificates. Users can connect to the database over SSL and the data can be encrypted
  • MongoDB can be a cost effective solution, in regards to hardware and storage

Disadvantages 

  • MongoDB has no Joins
  • It has memory usage problems
  • The database has currency issues
  • It doesn't have transactions

Components

  • Core Processes
  • Windows Services
  • Binary Import and Export Tools
  • Data Import and Export Tools
  • Diagnostic Tools
  • GridFS
  • Operators
  • Connection String URI Format

Development tools 

  • MongoVue
  • MongoHub
  • RockMongo
  • RoboMongo

Versions

  • Mongo 1.x
  • Mongo 2.x
  • Mongo 3.0
  • Mongo 3.2

 


Have a project in mind?

Get in touch with us for your MongoDB development needs!