TrustRadius Insights for Redis Software are summaries of user sentiment data from TrustRadius reviews and, when necessary, third party data sources.
Business Problems Solved
Redis has proven itself to be an invaluable tool in a wide range of use cases. Users have found Redis to be exceptional as an efficient caching solution, allowing for the distribution of data and storage of web sessions. This capability has led to significant improvements in performance and reliability, making it a go-to choice for many backend development teams. Additionally, Redis's versatility as a NoSQL key-based database store has made it a preferred option for organizations working alongside other databases like PostgreSQL and Memcache. Its ease of use, stability, and reliability have made it a popular choice across multiple departments within organizations.
Furthermore, Redis has been leveraged in various R&D projects to experiment with its implementation in different modules. Starting with cache management, users have been able to extend its usage to address specific project needs effectively. In these experiments, Redis has served as a traditional in-memory key store warehouse for cache systems with a vast number of items, resulting in substantial latency savings. Its ability to manage distributed queues efficiently has also made Redis an excellent choice for tasks that require multiple worker nodes to subscribe and complete tasks. The flexibility Redis offers by enabling users to store sets of object-based information and lists further improves performance through set operations.
In addition to these use cases, Redis has become synonymous with simplicity and speed when it comes to basic yet fast key-value storage solutions. It has been extensively adopted in organizations, including game studios, where it is used for storing user data, session data, game data, and indexing information. For example, Redis Enterprise has been utilized to support backend systems for casual games by providing sub-millisecond response times and facilitating clustering, sharding, backups, and monitoring.
Moreover, customers have found Redis instrumental in addressing various challenges such as big data processing, handling temporal data, managing session state, and even as a caching service in microservices environments. Its ability to provide data consistency, concurrency management, and high-speed operations has proven invaluable. Additionally, Redis has been a reliable tool for caching solutions in e-commerce storefronts and data visualization applications. Users have reported reduced server load and improved performance as a result of implementing Redis as a cache.
Redis has also found success as a buffer cache, allowing for faster data retrieval and improved overall database performance. Its role in processing queues, calling APIs, and supporting vital organizational workflows has been recognized by customers who rely on its stability and speed. Furthermore, users have implemented Redis across various domains to manage user timelines, build notification systems, and implement microservices architecture
It's our primary caching solution used to store request-ids, user profiles, message ids for de-duplication, etc. We have about 25 clusters of Redis Software running on Elasticache and it scales without any issues.
Pros
Easy to integrate, simple data models.
Highly performant at significant scale.
Easy to deploy and manage.
Cons
Replication
Durability
Clustering
Likelihood to Recommend
Well-suited:
1. Simple k-v caching.
2. Any data model that can use hashmaps, streams, and pub-sub systems.
Not Suited:
1. Any need of durability
2. If your primary storage is SSD.
VU
Verified User
Vice-President in Engineering (501-1000 employees)
Redis is used as cache storage in our data visualization application where response time is key. We use Redis for some of the flag features in a system with more than 20,000 internal users. This in-memory database helped to solve many of the use cases we've had on our product like user based caching, realtime analytical operations on one time fetched results.
Pros
A modern key-value store in-memory database.
Redis [is thorough] and details user documentation.
Data distribution on a multi-tenant cluster is easy and reliable.
Cons
It lacks support for datatypes that are available on other products.
Making it work with Celery is a bit hard and sometime it's not reliable.
Lacks better UI like other systems.
Likelihood to Recommend
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.
We use it to manage & control user sessions in a Tomcat based web application programmed with Java. It's used in both production and testing & development environments in this certain application's server backend, but only the software development department actually understands & manages it. It solves the case to keep users logged in to the application and also invalidates the sessions when requested or automatically if they expire.
Pros
Has been working well for storing user sessions.
No need for maintenance operations. Once it's set up has been working flawlessly.
Many configuration options, little programming required.
Cons
The actual database structure is difficult to understand.
Only command line application available for free. Difficult to use.
Seems to have some encoding issues when inspecting data directly with CLI app.
Likelihood to Recommend
It is well suited when a web application needs to store any kind of user sessions. It works both for storing logged in user sessions but also for non authenticated users. User sessions are temporary; however, for storing permanent data that needs to be retained across sessions it is not appropriate because Redis is an in-memory database.
VU
Verified User
Employee in Information Technology (1001-5000 employees)
Redis is used as our primary cache for our application to help reduce response time and improve user experience. By caching read intensive data in Redis, this also helps to reduce load on our database.
Pros
Great performance for reading data
Easy to set up and work with
Great support for many different types of data structure
Cons
Lacking monitoring and administration tools
System resource consumption as you scale up
Likelihood to Recommend
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.
VU
Verified User
Employee in Information Technology (1-10 employees)
Redis was used in a project to merge live data from different sources. Then by using Lua scripting we were able to make some further aggregations and data binding for better results. It was essential for us as preparation for next steps.
We also used it as session storage manager for some other projects.
Pros
It's fast for key value hashes operations.
Lua Scripting extension is really powerful.
Cons
Single-threaded.
Likelihood to Recommend
Session manager - With in-built expires it's the perfect solution for that scenario.
Data binding as we can use its key value architecture to store data from different sources under the same key so they will be automatically matched. And with now previous data structure we can extend for example hashes horizontally.
It may be costly to use it as persistent data storage.
VU
Verified User
C-Level Executive in Information Technology (11-50 employees)
Our organization uses data a lot. It is essential that we deal with a huge set of data and in a quick and timely fashion. Our data services in order to achieve this, we use Amazon's Redis cache. It's been working great for us and we have been using Redis for 1.5 years now. It is reliable and helps speed up our services by at least 40% and reduces the DB calls.
Pros
As with other service offerings from Amazon, Redis is fully managed as well and eliminates a lot of burden on our team.
It's easy to get hold of all the metrics as it is integrated with Cloudwatch.
Very quick and easy to deploy and configure the Redis services into our environment.
Cons
It becomes expensive over time and need to keep a close watch on the usage.
If the instance goes down, there is no backup preserved.
Likelihood to Recommend
Redis works great in our data services applications. Very easy to spin off and configure Redis and link it with our services. We have saved a lot of database downtime as we started using Redis. We now access the information directly from Redis cache instead of hitting the database for every information. We had to write a caching mechanism that suites our needs. We refresh the cache on a timely basis to make sure it has the latest data from the database.
Redis has been a vital component in our design, it's usage is mainly for caching API requests, but it also extends to other applications such as rate limiting and pub-sub mechanism.
Pros
Latency.
In-memory.
Ease of use.
Cons
Open source licensing was ambiguous.
Likelihood to Recommend
Redis is well suited for in-memory caching, API caching, and rate-limiting.
We used Redis for application data caching. Redis is used by more than one department and is an enterprise standard offering. We have since moved away from Redis as we were able to simplify our architecture given our more powerful database servers after our latest tech refresh. When we were using Redis, our application response times were too slow for certain transactions so we cached the data to improve performance. There are other use cases that we considered like caching of session data. Again our goal was to simplify our architecture and Redis was one of the products we eliminated, not because it wasn't a good product but because we no longer needed it for our application.
Pros
Application data caching.
Session data caching.
Cons
Managing cache misses better.
Likelihood to Recommend
I think Redis is a great product. Our problem was we were using too many different products when we could have been just using one. We had Redis for application data caching, we were using Xtreme Scale to cache session data, when in fact Redis could have handled both. The decision was made to stick with Xtreme Scale but honestly I would have preferred to stay with Redis. Redis handles application data caching well. We had some issues with cache misses, but I think that was more of what we did and less of what Redis did (or didn't do). That being said, after some recoding, we had no issues. I think that the Redis product could be little easier to use there but again, it was probably a learning curve item for us and not so much the product.
Redis is being used across the whole organization as a better cache/message broker service, replacing SQL Server.
Pros
Caching
Message broker
Cons
Different OSs
Likelihood to Recommend
So far, the product definitely excels at the services it was designed for. Obviously, it's not a replacement for your typical relational database system.
VU
Verified User
Professional in Information Technology (1001-5000 employees)
Redis is used across all the organization. It is used by our main games to store user data, session data, game data, and indexing some information related to it.
Having backend systems that support casual games, like Trivia Crack, must support instant virtualization and big spikes that can happen during holidays, Christmas, and so on. Consequently, it is important to have a sub-millisecond database to be able to increase the requests rate very rapidly.
Pros
Answer requests at sub-millisecond latency: by having all the data in memory, the latency has no comparison to other disk based DBs.
Simplicity: it is incredibly simple and straightforward to use. You can download Redis and start using it during the next five minutes.
Reliable & scalable: when working with a cluster (and if you have a proper sharding strategy), your DB can scale to pretty high numbers and not to die in the middle of any spike.
Cons
Cost: by having all the data in memory, it can be very expensive. There should be an option for having some data stored on disk, at least initially (and with the tradeoff of some higher latency).
Lack of some basic permissions: there should be a way of having a user with restricted commands (i.e.: no keys *, now write commands, etc).
Multi-module available on the same Redis instance (as far as I know, this is not possible yet).
Likelihood to Recommend
Everywhere speed and scalability is a must, Redis is the way to go. On the other hand, if you want to store huge amounts of data and do not need an extremely low latency, Redis might be too expensive for you. Also, if you are looking for some transactionality and consistency in your data, remember that Redis is a NoSQL database.