TrustRadius: an HG Insights company

MongoDB Reviews & Insights

Score8.5 out of 10

437 Reviews and Ratings

Community insights

TrustRadius Insights for MongoDB are summaries of user sentiment data from TrustRadius reviews and, when necessary, third party data sources.

Business Problems Solved

MongoDB has emerged as a popular choice for developers and organizations seeking a fast and efficient NoSQL data layer for their web applications. Its flexibility and iterative development capabilities have made it invaluable in various use cases. For example, MongoDB is being utilized by engineering departments to power SaaS platforms, allowing clients to create and configure assets for account-based marketing efforts. The document store of MongoDB proves ideal for handling complex configurations with nested structures. Additionally, the native JSON support is convenient and valuable when working with data needed in web browsers. MongoDB's aggregation framework enables the generation of complex reports and dashboard reports, which are immensely beneficial for businesses. The replication feature of MongoDB seamlessly allows applications to scale and support numerous clients, further enhancing its utility.

Furthermore, MongoDB has proven its worth as a temporary mid-size storage database for processing massive amounts of data per day and extracting notable events and records for further analysis. It facilitates quick application development in the cloud, enabling free usage and evaluation of system loads. Additionally, MongoDB serves as an internal database type in REST APIs for high-load applications. Compared to traditional SQL systems, MongoDB stands out due to its scalability and superior performance in terms of reads and writes. Its simplicity and clarity make it a preferred choice when dealing with large amounts of data. Furthermore, MongoDB is extensively used as the main storage technology for web development projects employing the MEAN Stack. Its scalability and unstructured document storage are particularly valued from a business perspective.

Moreover, MongoDB's non-relational nature simplifies database modeling and optimizes performance when working with JavaScript or JSON objects. It has been recognized for optimizing delivery time, making projects more feasible within specified timelines. MongoDB is widely employed as the main persistent datastore for SaaS offerings, providing robust and scalable solutions. It finds immense utility in large-scale, high-transaction environments as well by storing analytics information from social networking sites or serving as the primary datastore for Intranets. Additionally, MongoDB handles data with hundreds of variances effectively, which can be challenging to manage in a relational database. Its lightweight alternative for front-end-heavy projects and document-based data storage makes it a compelling choice over traditional RDBMS solutions. Consequently, MongoDB proves useful for managing a large amount of information, making it a preferred choice for banks and large institutions.

Moreover, MongoDB's application extends to various domains such as train yard management applications, where it enables easy management of JSON structures within a database. Gradually, MongoDB is being adopted by different teams and products after resolving scaling and sharding issues. It is highly regarded by software development teams for its efficiency, easy learning curve, and efficient query languages. MongoDB bridges the gap between data analysis and developers by facilitating the structuring of databases and primary querying. Consequently, organizations across industries utilize MongoDB for developing internal applications as well as apps for other companies.

MongoDB's robustness and scalability make it suitable for handling millions of unstructured records, such as defect management in software projects. It excels at building multiple dashboards and metrics from data using simple find queries, aggregation, and MapReduce operations. MongoDB also serves as a reliable storage solution for handling intense database use cases, storing critical customer information, rules, configuration data, and content for alert notifications and statements.

The horizontal scale-out capabilities of MongoDB coupled with its ability to work with complex structures of information make it a chosen technology for many applications. Its ease of use during the initial stages of a project and its ability to handle data increase quickly are additional reasons why programmers favor MongoDB. It is commonly used as a store of user accounts and app settings for mobile apps implemented in JavaScript and Node.js.

Furthermore, MongoDB helps improve response times by scaling systems horizontally and distributing the load effectively. It supports agile methodology software development life cycles with its dynamic schemas, which facilitate iterative development and rapid prototyping. Developers appreciate MongoDB as an efficient NoSQL database that offers scalability coupled with good support and helpful documentation.

Additionally, MongoDB solves performance problems in APIs by providing an easy-to-scale solution while enabling developers to work in an agile manner and improve response time. Its ability to store non-relational data like user profiles and application logs makes it a popular choice among developers who need to work with diverse datasets. Moreover, MongoDB enables fast prototyping of new APIs by saving time wasted on data conversion.

MongoDB's versatility extends to various programming languages and operating systems without posing any challenges. It has gained significant traction in the academic community, with students utilizing MongoDB extensively in software engineering projects. It serves as a valuable tool in testing environments, helping students understand popular NoSQL databases and preparing them for development positions.

