Understanding the key MongoDB pros and cons



If you’re looking for a database program, you’ll doubtless come across an option called MongoDB.

MongoDB is an increasingly popular document database. It’s a NoSQL (not-only SQL) database program that stores partially structured data in documents.

What makes it a popular option? What are the downsides? Here, we objectively outline the core MongoDB pros and cons.


💡 A document database, aka. document-oriented database or document store, is a computer program designed to store, manage, and retrieve document-oriented information. This means the database can work with semi-structured data in documents, rather than being confined to strict information tables.


Pros

Let’s start with the positives in our MongoDB pros and cons list.

       It offers high speed/performance

Due to its document-oriented nature, MongoDB can offer a higher speed than a traditional relational database.

MongoDB makes liberal use of cache and RAM. This allows for faster retrieval — and is one of the reasons for the increased speed and performance of the program. It does mean, however, that you need a system with decent RAM.

       Support ad-hoc queries

MongoDB supports ad-hoc queries and has worked to optimise the way this type of query is handled. It allows for real-time ad-hoc query updates, for instance.

💡 Ad-hoc queries are non-standard queries — queries that are created to obtain information as the need arises. This is in contrast to standard, routine queries.

       It’s flexible

As your business — and the data you collect and maintain — changes, having a flexible database system is useful.

Because MongoDB is a NoSQL database system, it’s suitable for both structured and unstructured data. It’s also schema-less, meaning that you can store any data type you want to — you aren’t restricted by a schema.

       You get sharding

When it comes to large datasets, there is a concern that the server will struggle. MongoDB pros and cons address this with the benefit of sharding. Sharding allows the data to be divided and distributed to multiple servers for processing — without disrupting the activity.

       You have access to technical support

MongoDB Inc offers professional support. So, if you run into an issue, there’s an expert in the program ready for you to reach out to.

       It integrates with ThinkAutomation

As a personal pro from us, ThinkAutomation integrates with MongoDB and supports Mongo message stores. This means that MongoDB users can easily set up and apply the benefits of automation to their datasets.


Cons

On the other side of our MongoDB pros and cons list are the negatives. MongoDB might not be the best fit for every organisation or project for a few reasons.

       Joins are awkward

Unlike a relational database, MongoDB doesn’t support joins. That is, joining your stored documents is a tricky task. It’s not impossible — you can manually code it — but it is time-consuming and could affect performance.

       High reliance on good indexes

If your indexing is incorrectly implemented or has any discrepancies or other errors, it negatively impacts the speed and performance of MongoDB. This means that you will need to spend time fixing and analysing the indexes you use.

💡 Indexes are the references to your documents. They’re the data structure that a database uses to locate records more quickly.

       Duplicate data is a common problem

Common feedback about MongoDB is that duplicate data can prove an issue. That is, you end up with it and it can make it hard to manage your data efficiently.

N.B: ThinkAutomation could help with this by parsing for, then removing or flagging duplicate data as it is found.

       High memory usage

Along with the memory inefficiency of duplicate data, and the limited ability to implement joins, MongoDB tends to demand high memory usage. An increasing amount of which could be considered unnecessary.

This requires extra attention to keep under control, making it another of the negatives on our list of MongoDB pros and cons.

       Limited data size and limited nesting

The final con on our list of MongoDB pros and cons is the limitations of document sizes and document nesting. MongoDB limits document size to no more than 16MB. Additionally, you can’t nest your documents more than 100 levels. (True at the time of writing – check with the vendor for any updates.)


MongoDB pros and cons

Every software product out there has its pros and cons. Having a good idea of what they are can help you to make the right decision for your needs.

Whether you opt for MongoDB for your database needs or not, you can still benefit from using automation to streamline your data handling. To explore ThinkAutomation’s database skills further, click here.


Useful links

ELI5: the relational vs non-relational database

What is a server? An overview in 500 words or less

Ten benefits of automation


Download