We use Astra DB to improve our management systems. Storing data has become hassle-free and quite simple. When launching a Cassandra-based cloud application, Astra DB is exactly what you need. In addition to the standard training programs and videos, the extended support and training require significant additional effort to activate and cover which I feel is a bit more tedious task.
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.
We need to be able to process a lot of data (our biggest clients process hundreds of milions of transactions every month). However, it is not only the amount of data, it is also an unpredictable patterns with spikes occuring at different points of time - something athat Astra is great at.
Our processing needs to be extremaly fast. Some of our clients use our enrichment in a synchronous way, meaning that any delay in processing is holding up the whole transaction lifecycle and can have a major impact on the client. Astra is very fast.
A close collaboration with GCP makes our life very easy. All of our technology sits in Google Cloud, so having Astra in there makes it a no-brainer solution for us.
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.
Astra DB might be difficult to understand for people who are unfamiliar with Apache Cassandra. Improving the initial experience for newcomers, as well as offering better documentation and lessons, might be advantageous.
The Astra DB ecosystem may be enhanced by expanding the ecosystem of plugins, integrations, and community-contributed solutions.
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.
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.
Their response time is fast, in case you do not contact them during business hours, they give a very good follow-up to your case. They also facilitate video calls if necessary for debugging.
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.
We also (briefly) considered building in-house. We wanted to avoid complex "Frankenstein" architectures. Combining Pinecone with another NoSQL datastore like DynamoDB would have increased complexity. A single-managed platform (Astra DB) enabled architectural simplicity and strong reliability, allowing Maester’s development team to prioritize high-value, customer-facing features
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.
We are well aware of the Cassandra architecture and familiar with the open source tooling that Datastax provides the industry (K8sSandra / Stargate) to scale Cassandra on Kubernetes.
Having prior knowledge of Cassandra / Kubernetes means we know that under the hood Astra is built on infinitely scalable technologies. We trust that the foundations that Astra is built on will scale so we know Astra will scale.
Database growth planning is less of a concern with Astra, as it scales automatically.
Currently, they lack fine-grained security at the table level. I suspect that will change over time.
If your load has peaks and valleys; Astra enables only paying for Reads/Writes; thus you do not need to pay for large servers to support peaks in load.
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.