Redis Review
March 19, 2019

Redis Review

Anonymous | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User

Overall Satisfaction with Redis

Redis is, at a high-level, an in-memory data store largely setup at a key-value store (although it can persist data to disk, and supports more complex data structures). Redis is generally used as part of a cache layer and has a number of additional use cases that it fills well (messaging and task queues).
  • Very, very fast due to the in-memory data store, which makes it highly scalable on rational-sized hardware.
  • Fills a number of different use cases: can build message broadcast, task queues, sorted sets (i.e. leaderboards), and database caching all with the same tool.
  • A robust third-party ecosystem of deployment options (like AWS) and libraries in a number of common programming languages.
  • Can be difficult to set up as it scales past a single write node.
  • While Redis can preserve state by writing to the file system in a couple of ways, it can still be cumbersome to standup a cluster with history.
  • Use as a write-through cache saves significant load from hitting the database, lowering costs.
  • Use as a message broker is a great choice for building scalable microservices.
  • High-performance, in-memory engine supports very large loads on inexpensive cloud hardware.
  • Product Features
  • Product Usability
  • Product Reputation
  • Third-party Reviews
Redis is well-known for its rock-solid reputation and performance; enough so that PaaS vendors like Amazon Web Services have added support for easily configured and scalable Redis clusters via Amazon Elasticache. In our experience, Redis has consistently hit the performance benchmarks we've expected and is consistently amongst the most reliable layers in our product deployment architectures.
As we perform a lot of deployments to AWS, we have the option of easily using a cache layer with either Memcache or Redis. We almost always choose Redis as it can solve more problems in production than Memcache in our experience. There is some overlap between what Redis can do and what can easily be achieved with a traditional RDBMS, so it's important to ensure you really need the benefits that Redis has before adding new complexity to software architecture.
For caching, task queues, and messaging, Redis is amongst the best implementation choices. Redis shines when very high throughput is required and very low query times are a necessity. Redis is also a great choice for storing data that can be automatically removed once it expires and should be stored somewhere else. While it is a data structure store, it is not a good choice for highly structured data that should be written to a disk instead (where a traditional RDBMS or NoSQL option is likely a better choice).

Redis™* Feature Ratings

Performance
10
Availability
8
Concurrency
9
Security
8
Scalability
8
Data model flexibility
6
Deployment model flexibility
8