Furthermore, MongoDB is the preferred choice for managing transactional databases in gaming, offering features like replica sets, sharding, and clusters. Its flexibility and quick prototyping capabilities make it the main database for SaaS products, allowing for the easy exploration of new product ideas.

In a web application context, MongoDB acts as a comprehensive storage solution, hosting all necessary data including user details, application configuration, and user-managed data. It serves as an internal database type for organizations, handling millions of records across multiple departments.

MongoDB's capabilities extend beyond traditional web applications. It plays a crucial role in messaging systems, allowing for fast subscriber finding and efficient message sending. Its ability to model non-relational data when defined schemas do not suit the dataset makes it extensively used in various business-facing applications built with different front-end technologies.

Additionally, MongoDB powers web platforms, internal tools, and other applications as a primarily NoSQL database solution. It is leveraged by multiple departments within companies to store and process large volumes of records. MongoDB's versatility also shines in managing complex portals that showcase student assessments and support B2B reporting.

Moreover, MongoDB serves as a reliable datastore for extensive big data associated with users in an application. Compared to SQL Server, MongoDB provides a better platform for big data storage and analysis. Its capabilities are harnessed by storing and retrieving data for complex portals, enabling effective B2B reporting.

In conclusion, MongoDB has proven its worth across a wide range of use cases. From empowering SaaS platforms and handling complex configurations to supporting dashboard reports and scaling applications to serve numerous clients, MongoDB offers flexibility and efficiency in managing data. Its performance advantages over traditional SQL systems, scalability features, compatibility with JavaScript and JSON objects, ease of use for developers, and extensive documentation contribute to its widespread adoption across industries. Whether it's powering web development projects or managing transactional databases for gaming, MongoDB continues to be an instrumental tool in modern software development and data management.

MongoDB Reviews

20 Reviews
Engineering

MongoDB - A Stellar NoSQL Database

Rating: 10 out of 10
Incentivized

Use Cases and Deployment Scope

In my organization, we use MongoDB as a temporary mid-size storage database. We have very large databases and process a massive amount of data per day. Throughout the day we identify notable events and records and need to extract them for continued analysis. This is where our MongoDB environment comes into play. We roll all of these detected records into MongoDB for further use.

Pros

  • Very simple with easy to learn and understand syntax.
  • Offers great flexibility as their is no predetermined schema.
  • Scalable - handles all our our data very effectively even as we scale up.

Cons

  • Data duplication can be a problem - have to make a concerted effort to avoid this.
  • Memory usage can be an issue depending on infrastructure.
  • Certain commands that may work well in something like MySQL may not in MongoDB, such as join commands.

Likelihood to Recommend

If asked by a colleague I would highly recommend MongoDB. MongoDB provides incredible flexibility and is quick and easy to set up. It also provides extensive documentation which is very useful for someone new to the tool. Though I've used it for years and still referenced the docs often. From my experience and the use cases I've worked on, I'd suggest using it anywhere that needs a fast, efficient storage space for non-relational data. If a relational database is needed then another tool would be more apt.

MongoDB: King of NoSQL

Rating: 10 out of 10
Incentivized

Use Cases and Deployment Scope

So this the non-relational Database that we have internally. The reason for using this is because of the amazing scalability that this database provides and the JSON file format in which it tends to store the data that is present within it. Its opensource and that is the reason we have been using it internally to store the git hashes of the manifest since there are millions of them getting generated every month and we need a method to scale to that extent.

Pros

  • NoSQL
  • Scalability
  • Readable queries
  • Opensource

Cons

  • None so far, but security issues have occurred

Likelihood to Recommend

So if you need a highly available database, which you can rely on since it has inbuilt replication and JSON format message, then MongoDB is the best way to go for it. It follows BASE if the databases are inconsistent if you are scaling over a large system. What it means is that it is not suitable for storing passwords. For that, make sure that you use ACID databases which are relational.
Vetted Review
MongoDB
1 year of experience

MongoDB by a front-end guy

Rating: 10 out of 10
Incentivized

Use Cases and Deployment Scope

MongoDB serves as a local dev database and as a production database for some of our microservice solutions. We use it for front-end-heavy projects and storing document based data, where original RDBMS solution would be overkill.

Pros

  • Document-based information storing and retrieving.
  • Indexing and querying small documents from a big heap of files.
  • Integrating with JS-based backend.

Cons

  • By design, joined collections tend to be much slower than in relational DB.
  • Some kind of relational model support.

Likelihood to Recommend

