MongoDB is an open source document-oriented database system. It is part of the NoSQL family of database systems. Instead of storing data in tables as is done in a "classical" relational database, MongoDB stores structured data as JSON-like documents with dynamic schemas (MongoDB calls the format BSON), making the integration of data in certain types of applications easier and faster.
$0.10
million reads
Redis Software
Score 8.9 out of 10
N/A
Redis is an open source in-memory data structure server and NoSQL database.
N/A
Pricing
Apache Cassandra
MongoDB
Redis Software
Editions & Modules
No answers on this topic
Shared
$0
per month
Serverless
$0.10million reads
million reads
Dedicated
$57
per month
No answers on this topic
Offerings
Pricing Offerings
Cassandra
MongoDB
Redis Software
Free Trial
No
Yes
Yes
Free/Freemium Version
No
Yes
Yes
Premium Consulting/Integration Services
No
No
Yes
Entry-level Setup Fee
No setup fee
No setup fee
Optional
Additional Details
—
Fully managed, global cloud database on AWS, Azure, and GCP
Four years ago, I needed to choose a web-scale database. Having used relational databases for years (PostgreSQL is my favorite), I needed something that could perform well at scale with no downtime. I considered VoltDB for its in-memory speed, but it's limited in scale. I …
Apache Cassandra has the best of both worlds, it is a Java based NoSQL, linearly scalable, best in class
tunable performance across different workloads, fault tolerant, distributed, masterless, time series database. We have used both Apache HBase and MongoDB for some use cases …
We evaluated MongoDB also, but don't like the single point failure possibility. The HBase coupled us too tightly to the Hadoop world while we prefer more technical flexibility. Also HBase is designed for "cold"/old historical data lake use cases and is not typically used for …
Against HBase, writes were faster. Reads not so much. Also ability to store in other formats would be good (such as objects). Compared to aerospike, does not compare. Aerospike blows it out of water.
DynamoDB is good and is also a truly global database as a service on AWS. However, if your organization is not using AWS, then Cassandra will provide a highly scalable and tuneable, consistent database. Cassandra is also fault-tolerant and good for replication across multiple …
Technology selection should be done based on the need and not based on buzz words in the market (google searching). If your data need flat file approach and more searchable based on index and partition keys, then it's better to go for Cassandra. Cassandra is a better choice …
We have [measured] the speed in reading/write operations in high load and finally select the winner = MongoDBWe have [not] too much data but in case there will be 10 [times] more we need Cassandra. Cassandra's storage engine provides constant-time writes no matter how big your …
Verified User
Engineer
Chose MongoDB
I would say Cassandra is better than MongoDB since it has the backing of Facebook to it. Its inherent properties like versioning put it into the other category of columnar databases, but it's one of the NoSQL databases which you should definitely consider for your organization …
In our early development days we weighed NoSQL databases like MongoDB with RDBMS solutions like MySQL. We were more familiar with MySQL from past experience but also were wary of painful data migrations that slowed down development iterations and increased the risk of outages …
MongoDB is our go-to database solution for any project, and the more we work with it the more we love it. Some say that NoSQL is pointless... Our developers wholeheartedly disagree, because they love working with it. Though both NoSQL and SQL have their purposes, in most …
MongoDB and Cassandra are both database system from the NoSQL family. MongoDB can be used in lots of use cases while Cassandra has a specific usage. There are some features that MongoDB provides efficiently while Cassandra doesn't and vice-versa. Like, you can update the data …
In the beginning, we considered several products in the market. Since our project was a science and research project, our budget wasn't as big as a commercial project, but still, we wanted the product to be scalable so that we could deal with "smooth transition" from research …
From the beginning, we thought we would have a large volume of data, so MongoDB was a natural choice. Next we started the project and found MongoDB is also developing new features that are more like SQL which was very nice for us. As data volume is growing with time, no need to …
MySQL is a great for querying related data, but it's unable to store structured data and has a fixed schema. Also SQL can be non-intuitive. DynamoDB, CouchDB and Redis all make querying the data quite difficult and lack important features. The problem CouchDB tries to solve is …
Verified User
Professional
Chose MongoDB
Cassandra: may be better for bigger use cases, in PB range, due to our use cases being slightly smaller, we did not need this, but we highly rely on efficient indexing, and low latency, which seemed to be better based on our testing in Mongodb. Couchbase Server: Document …
MongoDB provides better performance on a big database. If you prefer to define indexes rather than a map/reduce function, MongoDB is good for you. It's quick to start it up and very easy to learn, basically no entry barrier. MongoDB's community is very welcoming.
MongoDB's interface is extremely intuitive and allows [you to] come up from no knowledge to a working deployment with no effort, even without a background in the NoSQL world.
We chose MongoDB because it fit our specific use cases better than the other two NoSQL products that I've identified. There are some use cases where those products would be better. Be sure to use the right tool for the job, for us, it was MongoDB, for you it might not be.
Verified User
Project Manager
Chose MongoDB
MongoDB is document oriented, and fits our goals best.
I use Cassandra more often these days for best in class performance, tunable consistency, linear scalability. In similar cases, I have used Apache HBase. But if there is a need for document store, MongoDB is the top choice.
Initially, we were unsure whether to use Redis or MongoDB., in reality, they are both no-SQL databases but can be used both as needed. certainly, in my opinion, it is more reasonable a DB no SQL MongoDB than Redis, the key logic value of Redis is certainly performing for the …
Redis is great at set operations and is very fast. Riak is a fast long-term data store, but it is expensive to run. MongoDB is good for small, quick projects. Elasticsearch is great at indexing and searching. Choose the right tool for the job, and don't be afraid to …
Redis was initially in the list of competitors like Aerospike, Cassandra, MongoDB.The major point that outset all others is that it provides a number of read and writes to the database that no one can match. Another major factor is Redis really knows the basic components that …
Couchbase doesn't keep up with what they offer and what really does. MongoDB just doesn't scale out, reads are performed across multiple nodes but writes still go to the single master. DynamoDB is good overall but just way too expensive.
Every time you don't need a document DB, you can't go wrong with Redis over MongoDB. Google Cloud Pub/Sub may have solved one use case, but we'd still have to deploy Redis instances for other use cases, and adding another tech stack would only add complexity to our …
Redis is faster, provides documents JSON-wise with the proper odule and it is far more stable than MongoDB (we had really bad experiences with Mongo, especially when ops tends to increase).
Vice President, Chief Architect, Development Manager and Software Engineer
Chose Redis Software
All are good products. MongoDB is a great NoSQL DB but didn't seem to have the high performance caching of Redis. Coherence and Xtreme Scale are expensive. In my opinion for our particular use case, Redis was the clear winner.
We initially used Memcached for some of the caching and locking solutions we now use Redis for; we found that for the purposes of our system Memcache could not match up to Redis for performance. We also found Redis to be a bit more reliable, but that could have just been down …
We are big users of MySQL and PostgreSQL. We were looking at replacing our aging web page caching technology and found that we could do it in SQL, but there was a NoSQL movement happening at the time. We dabbled a bit in the NoSQL scene just to get an idea of what it was about …
We initially tried ElastiCache with Redis hosting. While it did the job of running Redis, we still had to deal with server sizing. We switched to Redis Cloud since that had auto-scaling and easy to use tools.
One key feature: easy to use. you can install and use it under minutes. For the rest of the options, you have to do more configuration and settings. Besides all these, Redis is in-memory so the performance is a blast. Considering that simple is better, the proof of the concept …
Redis is easy to get setup, has great documentaiton, and quality online support. Antirez is constantly making feature updates the product, and is engaged with the community. Redis doesn't have a lot of bells and whistles, but what features it does has are well implemented and …
Apache Cassandra is a NoSQL database and well suited where you need highly available, linearly scalable, tunable consistency and high performance across varying workloads. It has worked well for our use cases, and I shared my experiences to use it effectively at the last Cassandra summit! http://bit.ly/1Ok56TK It is a NoSQL database, finally you can tune it to be strongly consistent and successfully use it as such. However those are not usual patterns, as you negotiate on latency. It works well if you require that. If your use case needs strongly consistent environments with semantics of a relational database or if the use case needs a data warehouse, or if you need NoSQL with ACID transactions, Apache Cassandra may not be the optimum choice.
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.
Redis has been a great investment for our organization as we needed a solution for high speed data caching. The ramp up and integration was quite easy. Redis handles automatic failover internally, so no crashes provides high availability. On the fly scaling scale to more/less cores and memory as and when needed.
Continuous availability: as a fully distributed database (no master nodes), we can update nodes with rolling restarts and accommodate minor outages without impacting our customer services.
Linear scalability: for every unit of compute that you add, you get an equivalent unit of capacity. The same application can scale from a single developer's laptop to a web-scale service with billions of rows in a table.
Amazing performance: if you design your data model correctly, bearing in mind the queries you need to answer, you can get answers in milliseconds.
Time-series data: Cassandra excels at recording, processing, and retrieving time-series data. It's a simple matter to version everything and simply record what happens, rather than going back and editing things. Then, you can compute things from the recorded history.
Being a JSON language optimizes the response time of a query, you can directly build a query logic from the same service
You can install a local, database-based environment rather than the non-relational real-time bases such a firebase does not allow, the local environment is paramount since you can work without relying on the internet.
Forming collections in Mango is relatively simple, you do not need to know of query to work with it, since it has a simple graphic environment that allows you to manage databases for those who are not experts in console management.
Easy for developers to understand. Unlike Riak, which I've used in the past, it's fast without having to worry about eventual consistency.
Reliable. With a proper multi-node configuration, it can handle failover instantly.
Configurable. We primarily still use Memcache for caching but one of the teams uses Redis for both long-term storage and temporary expiry keys without taking on another external dependency.
Fast. We process tens of thousands of RPS and it doesn't skip a beat.
Cassandra runs on the JVM and therefor may require a lot of GC tuning for read/write intensive applications.
Requires manual periodic maintenance - for example it is recommended to run a cleanup on a regular basis.
There are a lot of knobs and buttons to configure the system. For many cases the default configuration will be sufficient, but if its not - you will need significant ramp up on the inner workings of Cassandra in order to effectively tune it.
An aggregate pipeline can be a bit overwhelming as a newcomer.
There's still no real concept of joins with references/foreign keys, although the aggregate framework has a feature that is close.
Database management/dev ops can still be time-consuming if rolling your own deployments. (Thankfully there are plenty of providers like Compose or even MongoDB's own Atlas that helps take care of the nitty-gritty.
We had some difficulty scaling Redis without it becoming prohibitively expensive.
Redis has very simple search capabilities, which means its not suitable for all use cases.
Redis doesn't have good native support for storing data in object form and many libraries built over it return data as a string, meaning you need build your own serialization layer over it.
I would recommend Cassandra DB to those who know their use case very well, as well as know how they are going to store and retrieve data. If you need a guarantee in data storage and retrieval, and a DB that can be linearly grown by adding nodes across availability zones and regions, then this is the database you should choose.
I am looking forward to increasing our SaaS subscriptions such that I get to experience global replica sets, working in reads from secondaries, and what not. Can't wait to be able to exploit some of the power that the "Big Boys" use MongoDB for.
We will definitely continue using Redis because: 1. It is free and open source. 2. We already use it in so many applications, it will be hard for us to let go. 3. There isn't another competitive product that we know of that gives a better performance. 4. We never had any major issues with Redis, so no point turning our backs.
NoSQL database systems such as MongoDB lack graphical interfaces by default and therefore to improve usability it is necessary to install third-party applications to see more visually the schemas and stored documents. In addition, these tools also allow us to visualize the commands to be executed for each operation.
It is quite simple to set up for the purpose of managing user sessions in the backend. It can be easily integrated with other products or technologies, such as Spring in Java. If you need to actually display the data stored in Redis in your application this is a bit difficult to understand initially but is possible.
Finding support from local companies can be difficult. There were times when the local company could not find a solution and we reached a solution by getting support globally. If a good local company is found, it will overcome all your problems with its global support.
The support team has always been excellent in handling our mostly questions, rarely problems. They are responsive, find the solution and get us moving forward again. I have never had to escalate a case with them. They have always solved our problems in a very timely manner. I highly commend the support team.
While the setup and configuration of MongoDB is pretty straight forward, having a vendor that performs automatic backups and scales the cluster automatically is very convenient. If you do not have a system administrator or DBA familiar with MongoDB on hand, it's a very good idea to use a 3rd party vendor that specializes in MongoDB hosting. The value is very well worth it over hosting it yourself since the cost is often reasonable among providers.
We evaluated MongoDB also, but don't like the single point failure possibility. The HBase coupled us too tightly to the Hadoop world while we prefer more technical flexibility. Also HBase is designed for "cold"/old historical data lake use cases and is not typically used for web and mobile applications due to its performance concern. Cassandra, by contrast, offers the availability and performance necessary for developing highly available applications. Furthermore, the Hadoop technology stack is typically deployed in a single location, while in the big international enterprise context, we demand the feasibility for deployment across countries and continents, hence finally we are favor of Cassandra
We have [measured] the speed in reading/write operations in high load and finally select the winner = MongoDBWe have [not] too much data but in case there will be 10 [times] more we need Cassandra. Cassandra's storage engine provides constant-time writes no matter how big your data set grows. For analytics, MongoDB provides a custom map/reduce implementation; Cassandra provides native Hadoop support.
We are big users of MySQL and PostgreSQL. We were looking at replacing our aging web page caching technology and found that we could do it in SQL, but there was a NoSQL movement happening at the time. We dabbled a bit in the NoSQL scene just to get an idea of what it was about and whether it was for us. We tried a bunch, but I can only seem to remember Mongo and Couch. Mongo had big issues early on that drove us to Redis and we couldn't quite figure out how to deploy couch.
I have no experience with this but from the blogs and news what I believe is that in businesses where there is high demand for scalability, Cassandra is a good choice to go for.
Since it works on CQL, it is quite familiar with SQL in understanding therefore it does not prevent a new employee to start in learning and having the Cassandra experience at an industrial level.
Open Source w/ reasonable support costs have a direct, positive impact on the ROI (we moved away from large, monolithic, locked in licensing models)
You do have to balance the necessary level of HA & DR with the number of servers required to scale up and scale out. Servers cost money - so DR & HR doesn't come for free (even though it's built into the architecture of MongoDB
Redis has helped us increase our throughput and server data to a growing amount of traffic while keeping our app fast. We couldn't have grown without the ability to easily cache data that Redis provides.
Redis has helped us decrease the load on our database. By being able to scale up and cache important data, we reduce the load on our database reducing costs and infra issues.
Running a Redis node on something like AWS can be costly, but it is often a requirement for scaling a company. If you need data quickly and your business is already a positive ROI, Redis is worth the investment.