Unclaimed: Are you working at MongoDB?
MongoDB Reviews: 4.5/5 — Highly Rated
MongoDB is a NoSQL database that supports scalable, and high-performance data storage solutions. The platform’s automatic sharing features combined with real-time analytics and horizontal scalability empower businesses with efficient data management.
| Capabilities |
API
CLI
OSS
|
|---|---|
| Segment |
Small Business
Mid Market
Enterprise
|
| Deployment | Cloud / SaaS / Web-Based, Desktop Mac, On-Premise Linux, On-Premise Windows |
| Training | Documentation |
| Languages | English |
Compare MongoDB with other popular tools in the same category.
Well i like the fact that is schema less , the structure of a single object is clear we do not have complex joins. Deep query-ability., and it is something that is in trending
Well first thing i am so use to tradiciont TSQL so i am still getting used to it, sata size in MongoDB is typically higher, less flexibity with querying (e.g. no JOINs), no support for transactions(or maybe i do not know how to do them ).
Running regressions and store the result
Flexibility and scalability...Clearly the perfect DB platform for agile, fast speed to market development while dealing with scale based on commodity, redundant hardware is fantastic!
A bit too open and immature (as compared to the RDBMS vendors) at times. If your developers are adult-like, Mongo is an awesome tool to support Agile/iterative development. If you struggle with rigors in the app-tier on data model consistency and enforcement, mongo won't help you much (until latest version).
Internet of things data collection and big data scalability
Simple to qery and its performance is the best
not listed in linux repositoy, like debian or ubuntu repositry or rhel or centos repository
for sms gateway and system log. its so lighty.
It's very easy to start with. The console commands are javascript based and a library for every major language officially supported. Great documentation for starters. Secondary indexes are very useful for query optimization. The self balancing and sharding out of the box is great for people wanting to write a scalable application based on a datastore without needing to know a lot about database scaling.
On a write heavy load, mongo does not perform that well. Or well at all. The self balancing sharding kind of breaks down. Mongo keeps on trying to auto balance in the back ground but fails because of heavy write load. Also the default _id field is used extensively for sharding internally so overriding that field causes all sort of scaling issues.
I have used mongo as a data warehouse and as a event storage system. One is a read heavy usage, other one is write heavy. The big pro is how easy and quick it is to setup and start using. Con is definitely it's inability to scale with write heavy load.
Since this is a non relational database it offers a different approach for storing data. It's a whole different world. This db can be used for cache layers in large scalable systems. Can be used as well as an alternative database for web systems. In my personal experience I have used it and have seen it being used for large mobile apps.
The transition from relational databases to non relational like mongo can be hard sometimes, but once you get used, a learning curve that lasts about 1 month you will love it.
To handle large amounts of data this db is a good option.
Very easy to get started, with very simple tuning you can get good performance. Designing the data model is pretty straight forward - match the document structures to your find patterns and you'l be fine.
default configurations may lead to data loss - not something you want to find out in Production. We've had incidents were data was lost or corrupted due to the way the internal replication works. These are real "corner-cases" but if you need 100% guaranty of your data it's an issue.
Our product mainly uses Mongo to store "resources" - mostly things that can be fetched by IDs. mongo is also used as a staging area due to it's flexibility and performance. Last but not least, Mongo stores our Audit information. Mongo did all of the above without any issues.
Quick and easy setup for prototyping applications without overly worrying about data structures, strong integration with high quality frameworks like NodeJS and Meteor, great to use when your using Javascript within your stack. The latest version that allows for joins within the aggregation pipeline has been fantastic.
How much flack MongoDB (and most NoSQL DBs) get when people try to use them without understanding their benefits
Working heavily with the MeteorJS framework which is tied directly to MongoDB, not only do we use it in our production app we also use it for all of data analysis DB
Mongodb is a NOSQL database ie. the user does not have to define the schema. Due to this it is a good option for startups or companies who deal with unknown and unstructured data. Mongodb is quite easy to use and get started with a good community support.
In Mongodb you wil have to deal with transactions yourself . Since there is no schema , referential integrity is not maintained. Also database consistency is not maintained here. This needs to be done by the user itself. On the other hand these things are much easier in SQL db like Postgresql.
Currently we are dealing with large amount of data , which is generally use generated. Since we are not sure about the attributes of the data , mongodb was a very obvious and good choice for us. It's quite fast and reliable.
MongoDB is a great nosql database which is widely used. It is particularly a good choice among sql users who wants to use nosql databases because of its great community, documentation and support. I like the fact that performance wise it is very perdictable and can scalable. Its very easy to maintain and reduces a lot of unneccesary complexities common in sql world.
I don't dislike any special thing in particular.
MongoDB is internaly used as a Job publish/process server. We also save results of web scraping in MongoDB. Because of its powerfull feameworks like MapReduce and Aggregation, it is a very suitablefor usages in data analysis.
MongoDB store data in a more programming friendly and more flexible than SQL
MongoDB isn't officially supported by Django. You need to download extension to use MongoDB with Django.
Storing complex and dynamic data for web application. MongoDB format is much easier to workaround than SQL.
MongoDB's flexibility allows me to focus on how I use my data and to easily change its structure as my needs change. It reduces the time needed to design and implement my database, allowing me to focus on the structure of my application, designing the database as I go.
I'd love to see more granular (e.g., collection-level) user permissions.
We needed a way to quickly and easily access a set of related data in a read-heavy application. MongoDB allowed us to store the important components in a single document, reducing the number of reads required to on each page load.
The best thing about MongoDB is ease use of their database API, available in different languages of your choice. At the end of the day, It is I as a developer responsible to write those code might be the reason for the easiness of the API struck me first. The spared time was better spent in other areas of the application. The second best thing (arguably first!) is the performance, its really really fast. I used a document collection of 20,000 documents and the query was responding in a matter of few seconds, consistently. Being a RDBMS user in my entire career, I am pretty sure it would have taken a big toll in any traditional RDBMS performance with 10 or so join in normalized table structure.
Prior to the version 2.2 the concurrency strategy they implemented was write greedy, i.e. a write request locks everything, a feature which made it difficult to fit in a use case where you will have writes with faster reads. They have been making a lot of improvement since version 2.2 to manage the concurrency in more granular level. As for the query capabilities, like many other NoSQL database, it doesn't have great support for complex queries (much needed and frequently encountered and solved in RDBMS world).
We used MongoDB in a web application, mostly for retrieval purpose. It was more like storage for time series data with fewer writes but requires very fast response for near real time update.
mongo works pretty well in MEAN stack, setting up mongo in node is very easy
the documentation needs to be improved, the content need to be organized as a learning path and having search functionality, some important concepts are hidden in some article in the middle
built a backend system for a mobile app, compatible with most ends, but firebase will be a competitor
* MongoDB can scale very well. The binary code base is light and efficient. With new 3.0 release, write lock is at collection level which is big improvement from previous releases. MongoDB can scale horizontally (form multiple nodes cluster) with minimal effort. For database users want the best performance possible, one can setup a large cluster with many low cost computers or cloud servers so whole or majority part of database is in Memory. * MongoDB is well protected against hardware failure and data center failure. Unlike older generation of relational database that uses backup for hardware failure and disaster recovery. MongoDB uses online replication. MongoDB replication is the default and recommended installation that creates multiple copy of data across different servers. With careful planning, MongoDB user can have online copies of database files on different storage array or different data center to prevent single point of failure and data loss. Because of the distributed architecture, MongoDB can withstand one or more nodes failure without impact its availability. * MongoDB is build for Internet. MongoDB stored data in a variation of JSON format. JSON is easy to be consumed by web clients such as web browser and iOS device. MongoDB has powerful data query language and index to search data quickly.
* MongoDB is one of very first new nosql databases on the market. It is important to understand it is not a ACID compliant database. What that means is it is not transaction safe beyond the document level (roughly equivalent to a row in relational database). It is the tradeoff for scalability and durability and it is by design according to MongoDB developer. When fit MongoDB into your enterprise application architecture, we need think about what MongoDB can do and can not do.
We use MongoDB to support data retrieval for web based clients. The data our application requested need to have joins of multiple tables and complex data transformation of very large (Terabytes scale) data set from our relational data store. It is a challenge to get data back from transaction oriented relational data for a web/iOS based application that requires sub-second response time and hundreds of concurrent users. We built read optimized data layer using MongoDB and Web service based middleware to support multiple internet platform, namely multiple web browsers and iOS devices. MongoDB enable us to have a very fast and data rich web based application for our users.
I like the flexibility of usage and the speed of deployment. Also, there is an element of portability that is extremely exciting in terms of possibility for extending the usage of established stores.
I have some concerns about scalability, although as yet I have not seen any issues. Usage requires some adjustment/new learning of deployment and coding patterns to get the most out of it, but that is not a special problem for MongoDB.
Session and customer data collection, support for SaaS apps
Easy for storing JSON format, semi-structured documents. Query runs fast.
Not very easy to write the query using a descriptive language. Have to learn how to query in the write semantics. Wish there is a simple api that could be used for query. Haven't tested the performance for large scale data sets either. It is hard ( or sometimes impossible ) to run query on the nested JSON field using a nested search
We use MongoDB as database for a large sensing network project. The benefits it has includes fast query speed, easy to maintain, compatibility for JSON format messages and suitable for storing real-time messages.
Features I find most beneficial are dynamic queries on documents, schema-free, rich data structure
Indexes take up a lot of RAM, and not as scalable as some similar solutions, it seems
Storing dosuments
It is flexible and helps to store data in document format. If you want to handle a huge amount of data then it is a perfect platform. It is providing high performance and better solution of storing data. As data is stored in document format thus you can easily delete and add any existing field and you can change records as well. It helps in fetching data accurately and storing complex structures. It helps in storing data with any type and size.
Users are facing a lot of security issues. Aggregation is complex and difficult to learn. It has a terrific administrative interface. It will not be able to work fast with a cloud environment, most of its processes will slow down. It may be impossible to remove some comments in it.
You can access your data in any language. You don’t have to define a schema for setting up your database as it is a schema-less program. It helps in organizing documents into collections. It helps in speeding up your queries. Table joins are not required in it. It is providing fast data processing. It is also having great support from many cloud-based platforms.
I can configure the data fields and columns in Mongodb according to client requirments. This allows navigation of the UI simple with respect to the design of the tables. You can also easily download the json files for deployment.
The configuration of the data fields requires indepth knowledge and understanding. Otherwise, errors will be frequent for new users. The connection of the tables is quite complex and needs to be reviewed thoroughly.
The database configurations for our program needs to be designed for simple indexing. Through mongodb, we can list and configure the database according to the document categories and client requirments.
Love the document based structure of db.
Dislike official mongo clients. It has inconvenient ux design
We save some data in mongo. It helps fast developing services without schema design
Easiest way to deploy, operate and scale
To easy to run query and get large database JSON based
Storing Large data in mongo db and performing different operation as normalisation
Document based database which helps managing un structure data dynamically or we can at run time. Javascript functionality where we can directly use javascript features so that we require less learning to write functions in mongodb.
Need lots of improvement on linking document (or joining of document).
Usually it helps to solves social networking problems as we are working on that project.
easy to install and lightweight. good for sharpening your Non SQL skills
the support links are not well planned. can be difficult to get around in beginning especially if you moving from relational database platform
setting up non relational No sql databases
It is used to store document type data without any relationships between data. Everything can be stored in the form of embedded documents which makes easy for an application to fetch data from Mongodb at a high speed and is very well suited for clustered environments.
The data stored in MongoDB is stored in denormalized form which makes data redundancy in the Database.
MongoDB is used in our organization to store the user logs from enterprise website and is used for running analytics on document type data.
The document data model (main feature of MongoDB) provides the users/developers provides great flexibility while its distributed architecture allows great scalability which makes it the Best NoSQL DB in the market and hence makes it the ideal replacement for relational databases.
The major disadvantage is MongoDB does not support Joins on data and also there is no default transaction support which puts more work on the user to handle it.
Problems like performance , availability and scaling which are present in relational DB are addressed by using MongoDB.
The ease of use of MongoDB specially for beginners users makes it one of my go to databases to recommend to friends who want to get started with databases in general
The fact that MongoDB is not as widespread
Flexibility when it comes to programming language I can utilize to interact programatically with my database
Document data model is the natutal model for storing data
transaction management is not as great as traditional rdbms
No need to intermediate orm tool like hiberante
Running queries on Mongo is simple and quick. It is ideal for creating reporting tools.
I would prefer some built in visualization tools from Mongo. Currently am using Robo 3t,
Database monitoring and dashboard creation.
It functions within a hybrid environment... compatible with other databases.
Kinda complicated to get started. Sometimes I would have to compile way to many queries to receive an outcome.
Siphoning data. Cloud migration.
Recently started using the product so need to explore more to better understand the product.q
Didn't explore yet. Need to explore more to understand the dislikes of the product,
Need to work on the data modeling.