Elassandra simplifies your data stack by integrating Elasticsearch® into Apache Cassandra®.
Apache Cassandra supports asynchronous multi-datacenters replication and various mechanisms to repair lost data. By closely integrating Elasticsearch with Cassandra, Elassandra provides search features on many datacenters.
When you need to increase read/write throughput, Elassandra automatically re-shards your Elasticsearch indices as new machines are added, allowing you to smoothly scale-out to fit your business needs without down-time or heavy maintenance operations requirements.
By indexing cassandra data into Elasticsearch, Kibana will allow you to get continuous and real-time data visualization of your applications.
By using a distributed transaction, Elassandra removes the single point of failure of Elasticsearch to manage its configuration.
Cassandra is designed for write-intensive workloads, hence, making Elassandra suitable for applications where a large amount of data is to be inserted (such as infrastructure logging, IOT, or events). So, Elasticsearch indices can be rebuilt whenever needed using the Cassandra tables without the creation of data duplication.
Failover-based approaches do not truly achieve high availability as far as write operations are concerned. Thanks to its multi-master design, Elassandra is always available either when a server/container fails or restarts because of some maintenance operations.
Elassandra is distributed under Apache License v2
Join us at Elassandra Google group.
For further information visit Q&A about using elassandra on Stack Overflow.
If you suspect a bug in Elassandra, please do report it on github.com.
Please provide us with as much details as you can, such as info on your CQL schema and Elasticsearch mapping and nodetool gossipinfo
output.
Commercial support is available on Strapdata.com
For pull requests https://github.com/strapdata/elassandra/pulls.
git clone --recurse-submodules https://github.com/strapdata/elassandra
cd elassandra
git checkout -b pull_request_branch
gradle assemble