UI isn't that great compared to the other competitors. The management of our memcached cluster was becoming pretty complicated as the application grew in size. Redis is a much better option compared to memcached. Redis is bit unreliable compared to the alternative RabbitMQ …
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.
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).
DynamoDB is a fully managed key-value store by Amazon. It provides more powerful indexing to the tables, which certainly increases the performance if searching is what you need. However, it is also a lot more expensive to use compared to Redis. If your use case is more on the …
We evaluated Oracle and at first it seems competitive but after the contract term pricing would jump. Heard this from business associates and online communities
ElastiCache also offers Redis, but it's quite cryptic and you have to pay for support separately (it's quite expensive as well). With Redis Enterprise we were able to set-up our cluster with constant support from their team, and we were even able to set-up a particular set of …
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.
MongoDB seems to have copied a lot of functionality from Riak. This may be because MongoDB hired a number of former Basho engineers when Basho went bankrupt. That said, the new functions added to Riak after it became open source have successfully differentiated itself from …
Every database has positives and negatives. Redis is very good at set operations, but not as good at executing fast queries. MongoDB is a much cheaper data store than Riak, but not as highly available and scalable. Searching Riak is also faster than searching MongoDB or …
Because of the RESTful HTTP interface, the consistency model, and because of the catalog-driven data model, Riak was an easy win over Redis and Memcached.
At the time I worked on the project those were the three competing technologies I evaluated. Couchbase didn't have memcache integrated at the time. Riak was by far the easiest to set up, and it's linking capability struck the right balance of having just enough relational …
Riak is a key/value pair store which is great for certain use cases. For our use case, the ability to search is an extremely useful feature. Apache Cassandra can provide this while Riak cannot. Also again for our use case, the ability to delete is critical as we strive to …
Perfect solution for caching needs. If you have a bottleneck due to frequent data access to your database, then Redis can really help you by diverting those traffic away from your database. Its key/value pair structure also makes data lookup very efficient, providing excellent performance.
Riak is very good if you need a resilient data store that can handle large amounts of documents very fast. If you have 1,000,000 documents and need to execute complex queries, it is great. Riak's SOLR engine is fast, however if you have extremely high amount of queries in a very limited time range, it can fail in a bad way.
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.
Redis is super fast but it comes with a cost. Whole dataset resides in RAM. So it can be costly as primary memory is more costly, then secondary ones.
Persistence issues: To achieve it, Redis uses a memory dump to create a persistence snapshot, that's cool. But it requires some Linux Kernel tweaking to avoid performance degradation while the Redis server process is forking. This further causes latency.
Master-slave structure side effect: Master-slave architecture comes with its own side effects. Please note that there will be only one master with multiple slaves for replication. All writing goes to the master, which creates more load on the master node. So, when the master goes down, the whole architecture does.
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.
Riak works great for our use case but the fact that deletes seem to resurrect is a real issue for us. Unless we can get this solved, we'll continue to look at other products to see if our use case fits. Otherwise Riak is a great product and it fits our use case 95%. We have found work arounds to the remaining 5%.
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.
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.
Despite Basho going bankrupt and the project becoming fully open-source, community support is reasonably good, albeit a little slow at times. Paid enterprise-grade support is also available from former Basho engineers but the same company also contributes to the community support for free for basic questions or specific knowledge areas.
UI isn't that great compared to the other competitors. The management of our memcached cluster was becoming pretty complicated as the application grew in size. Redis is a much better option compared to memcached. Redis is bit unreliable compared to the alternative RabbitMQ especially when it needs to be integrated with Celery.
MongoDB seems to have copied a lot of functionality from Riak. This may be because MongoDB hired a number of former Basho engineers when Basho went bankrupt. That said, the new functions added to Riak after it became open source have successfully differentiated itself from MongoDB.
Amazon S3 is a nice tool but when you are at significant scale with regionally specific data (joys of GDPR), it's much easier to keep it in house and Riak CS lets you do exactly that. All you need to do is point your application at Riak CS instead of Amazon S3 and it just works as if nothing has changed.
When we evaluated against Cassandra, we found the tools available did not match our needs at the time.
Existing tools like Redisson that were built over Redis reduced dev time in solving challenging problems, which had a positive impact on ROI.
We initially misused Redis for persistent storage which had a negative impact on ROI because we were paying a lot for inactive users.
The increased performance we achieved using Redis in areas like locking helped us improve the performance of our system reducing the likelihood of system timeouts.