MongoDB is an excellent tool to start development fast on a smaller POC, or, to serve as a backend for storing raw json-based data as well. It can be used for emulating a relational database but its core strength is storing the redundant, non-BCNF data, and querying it. So if we have any of those, MongoDB can serve as the DB with a really fast initialization in the development process - but just as well as in production.

MongoDB, a flexible/reliable DB that will draw you to the NoSQL world.

Rating: 9 out of 10
Incentivized

Use Cases and Deployment Scope

We use MongoDB at the heart of our application where speed and consistency are critical. It's used primarily by the engineering backend team and vicariously by other teams using parts of the product. It gives us the means to quickly iterate our data models with fewer painful migrations than we'd have with a traditional RDBMS and its JSON-like BSON object modeling maps nicely to our APIs.

Pros

  • The BSON-based document storage models allow for sophisticated data modeling.
  • Flexible MongoDB collection schemas allow for the storage of polymorphic records and easy migrations.
  • MongoDB has readily adopted popular database concepts like change streams and graph queries.

Cons

  • MongoDB will start to struggle with very large datasets even when well-indexed.
  • Complex aggregation queries can be tricky in MongoDB when compared with an SQL-based database.
  • Scaling a Mongo database can be expensive.

Likelihood to Recommend

Scenarios where MongoDB is well suited:
- When working with small/medium-sized dataset where speed and flexibility are priorities.
- When working with schema-less or polymorphic models that would be much harder to represent in a traditional RDBMS.
- More generally MongoDB makes sense as a place you'd store your business logic/frequently accessed data, not as storage for infrequently accessed long-term storage.

Scenarios where MongoDB is less appropriate:
- I wouldn't recommend using MongoDB as a caching service. It's more expensive than many databases that could be used where performance isn't a critical issue or long-term persistence is desired (e.g., compared with Datastore/Firestore/Dynamo/etc.), while it falls short of Redis when performance is critical or data need not be stored for long.

Moved to Mongo and never looked back!

Rating: 10 out of 10
Incentivized

Use Cases and Deployment Scope

At my previous company, we had a mix of SQL and NoSQL databases powering our web platform. When building my new company, we made the decision early to go with a primarily NoSQL database solution. MongoDB powers our web platform, internal tools, and anything else we create. Working with MongoDB is painless and our developers love it - particularly Javascript developers, of which we have many, as we use a lot of Node.js. MongoDB makes development easy and production reliable.

Pros

  • Ease of use and familiarity, particularly for Javascript developers
  • Community, support, and tooling are readily available
  • Design with NoSQL in mind and you'll wonder why you ever needed relational features
  • Great query language

Cons

  • Complex querying. Aggregation could be better explained and a bit clearer

Likelihood to Recommend

I think that MongoDB is the easiest and fastest database solution when starting any new project. Unless the project has a clear need for a relational setup from the beginning, it just feels a lot easier and faster to work with MongoDB. Scenarios where it's less appropriate would mostly be those that need the features of a relational (ex: SQL) database. Even then, we like to use MongoDB as a primary database and use SQL only for the aspects of the application that are better suited to it.
Vetted Review
MongoDB
6 years of experience

MongoDB: easy to use, easy to shot yourself in the foot

Rating: 6 out of 10
Incentivized

Use Cases and Deployment Scope

MongoDB was our main data store used primarily by a web application managing classical relational entities as well as some big data and analytics collection data. Even though no one on the team had much DB experience MongoDB was easy to use and integrate. However, we faced many pitfalls along the way and the end result was far from optimal.

Pros

  • Easy to set up locally and on different SAAS providers (Compose.io and then MongoDB atlas).
  • Being schema-less helped with having a rapid pace of development as there where many schema changes.
  • Full stack developers on a NodeJS server could get started very fast as the API was familiar and relatively simple.

Cons

  • Very hard to tell how to best structure your data and then effectively query it. Most of the time this led to just splitting everything into different collections and joining them on the application server or the client which was slow and hard to maintain.
  • Documentation is not friendly and confusing.
  • No real joins and complex querying is unclear.

Likelihood to Recommend

MongoDB would be ok if you're starting from scratch with a very small team and want to gradually build your product (specification is in flux) along with continually learning, optimizing and monitoring your database (something one should probably be doing anyway). It also might be good if your system has little need for consistency and you can afford nesting documents and data duplication. For any other use case, like a big team with defined complex specifications or a high need for consistency, you will probably end up with a mess.

MongoDB is best tool for NoSQL type based database

Rating: 9 out of 10
Incentivized

