Was this helpful?

(0) (0)

cassandra-vs-redis

September 24th, 2020 4 min read

Apache Cassandra and Redis are popular open-source databases; Apache Cassandra is NoSQL and boasts high availability, while Redis is a multi-modal in-memory database known for performance and speed. Cassandra is available free under the Apache License 2.0, and Redis is also free, under a BSD license. Redis Labs also offers Redis Enterprise Cloud, a fully managed DBaaS version of the Redis database, available on Azure, AWS, or Google Cloud.

Redis and Cassandra are direct competitors for use cases that involve managing large amounts of data. They are deployed at companies of all sizes, though more at larger companies and enterprises given their focus on helping users manage large volumes of possibly unstructured data across multiple data centres, likely of no concern to small entities and solo devs.

Features

There are a number of reasons to introduce Redis or Apache’s Cassandra into a tech stack or project.

Redis is well regarded for caching and messaging and is high-speed with low latency, easy to setup and deploy vs other in-memory databases, and users point out it is a widely supported option for these use cases and easily integratable. For backups and failover capabilities, users also recommend an upgrade to Redis Enterprise Cloud as being worth the expense.

Like Redis, Cassandra is liked for its core competency, which in its case is scalability and availability. Other advantages users point out is that it is low maintenance, able to perform well on low cost commodity hardware, and that CQL (Cassandra Query Language) is easy to use, being somewhat similar to SQL.

Limitations

Reasons to take a pass on implementing Redis or Cassandra also exist.

Redis is said to not scale as easily as one might wish, and that when scaling usage costs balloon rapidly if an implementation is supported by a cloud provider. And while users say it is easy to deploy, some say it is not as easy to use, with a UI that isn’t perfect and difficult to navigate documentation. While not exactly a complaint, an item appearing on many a feature wishlist of Redis users is support for enabling multiple Redis modules at once; according to Redis, modules extend Redis functionality implementing new commands. This hinders its usability.

As a key-value store users note that Cassandra can be inefficient and not as performant as alternatives, and also state that queries that are ad-hoc and don’t closely mirror the database’s particular design process will tend to not work well, or may be impossible. For this reason, users stress that competent data modeling and a basic understanding of NoSQL is a must when working with Cassandra: get an expert to set it up, or risk learning to become an expert by getting it all wrong.

Pricing

Apache Cassandra and Redis are open source and both are available at no cost to the user when self-hosted. Cloud hosting may be desirable, in which case pricing will depend on compute costs set by the third-party cloud providers (e.g. the Amazon Keyspaces Cassandra DBaaS, etc.) or managed hosting providers (for instance, Instaclustr and Aiven offer managed Cassandra and managed Redis). Again, Redis Enterprise Cloud, is available directly from Redis Labs, and provides the capabilities of Redis with additional features (e.g. replication to support availability) hosted on the user’s choice of cloud.

Was this helpful?

(0) (0)

TrustRadius Weekly