Apache Cassandra vs. Elasticsearch

Overview
ProductRatingMost Used ByProduct SummaryStarting Price
Cassandra
Score 9.0 out of 10
N/A
Cassandra is a no-SQL database from Apache.N/A
Elasticsearch
Score 8.7 out of 10
N/A
Elasticsearch is an enterprise search tool from Elastic in Mountain View, California.
$16
per month
Pricing
Apache CassandraElasticsearch
Editions & Modules
No answers on this topic
Standard
$16.00
per month
Gold
$19.00
per month
Platinum
$22.00
per month
Enterprise
Contact Sales
Offerings
Pricing Offerings
CassandraElasticsearch
Free Trial
NoNo
Free/Freemium Version
NoNo
Premium Consulting/Integration Services
NoNo
Entry-level Setup FeeNo setup feeNo setup fee
Additional Details
More Pricing Information
Community Pulse
Apache CassandraElasticsearch
Features
Apache CassandraElasticsearch
NoSQL Databases
Comparison of NoSQL Databases features of Product A and Product B
Apache Cassandra
8.0
Ratings
10% below category average
Elasticsearch
-
Ratings
Performance8.50 Ratings00 Ratings
Availability8.80 Ratings00 Ratings
Concurrency7.60 Ratings00 Ratings
Security8.00 Ratings00 Ratings
Scalability9.50 Ratings00 Ratings
Data model flexibility6.70 Ratings00 Ratings
Deployment model flexibility7.00 Ratings00 Ratings
Best Alternatives
Apache CassandraElasticsearch
Small Businesses
IBM Cloudant
IBM Cloudant
Score 7.4 out of 10
Yext
Yext
Score 8.9 out of 10
Medium-sized Companies
IBM Cloudant
IBM Cloudant
Score 7.4 out of 10
Guru
Guru
Score 9.5 out of 10
Enterprises
IBM Cloudant
IBM Cloudant
Score 7.4 out of 10
Guru
Guru
Score 9.5 out of 10
All AlternativesView all alternativesView all alternatives
User Ratings
Apache CassandraElasticsearch
Likelihood to Recommend
6.0
(0 ratings)
9.0
(0 ratings)
Likelihood to Renew
8.6
(0 ratings)
10.0
(0 ratings)
Usability
7.0
(0 ratings)
10.0
(0 ratings)
Support Rating
7.0
(0 ratings)
7.8
(0 ratings)
Implementation Rating
7.0
(0 ratings)
9.0
(0 ratings)
User Testimonials
Apache CassandraElasticsearch
Likelihood to Recommend
Cassandra excels in a broad range of applications -- especially if you understand its data model and write your applications accordingly. It's an excellent choice for time-series data, and a poor choice for application queues. It performs the best if you can simply record history and compute from it, rather than going back and editing or deleting things a lot.
Read full review
Elasticsearch is really well suited for searching text (Natural Language Processing) and you can fine tune the searches and scoring very well. I like the ability to find Significant Terms in the Index, where you can find aggregations that are really relevant to a specific search. It also allows for queries to lead to new queries via aggregations which is great for navigating your data. It is less suited to doing more complex aggregations where slices of data are required to be processing using guassian normalizations. And doing searches which join different documents is very very hard, and requires serious thought on how to denormalize data.
Read full review
Pros
  • High Availability - we utilize the data replication features of Cassandra. This enables us to access our data even when several nodes have gone down
  • Data Locality - our architecture combines Cassandra storage nodes and computation nodes in the same machine. This enables us to utilize data locality and limit expensive network IO to read data.
  • Elasticity - Cassandra is a shared nothing architecture. Nodes can be added very easily and they discover the network topology. As soon as a node has joined the Cassandra ring, the data is redistributed among the existing nodes and streamed to it automatically.
Read full review
  • Super-fast search on millions of documents. We've got over 2 billion documents in our index and the retrieve speeds are still in the < 1-second range.
  • Analytics on top of your search. If you organize your data appropriately, Elasticsearch can serve as a distributed OLAP system
  • Elasticsearch is great for geographic data as well, including searching and filtering with geojson, and a variety of geospatial algorithms.
Read full review
Cons
  • 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.