Use Cases and Deployment Scope

Mongo DB is an incredible storage software with a huge database designed for Powerful, easy and intuitive documents. We are using Mongo DB in our team for the Messaging system. Being the Messaging system, it has to find subscribers and send them messages fast. The best thing is to have software that allows you a better development in your area of work. Mongo DB offers the best tool to carry out all our goals.

Pros

  • As Mongo DB is free for commercial use, it helps in creating the startup from scratch and hit the ground running.
  • It makes messaging system management easy on cloud. Mongo DB helps to manage db on cloud.

Cons

  • Mongo DB should return valid error while using JSON schema. It is confusing if error is not shown properly.
  • Support for MongoDB should be improved.

Likelihood to Recommend

In case if you have less budget, go for this tool as it's free. Also, if you want to work with JSON Schema or file system, I will recommend this tool. In case budget is not concern, I will recommend SQL server or OracleDB.
Vetted Review
MongoDB
1 year of experience

MongoDB Review

Rating: 8 out of 10
Incentivized

Use Cases and Deployment Scope

MongoDB is a NoSQL backend storage database that we use extensively for modeling non-relational data. NoSQL databases tend to shine when defined schemas do not well suit a data set — perhaps the dataset is highly variable in the data that it holds from one entity to another, or perhaps the data's structure is simply not well understood. NoSQL and MongoDB are great for this situation.

Pros

  • Simplifies modeling complex, non-relational datasets.
  • Strong open source community.
  • Has solid libraries in a variety of implementation frameworks — e.g. Node JS and Mongoose.

Cons

  • Documentation is at times overly difficult to understand.
  • Versioning became confusing between major versions 3 and 4, with many still working on and implementing 4.
  • Lacks some of the nice-to-have features of more mature, generally relational databases like MySQL or PostgreSQL.

Likelihood to Recommend

Amongst situations where the data being modeled is not well structured, using a NoSQL database — and using MongoDB in particular — may be a great choice. While Mongo *does* let you get away with less structure, you must be aware that less structure is not always the correct development avenue to take. Not having to manage a database schema does not necessarily make your development speed any faster.
Vetted Review
MongoDB
5 years of experience

MongoDB - Best NoSQL Database to Store Unstructured Data

Rating: 10 out of 10
Incentivized

Use Cases and Deployment Scope

The Engineering team uses MongoDB as our NoSQL database technology. While we do use a relational database (MySQL) as the primary data warehouse solution, we use Mongo for specific data sources that are very unstructured. The effectiveness of Mongo on schema-less data makes it a great tool for us because accomplishing the same things we do in Mongo in MySQL would take longer and be far less performant.

Pros

  • Very easy to learn and use. Arguably a simpler query language than traditional SQL.
  • Large community and excellent documentation. This means many resources and support available.
  • Great for dealing with unstructured data. No need to spend time creating schemas (when unnecessary).
  • Cost efficient. Free for many types of use.

Cons

  • Less flexible than traditional SQL (i.e.: no joins). This means it's not suitable for certain data needs.
  • Can take up more space than typical relational DB, which can be problematic for very large data warehouses.
  • Not fully transactional (ACID compliant).

Likelihood to Recommend

If you need a database that can store and handle unstructured data very easily and that is performant, MongoDB is a great solution. It is very easy to set up and has a large community of users. Mongo can integrate with all of the major languages (ie: Java, Python, etc.). If you need to store very complex, structured data that needs to be related, a traditional relational DB might be a better option.

MongoDB: Easy and powerful

Rating: 8 out of 10
Incentivized

Use Cases and Deployment Scope

I have used MongoDB as the database of choice for a NoSQL implementation for various apps. Implantation with Node.JS and Express is very seamless and easy, particularly when using Mongoose. Dealing with a document based solution for a database makes it pretty easy to use in a full stack Javascript app without needing to flip mindsets.

Pros

  • Easy to run locally on a dev machine
  • Easy to integrate into a schema model via Mongoose
  • Document-based storage makes it easy to work within a full stack Javascript environment

Cons

  • Getting MongoDB installed locally can be a challenge
  • The CLI can be kind of confusing for beginners, but MongoDB Compass makes up for that

Likelihood to Recommend

It is very easy to get started using MongoDB, and getting a data schema created via Mongoose if using Node.JS is pretty simple as well. For small beginner projects, something like Firebase may be easier to get running and simpler to deal with for reads/writes, but for more advanced control and a more structured approach, MongoDB is a great solution.