Why use MongoDB … And why not!

MongoDB is the most representative of the databases known as NoSQL, an acronym for Not only SQL. We can also name it with the term documentary database since what we store are pure JSON documents and not records, as it happens in the tables of relational databases.

NoSQL databases come to occupy a specific parcel among current database solutions. They solve common needs, both web applications, mobile apps or the Internet of Things. But it cannot be said that they adapt to all kinds of projects . In general, we can find a NoSQL database useful when our needs are as follows, known as the “3Vs”.

Velocity

If an application needs to store or access a lot of information in a short time, a database that provides high speed is needed. Documentary databases are capable of being much faster than relational databases, being able to serve clients who need to perform many operations per second.

Volume

Regarding the size of the database, if we have a huge or enormous amount of information, then we have significant volume needs. Relational databases tend to run slower when very large numbers of records (in the order of a million and up) are found in a table. Situations like this force administrators to search for solutions, such as dividing the tables into different segments, producing a cost in data access and operations. This is not a problem in NoSQL databases, which are capable of managing gigantic volumes of data in their entities.

Variability

The huge needs for speed and volume often come together and affect many applications today. However, there is another characteristic of the information that is even more representative to opt for NoSQL, such as variability. In relational databases the information scheme is carefully defined beforehand. For example, you can’t make up fields in records on the fly. In documentary databases, such as MongoDB, there is no problem in that each document stores different fields, being able to be flexible regarding the information scheme.

In any of these situations, databases can provide an ideal solution for projects. However, it should always be remembered that silver bullets do not exist and relational databases are still very important for most applications. Above all, because the advantages of NoSQL are detrimental to certain basic operations on the data.

For example, the need for joins (accessing information from several tables at the same time, relating data between some tables and others) are the daily routine of any traditional database engine, but this is not a normal functionality in NoSQL. This is changing as the new MongoDB version 3.2 has started to implement joins functionalities in certain operations. This is interesting, because more and more NoSQL databases will be able to enter areas where relational databases are more indicated, and vice versa.

What is not currently available in NoSQL are the mechanisms to make transactions between various documents. Due to this, they may not be the most suitable option for certain business operations, since the mechanisms for storing the information will have to be studied in-depth and may not be worth the effort.

MongoDB Installation on a Cloud Server

We can install MongoDB from the Arsys Cloud Servers Application Catalog . Or directly use the Cloudbuilder Next Control Panel and in Infrastructure> Server> Create select MongoDB in Images> Applications and the application will be installed on a Cloud Server with a recommended base configuration and CentOS 7 operating system.

Leave a Reply

Your email address will not be published. Required fields are marked *