Read full review
  • Setting Java memory thresholds can be a pain for those not accustomed to things like Eden Space & Old Generation which can lead to over allocation, or more likely, under allocation. Apache Solr had a similar issue. It would be nice if the program would take an extra step and dogfood it's own advice by analyzing the system & processes to return a solid recommendation for that configuration. The proper configuration information is outlined in the documentation, it would be nice if that was automated.
  • The only health check that ElasticSearch reports back is a "red" status without any real solid information about what is going on, though its usually memory thresholds or disk I/O. I am currently on ElasticSearch 1.5 so that may have changed for newer versions. When the status goes "red", I as the administrator of the software, feel like I lose control of whats going on which should rarely happen. Something more verbose would eliminate that.
  • This is more of a critique of the ElasticStack in general. The whole top to bottom stack is starting to get feature creep with things that are better suited in other software and increasing the barrier for entry for people to get started with setting up a robust logging infrastructure. ElasticSearch as a storage search engine, is pretty streamlined, but I can see that the tools that comprise the ELK Stack are going to require a certification with constant study at some point. During major release for Logstash a while back, it literally took a month to learn a new language because Elastic completely changed the syntax. For a medium sized organization of only a couple of admins, that is a pretty high bar where time is money. They really should work on refining/automating the tools & search engine they have, instead of shoehorning/changing things on to an already rock solid foundation.
Read full review
Likelihood to Renew
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.
Read full review
We're pretty heavily invested in ElasticSearch at this point, and there aren't any obvious negatives that would make us reconsider this decision.
Read full review
Usability
It’s great tool but it can be complicated when it comes administration and maintenance.
Read full review
To get started with Elasticsearch, you don't have to get very involved in configuring what really is an incredibly complex system under the hood. You simply install the package, run the service, and you're immediately able to begin using it. You don't need to learn any sort of query language to add data to Elasticsearch or perform some basic searching. If you're used to any sort of RESTful API, getting started with Elasticsearch is a breeze. If you've never interacted with a RESTful API directly, the journey may be a little more bumpy. Overall, though, it's incredibly simple to use for what it's doing under the covers.
Read full review
Support Rating
Sometimes instead giving straight answer, we ‘re getting transfered to talk professional service.
Read full review
We've only used it as an opensource tooling. We did not purchase any additional support to roll out the elasticsearch software. When rolling out the application on our platform we've used the documentation which was available online. During our test phases we did not experience any bugs or issues so we did not rely on support at all.
Read full review
Implementation Rating
No answers on this topic
Do not mix data and master roles. Dedicate at least 3 nodes just for Master
Read full review
Alternatives Considered
Apache Cassandra has the best of both worlds, it is a Java based NoSQL, linearly scalable, best in class
tunable performance across different workloads, fault tolerant, distributed, masterless, time series database. We have used both Apache HBase and MongoDB for some use cases which were within hadoop setup and JSON (JavaScript Object Notation) document store respectively, but given the overall factors favoring Apache Cassandra, it is a technology choice for multiple platforms!
Read full review
Elasticsearch is the most well-known and supported free data platform that we identified. We are taking advantage of community knowledge and practices. In terms of flexibility and breadth of use cases no other competitor came close to Elasticsearch. We've tried Solr in the past be we encountered issues which were deal-breaking for us. MongoDB - it just did not pass our evaluation parameters as a main data platform. We still use it for smaller purposes, though.
Read full review
Return on Investment
  • 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.
Read full review
  • I am not in finance and I suspect even if I was this would be hard to measure. But for sure, Elasticsearch has enabled us to have the most flexible data model in the industry for our customer's data, and in doing so we have attracted many many technical customers and got much of their $$$.
  • One problem with Elasticsearch is that because it runs on the JVM, there can be some stop-the-world JVM garbage collections happening that can take down nodes and reduce indexing speed. The solution for that tends to be "let's just upgrade the CPU on that machine". And before you know it you are paying $$$ because this'll happen with 40+ machines.
  • On the other hand, I do think that ES is more efficient than other systems and so it requires fewer nodes to keep it highly tolerant and available, so we probably saved some money that way.
Read full review
ScreenShots