Skip to main content
TrustRadius
Cassandra

Cassandra

Overview

What is Cassandra?

Cassandra is a no-SQL database from Apache.

Read more
Recent Reviews

TrustRadius Insights

Apache Cassandra has gained extensive popularity and usage across various critical use cases and platform solutions in many organizations. …
Continue reading
Read all reviews

Awards

Products that are considered exceptional by their customers based on a variety of criteria win TrustRadius awards. Learn more about the types of TrustRadius awards to make the best purchase decision. More about TrustRadius Awards

Popular Features

View all 7 features
  • Availability (5)
    8.8
    88%
  • Performance (5)
    8.5
    85%
  • Security (5)
    8.0
    80%
  • Concurrency (5)
    7.6
    76%
Return to navigation

Pricing

View all pricing
N/A
Unavailable

What is Cassandra?

Cassandra is a no-SQL database from Apache.

Entry-level set up fee?

  • No setup fee

Offerings

  • Free Trial
  • Free/Freemium Version
  • Premium Consulting/Integration Services

Would you like us to let the vendor know that you want pricing?

71 people also want pricing

Alternatives Pricing

What is MongoDB?

MongoDB is an open source document-oriented database system. It is part of the NoSQL family of database systems. Instead of storing data in tables as is done in a "classical" relational database, MongoDB stores structured data as JSON-like documents with dynamic schemas (MongoDB calls the format…

What is HCL Zen Edge Data Management?

HCL Zen Edge Data Management (formerly Actian Zen) is a NoSQL and SQL (fully ANSI compliant) embedded database that runs on Windows, Linux, Android, iOS, macOS, in VMs and Containers with AES 256-bit encryption. Version footprints range from 5MB (client only) to 50 MB (embedded client-server) to…

Return to navigation

Product Demos

Presto and Cassandra: Doing SQL and Joins on Cassandra Tables

YouTube

CassandraDB Connector Demo | CassandraDB Integration

YouTube

Open Source BI Tools and Cassandra

YouTube

Spark and Cassandra: Doing SQL and Joins on Cassandra Tables

YouTube

Real-time IoT data analytics and visualization with Kaa, Apache Cassandra, and Apache Zeppelin

YouTube
Return to navigation

Features

NoSQL Databases

NoSQL databases are designed to be used across large distrusted systems. They are notably much more scalable and much faster and handling very large data loads than traditional relational databases.

8
Avg 8.8
Return to navigation

Product Details

Cassandra Technical Details

Operating SystemsUnspecified
Mobile ApplicationNo

Frequently Asked Questions

Cassandra is a no-SQL database from Apache.

Reviewers rate Scalability highest, with a score of 9.5.

The most common users of Cassandra are from Enterprises (1,001+ employees).
Return to navigation

Comparisons

View all alternatives
Return to navigation

Reviews and Ratings

(94)

Community Insights

TrustRadius Insights are summaries of user sentiment data from TrustRadius reviews and, when necessary, 3rd-party data sources. Have feedback on this content? Let us know!

Apache Cassandra has gained extensive popularity and usage across various critical use cases and platform solutions in many organizations. Users have found it particularly useful in the tax domain, small businesses, profile platforms, and AB testing platforms. Algorithmic Ads, for example, relies solely on Cassandra for both real-time transactions and analytics.

In terms of implementation, a lightweight Java application serves as the primary means of accessing Cassandra, providing a RESTful web services API for seamless integration with other applications. This API is used internally as well as by customers, making it a central point for integration that includes business logic and data. The outstanding performance, linear scalability, and continuous availability of Cassandra make it a preferred choice among developers when a highly available NoSQL database is required.

Furthermore, Cassandra has proven its capabilities in multiple scenarios. It currently supports an enterprise eCommerce platform, offering excellent performance and acting as a powerful NoSQL database. Additionally, it has been employed to build a fully functional proof of concept for a shipment cloud concept at FedEx. By combining InMemory and NoSQL storage solutions, Cassandra enables unified RESTful-based service that caters to queries for the latest or historical shipment status. Moreover, users have found that Cassandra serves as a reliable backup for the IMDG component in case of a complete crash.

Cassandra's versatility extends to other domains as well. It effectively handles non-standard RDBMS data by providing fast write speeds and suitability for storing flat data. Many organizations leverage its cluster configuration to store personalization data for customers, ensuring up-to-date information with low latency. Cassandra also plays a crucial role in storing data in JSON format, allowing for efficient data storage and retrieval.

Moreover, Cassandra seamlessly integrates with various systems to provide distributed system logic. For instance, it is a core component of the HyperStore S3-compatible object storage system and collaborates with other Java servers to create scalable and fault-tolerant architectures.

Additionally, Cassandra has proven its efficiency in academic projects related to cloud computing and Salesforce, outperforming traditional RDBMS solutions. Prominent companies like Facebook and Uber rely on Cassandra for their real-time running apps due to its improved performance capabilities.

Although users have encountered challenges with the documentation, they still highly recommend using Cassandra for its scalability and faster request processing. Overall, Cassandra is a valuable asset for geographically dispersed architectures, offering availability, consistency, data distribution across multiple machines, and expandability on demand.

Greatest community and adoption: The Java-based NoSQL database has garnered a strong following with its greatest community and adoption. Many users have found it to be a highly popular choice among developers, benefiting from the extensive support and resources available.

Excellent integration with Apache Hadoop, Apache Spark, and Solr: Reviewers have consistently praised the database for its excellent integration capabilities with Apache Hadoop, Apache Spark, and Solr. This seamless integration provides a robust ecosystem of tools that enable efficient unit tests and stress testing.

Best-in-class performance across various workloads: Users have consistently highlighted the exceptional performance of this database across various read/write/mixed workloads. Its ability to provide low latency and high throughput has been widely appreciated by customers who require fast data retrieval and processing.

Missing Features: Some users have expressed that Apache Cassandra lacks certain functionalities, such as security and advanced tools like OpsCenter. They believe these features should be included in the open source version.

Challenging Data Modeling: Users with a background in relational databases may find it challenging to understand and work with NoSQL databases like Cassandra. They mention that data modeling needs to revolve around queries rather than the data structure.

Operational Challenges: Managing a large Cassandra cluster, even with the DataStax Enterprise Version, can pose challenges for maintenance teams due to frequent version upgrades and auto-repair. Users express the need for improved operational tools and continued enhancements to handle large clusters and massive amounts of data effectively.

Attribute Ratings

Reviews

(1-5 of 5)
Companies can't remove reviews or game the system. Here's why
Score 8 out of 10
Vetted Review
Verified User
Incentivized
We use Cassandra as the NoSQL database for our use cases. We stream a lot of API data into this database and rely on the availability it gives us. It has proven to be consistent, which we use to our advantage. Cassandra can distribute data across multiple machines in an app-transparent manner, thus helping us to expand it on demand.
  • Cassandra is a masterless design, hence massively scalable. It is great for applications and use cases that cannot afford to lose data. There is no single point of failure.
  • You can add more nodes to Cassandra to linearly increase your transactions/requests. Also, it has great support across cloud regions and data centers.
  • Cassandra provides features like tunable consistency, data compression and CQL(Cassandra Query Language) which we use.
  • The underlying medium of Cassandra is a key-value store. So when you model your data, it is based on how you would want to query it and not how the data is structured. This results in a repetition of data when storing. Hence, there is no referential integrity - there is no concept of JOIN connections in Cassandra.
  • Data aggregation functions like SUM, MIN, MAX, AVG, and others are very costly even if possible. Hence Ad-hoc query or analysis is difficult.
NoSQL Databases (7)
85.71428571428571%
8.6
Performance
80%
8.0
Availability
100%
10.0
Concurrency
90%
9.0
Security
90%
9.0
Scalability
100%
10.0
Data model flexibility
60%
6.0
Deployment model flexibility
80%
8.0
You should be very clear where you want to use Cassandra because there is no referential integrity (JOIN) in Cassandra. You have to model data based on how you want to query it, hence what use cases it can be used for should be considered carefully.

You can use it where you want to store log or user-behavior types of data. You can use it in heavy-write or time-series data storage. It is good in retail applications for fast product catalog inputs and lookups
  • Highly available and scalable database. Hence highly reliable in the organization for data.
  • Good performance - low latency and great throughput with varying workloads.
  • Maintenance and monitoring need investment and do not work great out of the box.
DynamoDB is good and is also a truly global database as a service on AWS. However, if your organization is not using AWS, then Cassandra will provide a highly scalable and tuneable, consistent database.
Cassandra is also fault-tolerant and good for replication across multiple data centers, which you get in DynamoDB as well.
I would recommend Cassandra DB to those who know their use case very well, as well as know how they are going to store and retrieve data. If you need a guarantee in data storage and retrieval, and a DB that can be linearly grown by adding nodes across availability zones and regions, then this is the database you should choose.
Dhruba Jyoti Nag | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
Cassandra is a NoSQL database which is used to store a large amount of data quickly. It has a very fast write speed, allowing a large volume of data storage within a small amount of time. It is tunable and can be used to store data. It is more suitable for storing flat data rather than relational data.
  • Write speed. Cassandra is very fast while writing data due to its unique architecture.
  • Tunable consistency - During data replication, consistency can be tuned for a particular data set to be available during an outage.
  • CQL - cassandra query language is a subset of SQL and eases the transition from a more traditional database.
  • Aggregation functions are not very efficient.
  • Ad-hoc queries do not perform well. Queries which were visualized while designing the databases only perform well.
  • Performance is unpredictable.
NoSQL Databases (7)
78.57142857142857%
7.9
Performance
70%
7.0
Availability
90%
9.0
Concurrency
90%
9.0
Security
90%
9.0
Scalability
90%
9.0
Data model flexibility
60%
6.0
Deployment model flexibility
60%
6.0
Cassandra is well suited to storing a large volume of data within a very small period of time. It is relatively fast and the data consistency can be tuned for datasets for custom availability during an outage. It can be interacted with using CQL-- Cassandra query language-- which is similar to SQL, and thus transition is easier. It however performs less during aggregation and querying.
  • Low learning curve
  • Scalable with high performance
  • highly fault tolerant during outage
Cassandra has its own use case. It performs very well as a data store. Data can be written to it at a high rate. It cannot be compared to traditional RDBMS like Oracle, because they all have their own usage. Even MongoDB, which is somewhat similar, cannot be stacked up against Cassandra since it again has its own advantages.
Cassandra has already been integrated into our environment. It has performed well and lived up to the requirements of the highly scalable application which the designers strived to achieve. It has performed admirably as a data store and a huge volume of transaction data is written to Cassandra per second. So it is quite natural to be renewed given its impact.
yixiang Shan | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Incentivized
We use Cassandra to build a fully functional POC (with the continuous production level volume of feeding data) for a shipment cloud concept for Fedex's EMEA region. This solution is composed of two parts, we use an IMDG product to keep the latest transaction of all shipments' latest "status" while we use Cassandra as our long-term transaction storage to keep all historical shipment status update events. On top of those InMemory and NoSQL storage, we built one unified RESTful based service, which depends on the user's query needs, either/and/or query the IMDG for the latest status of the shipment or query the Cassandra for the history of the shipment. Also, the Cassandra is used as the "backup" of the IMDG, in case the IMDG part is fully crashed (the worst scenario). Thanks to the time series way of persisting the data in Cassandra, we still can extract the "latest" status of a shipment from Cassandra's full transaction history with reasonable performance (slower than IMDG but much quicker than the traditional relational database).
  • Cassandra is very strong for saving the time series based transaction data model, simply by reversing the time series order when creating the data table, we can very quickly fetch the "latest" records even from millions of associated transactions because the latest record is always at the top of the search. By combining with the TTL feature of the Cassandra column, it is easy to "auto" delete the old data.
  • Cassandra combines the key-value store from Amazon's DynamoDB with the column family data model from the Google's BigTable, which makes it easy to manage both structured and non-structured data model efficiently.
  • By using the DataStax Enterprise version provided Solr integration, it can even solve some ad-hoc query needs which may not be fully taken into account at the beginning of the project when the data table is created. This extremely adds more room to play for a large enterprise or project which does require some flexibility in the practical context.
  • The linear scalability provided by Cassandra, allowing us to easily scale up/down the cluster by simply adding/removing the servers.
  • The throughput for both the read/write performance of Cassandra is quite good.
  • Managing the big cluster of Cassandra , even with the DataStax Enterprise Version, is still quite challenging for a maintenance team, considering the frequent version upgrade (even in the rolling fashion) and more frequent auto-repair, for me on this area, a powerful tool should be provided to "automate" this process as much as possible.
  • The TTL design is good, however the pain is if the TTL is set on some data already inserted, it can not be simply updated. Unless that data is reinserted again, this fact causes a lot of issues in case the business strategy is changed which requires the purge strategy to be updated also.
  • As the nature of Cassandra is still Java based, the GC sometimes eats some performance, if Cassandra can allow using more non-Heap memory space, to reduce the GC efforts which will free more power on the hardware.
  • The default indexing strategy for JSON formatted data in the DataStax's Solr integration is not available. At this moment we have to implement our own to support our JSON text stored. We extract the key field from our data which might be required to be ad-hoc searched, converting them into the JSON format (only one level Map), and save them into the Cassandra column. On top of that we want Solr to index the key of each token.
For the scenarios which need ACID support, maybe Cassandra is not the best, but for an insert only (time series based) transaction case and requirements to cope with the unpredictable data model/structure changes of the future, then Cassandra is one of the best options. If you only use the open source version of Cassandra, then without Solr integrated, you need to know your search query before you create the table, if that's not possible then Cassandra or other NoSQL DB might not your right choice.
  • The open source version of Cassandra is only suggested for learning the basic concepts and play with its core features. Unless you really want to invest a lot in your developers and architects knowing every detail of Cassandra, I prefer the DataStax enterprise version. Although the license cost is relatively high, I think they it is worth it. I'm thinking about the support, the monitoring tool OpsCenter, and the integration of Solr and Spark (for data analysis).
  • Cassandra didn't fully replace our old and traditional relation database Oracle. In addition, it opens another door for us to deal with some special business use cases that NoSQL database can do better in a more feasible and efficient way.
We evaluated MongoDB also, but don't like the single point failure possibility. The HBase coupled us too tightly to the Hadoop world while we prefer more technical flexibility. Also HBase is designed for "cold"/old historical data lake use cases and is not typically used for web and mobile applications due to its performance concern. Cassandra, by contrast, offers the availability and performance necessary for developing highly available applications. Furthermore, the Hadoop technology stack is typically deployed in a single location, while in the big international enterprise context, we demand the feasibility for deployment across countries and continents, hence finally we are favor of Cassandra
In our POC Cassandra satisfies all our needs and expectations. We would like to do an additional POC to test its cross-continent cluster level replication features, measuring the performance and data consistency level to help us finally decide how to move to production.
September 27, 2017

Cassandra Usage and Needs

Ravi Reddy | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Incentivized
We are using Cassandra based on the requirements and data availability to the application (based on queries for search).
  • Cassandra lot of API's ready available for map reducing queries (like materialized queries).
  • Cassandra uses ring architecture approach, there is no master-slave approach (like HBase). If data is published on the node, the data will get synced with other nodes in the ring architecture, compared to HBase which has a dedicated master node to orchestrate the data into its slaves.
  • Write Speed
  • Multi Data Center Replication
  • Tunable Consistency
  • Integrates with JVM because it's written in Java
  • Cassandra Query Language is a subset of SQL query (less learning curve)
  • No Ad-Hoc Queries: Cassandra data storage layer is basically a key-value storage system. This means that you must "model" your data around the queries you want to surface, rather than around the structure of the data itself.
  • There are no aggregations queries available in Cassandra.
  • Not fit for transactional data.
Cassandra data storage layer is basically a key-value storage system. This means that you must model your data around the queries you want to surface, rather than around the structure of the data itself. This can lead to storing the data multiple times in different ways to be able to satisfy the requirements of your application.
Technology selection should be done based on the need and not based on buzz words in the market (google searching). If your data need flat file approach and more searchable based on index and partition keys, then it's better to go for Cassandra. Cassandra is a better choice compared with HBase because Cassandra has a lot of API's ready and available for map reducing queries (like materialized queries). Cassandra uses ring architecture approach, there is no master-slave approach (like HBase). If data published on of the node the data will get synced with other nodes in the ring architecture when compared to HBase which has a dedicated master node to orchestrate the data into its slaves.
It depends on the data model [whether it makes sense] to structure the data in de-normalized approach.
Score 6 out of 10
Vetted Review
Verified User
Incentivized
I had used Cassandra in my academic projects which were related to cloud computing. I used it for a few projects on Salesforce where multi tenancy features are implemented. In such scenarios Cassandra was one the best choices for NoSql. Although we have used RDMS, the performance while using Cassandra was better.

I have simulated a few real time running apps like Facebook and Uber where I have used RDMS and Cassandra, and checked the performance using Jmeter. It clearly shows that Cassandra boosts the performance over RDMS. One thing I find difficult in Cassandra is following the documents, which are not so understandable.
  • Undoubtedly performance is an important reason
  • We have not encountered a single point of failure
  • Scalability of Cassandra is good which is the most important for the companies where demand is scaling day by day.
  • Cassandra has a wide range of asynchronous jobs and background tasks that are not scheduled by the client, the execution can be eccentric.
  • Because Cassandra is a key-value store, doing things like SUM, MIN, MAX, AVG and other aggregations are incredibly resource intensive if even possible to accomplish.
  • I think querying options for retrieving data is very limited.
Well Suited
Tunable Consistency
Write Speed

Less Appropriate
Ad-Hoc Queries
Unpredictable Performance
  • I have no experience with this but from the blogs and news what I believe is that in businesses where there is high demand for scalability, Cassandra is a good choice to go for.
  • Since it works on CQL, it is quite familiar with SQL in understanding therefore it does not prevent a new employee to start in learning and having the Cassandra experience at an industrial level.

These are the features which makes Cassandra different from others:

  • Cassandra is a distributed datastore, with a built-in coordinator. This means that requests are intelligently forwarded to the correct node.
  • It is generally very fast, and especially shines with write heavy workflows.
  • It scales linearly. If you double the nodes, you’ll double your throughput.
  • Embraces eventual consistency.
  • Masterless replication across data centers means that your data is always accessible.
I used it while I was doing my academic projects, since the project is over I am no longer using Cassandra currently.
175
We simulated the Facebook Application by continuously adding users .
Return to navigation