blob: 0a32e095875ed34cab52cbda704b24adbec5e721 [file] [log] [blame]
= Cassandra Ecosystem
:page-layout: basic
:page-role: tiles
:!sectids:
Our ecosystem includes a range of third-party Cassandra projects, tools, products, and services that may be useful to end users. These are not supported by the community. If you have one to add, please do so by https://github.com/apache/cassandra-website/blob/trunk/README.md[submitting a pull request,window=blank].
// start accordion
[openblock,cassandra-cloud]
------
[discrete]
=== Cassandra Cloud Offerings
[openblock,accordion-content ml-medium hidden]
--------
https://aiven.io/cassandra[Aiven for Apache Cassandra,window=_blank]: Aiven for Apache Cassandra is a fully managed NoSQL database, deployable in the cloud of your choice. Snap it into your existing workflows with the click of a button, automate away the mundane tasks, and focus on building your core apps. Now running Cassandra 3.11.
https://aws.amazon.com/keyspaces/[Amazon Keyspaces (for Apache Cassandra),window=_blank]: Scalable, highly available, and managed Apache Cassandra–compatible database service.
https://docs.microsoft.com/en-us/azure/cosmos-db/cassandra-introduction[Azure Cosmos DB Cassandra API,window=_blank]: Enables you to interact with data stored in https://docs.microsoft.com/en-us/azure/cosmos-db/introduction[Azure Cosmos DB,window=_blank] using the Cassandra Query Language (CQL) , Cassandra-based tools (like cqlsh) and Cassandra client drivers that you're already familiar with.</p>
https://azure.microsoft.com/en-us/services/managed-instance-apache-cassandra/[Azure Managed Instance for Apache Cassandra,window=_blank]: Azure Managed Instance for Apache Cassandra is a service offering moderate management, elasticity, and instance-based pricing for Cassandra data. Go beyond traditional lift and shift by expanding your Cassandra workloads to the cloud and keep control over what matters to you.
https://astra.datastax.com/[DataStax Astra,window=_blank]: Cloud-native, serverless database as-a-service built on Apache Cassandra™, complete with a free-tier and CQL, REST, schemaless JSON Document and GraphQL APIs in addition to language drivers for faster development. It also features an improved secondary index implementation called storage attached indexing (SAI) where you can search/filter on non-primary key columns. Astra is available on AWS, Azure and Google Cloud.
https://github.com/strapdata/elassandra[Elassandra,window=_blank]: Elassandra is an Apache Cassandra distribution including an Elasticsearch search engine. Elassandra is a multi-master multi-cloud database and search engine with support for replicating across multiple datacenters in active/active mode.
https://www.instaclustr.com/solutions/managed-apache-cassandra[Instaclustr Hosted & Managed Apache Cassandra as a Service,window=_blank]: Instaclustr provides a fully managed and SOC 2 certified hosted & managed service for Apache Cassandra® on AWS, Azure, GCP and IBM Cloud.
--------
------
// end accordion
// start accordion
[openblock,cassandra-cloud]
------
[discrete]
=== Cassandra Installation Tools
[openblock,accordion-content ml-medium hidden]
--------
https://hub.docker.com/_/cassandra[Docker community Cassandra images,window=blank]: Docker images for Apache Cassandra maintained by the Docker community
https://downloads.datastax.com/#desktop[DataStax Desktop,window=blank]: Cross-platform (Windows, MacOSX, Linux) application that allows developers to quickly explore Apache Cassandra™ with a few clicks on their laptop, complete with tutorials and walkthroughs.
https://github.com/thelastpickle/tlp-cluster[The Last Pickle tlp-cluster,window=blank]: tlp-cluster, a tool for launching Cassandra clusters in AWS (DataStax)
--------
------
// end accordion
// start accordion
[openblock,cassandra-cloud]
------
[discrete]
=== Cassandra Tools
[openblock,accordion-content ml-medium hidden]
--------
https://github.com/datastax/adelphi[Adelphi,window=blank]: Automation tool for testing open-source Cassandra using cassandra-diff, nosqlbench, and fqltool.
https://www.lagomframework.com/documentation/1.6.x/scala/PersistentEntityCassandra.html[Akka-Persistence-Cassandra,window=blank] : https://github.com/lagom/lagom[Lagom,window=_blank] focuses on ensuring that your application realizes the full potential of the Reactive Manifesto while delivering a high productivity development environment, and seamless production deployment experience.
https://galaxy.ansible.com/community/cassandra[Ansible Cassandra Collection,window=blank]: This collection called cassandra aims at providing all Ansible modules allowing to interact with Apache Cassandra. https://github.com/ansible-collections/community.cassandra[Link to GitHub repo,window=blank].
https://ignite.apache.org/[Apache Ignite,window=blank]: Use Ignite as a traditional SQL database by leveraging JDBC drivers, ODBC drivers, or the native SQL APIs that are available for Java, C#, C++, Python, and more.
https://github.com/Azure-Samples/cassandra-proxy[Azure-Samples/Cassandra Proxy,window=blank]: This proxy handles client connections and forwards them to two Cassandra clusters simultaneously.
https://cassandra.tools/[Cassandra.Tools,window=blank]: Curated site with top open-source tools for Cassandra.
https://github.com/instaclustr/cassandra-lucene-index[Cassandra Lucene Index,window=blank]: This is a plugin for Apache Cassandra that extends its index functionality to provide near real time search such as ElasticSearch or Solr, including full text search capabilities and free multivariable, geospatial and bitemporal search
https://github.com/hhandoko/cassandra-migration[Cassandra Migration,window=blank]: Cassandra Migration is a simple and lightweight Apache Cassandra database schema migration tool.
https://github.com/criteo/cassandra_exporter[Cassandra Prometheus Exporter,window=blank]: Standalone application which exports Cassandra metrics through a prometheus friendly endpoint
http://github.com/pyr/cyanite[Cyanite,window=blank]: Cyanite is a daemon which provides services to store and retrieve timeseries data.
https://downloads.datastax.com/#bulk-loader[DataStax Bulk Loader,window=blank]: Easy-to-use command line utility for loading and unloading JSON or CSV files to/from the database, counting rows in tables and identifying large partitions.
https://github.com/datastax/metric-collector-for-apache-cassandra[DataStax Metrics Collector for Cassandra,window=blank]: Based on Collectd, aggregates OS and Cassandra metrics along with diagnostic events to facilitate problem resolution and remediation
https://github.com/uber-go/dosa[DOSA,window=blank]: DOSA is a storage framework that provides a declarative object storage abstraction for applications in Golang and (soon) Java.
https://doc.dovecot.org/admin_manual/cassandra/cassandra/[Dovecot,window=blank]: is among the best performing IMAP servers while still supporting the standard mbox and Maildir formats.
https://github.com/composable-systems/dropwizard-cassandra[Dropwizard-Cassandra,window=blank]: The dropwizard-cassandra library provides useful functionality for Dropwizard apps that communicate with Cassandra clusters.
https://bazaarvoice.github.io/emodb/[EmoDB,window=blank]: EmoDB is a RESTful HTTP data store built on top of Cassandra that stores schemaless JSON objects and offers a databus that allows subscribers to watch for changes to those events. It's designed to span multiple data centers and features massive non-blocking writes and no synchronous cross data center communication.
https://github.com/filodb/FiloDB[FiloDB,window=blank]: Distributed, Prometheus-compatible, real-time, in-memory, massively scalable, multi-schema time series/event/operational database.
https://github.com/frees-io/freestyle[Freestyle,window=blank]: Build stack-safe purely functional applications and libraries that support parallel and sequential computations where declaration is decoupled from interpretation.
https://github.com/gocql/gocql[Gocql,window=blank]: Package gocql implements a fast and robust Cassandra client for the Go programming language.
https://github.com/HadesArchitect/grafana-cassandra-source[Grafana-Cassandra-Source,window=blank]: Apache Cassandra Datasource for Grafana. This datasource is to visualise time-series data stored in Cassandra/DSE
https://hackolade.com/column-oriented.html#cassandra[Hackolade,window=blank]: Visual data modeling tool for Cassandra
https://github.com/vcivelek/hazelcastdse[Hazelcast-Cassandra,window=blank]: This is a sample implementation of Hazelcast MapStore with DSE Cassandra using DSE Object Mapper.
https://github.com/instaclustr/esop[Instaclustr Esop,window=blank]: Swiss knife for backup and restore of your node to GCP, Azure, S3, Ceph etc. Supports backup and restoration of commit logs too. Esop is embedded https://github.com/instaclustr/icarus[in Instaclustr,window=blank] Icarus sidecar so you may backup and restore your cluster remotely and on-the-fly without any disruption.
https://github.com/instaclustr/cassandra-exporter[Instaclustr Exporter,window=blank]: Java agent that exports Cassandra metrics to Prometheus.
https://github.com/instaclustr/instaclustr-icarus-go-client[Instaclustr Go Client for Instaclustr Icarus,window=blank]: Go client for Instaclustr Icarus sidecar.
https://github.com/instaclustr/cassandra-kerberos[Instaclustr Kerberos plugin,window=blank]: A GSSAPI authentication provider for Apache Cassandra.
https://github.com/instaclustr/cassandra-java-driver-kerberos[Instaclustr Java Driver for Kerberos,window=blank]: A GSSAPI authentication provider for the Cassandra Java driver.
https://github.com/instaclustr/cassandra-ldap[Instaclustr LDAP Authenticator,window=blank]: LDAP Authenticator for Apache Cassandra.
https://github.com/instaclustr/instaclustr-minotaur[Instaclustr Minotaur,window=blank]: Command line tool for consistent rebuilding of a Cassandra cluster.
https://github.com/instaclustr/cassandra-sstable-generator[Instaclustr SSTable Generator,window=blank]: CLI tool for programmatic generation of Cassandra SSTables.
https://github.com/instaclustr/cassandra-sstable-tools[Instaclustr SSTable Tools,window=blank]: A command line tool that helps admins get summaries, metadata, partition info, and cell info for SSTables.
https://github.com/instaclustr/cassandra-ttl-remover[Instaclustr TTL Remover,window=blank]: Command line tool for rewriting SSTables to remove TTLs.
https://github.com/JanusGraph/janusgraph[JanusGraph,window=blank]: JanusGraph is a highly scalable graph database optimized for storing and querying large graphs with billions of vertices and edges distributed across a multi-machine cluster.
https://github.com/apache/james-project[Java Apache Mail Enterprise Server,window=blank]: Modular architecture based on a rich set of modern and efficient components which provides at the end complete, stable, secure and extendable Mail Servers running on the JVM.
https://github.com/kairosdb/kairosdb/tree/develop/src/main/java/org/kairosdb/datastore/cassandra[KairosDB,window=blank]: KairosDB is a fast distributed scalable time series database written on top of Cassandra.
http://github.com/Kong/kong[Kong,window=blank]: is a cloud-native, fast, scalable, and distributed Microservice Abstraction Layer.
https://github.com/thelastpickle/tlp-stress[The Last Pickle Cassandra stress tool, tlp-stress,window=blank]: A workload-centric stress tool for Apache Cassandra. Designed for simplicity, no math degree required. (DataStax)
https://github.com/thelastpickle/cassandra-medusa[The Last Pickle Medusa,window=blank]: Apache Cassandra Backup and Restore Tool (DataStax)
https://github.com/thelastpickle/cassandra-reaper[The Last Pickle Reaper,window=blank]: Automated repair tool for Apache Cassandra (DataStax)
https://github.com/tjake/Solandra[Lucandra/Solandra,window=blank]: https://github.com/tjake/Solandra
https://nifi.apache.org/[NiFi,window=blank]: Apache NiFi supports powerful and scalable directed graphs of data routing, transformation, and system mediation logic.
https://github.com/Netflix/nf-data-explorer[Netflix Data Explorer,window=blank]: The Netflix Data Explorer tool allows users to explore data stored in several popular datastores.
https://github.com/nosqlbench/nosqlbench[NoSQLBench,window=blank]: Pluggable benchmarking suite for Cassandra and other distributed systems
https://github.com/OpenNMS/opennms[OpenNMS,window=blank]: OpenNMS is the world's first enterprise grade network management application platform developed under the open source model.
https://outworkers.github.io/phantom/comparison.html[Phantom,window=blank]: The underlying engine of all other drivers. Phantom, Quill, and the Spark connector all use it underneath the hood to connect and execute queries.
https://github.com/PHPSocialNetwork/phpfastcache[PhpFastCach,window=blank]: Simple Yet Powerful PHP Caching Class: One class for many backend cache. You don't need to rewrite your code many times again.
https://github.com/getquill/quill[Quill,window=blank]: Quill provides a Quoted Domain Specific Language (QDSL) to express queries in Scala and execute them in a target language.
https://github.com/MachineAcuity/rebar[Rebar,window=blank]: Multi-tenant SaaS boilerplate + examples for universal web application with React, Material-UI, Relay, GraphQL, JWT, Node.js, C* DB - Cassandra/Elassandra/Scylla.
https://github.com/rickbergfalk/sqlpad[SQLPad,window=blank]: A web app for writing and running SQL queries and visualizing the results.
https://stargate.io/[Stargate,window=blank]: Open source data gateway providing CQL, Schemaless JSON Document, REST, and GraphQL APIs for Apache Cassandra.
https://github.com/Stratio/cassandra-lucene-index[Stratio,window=blank]: Stratio’s Cassandra Lucene Index is a plugin for Apache Cassandra that extends its index functionality to provide near real time search such as ElasticSearch or Solr, including full text search capabilities and free multivariable, geospatial and bitemporal search.
https://strongbox.github.io/[Strongbox,window=blank]: Strongbox is an OpenSource artifact repository manager written in Java.
https://github.com/temporalio/temporal[Temporal,window=blank]: Temporal is a microservice orchestration platform which enables developers to build scalable applications without sacrificing productivity or reliability.
https://github.com/trellis-ldp/trellis[Trellis LDP,window=blank]: Trellis is an enterprise-ready linked data server built on existing Web standards that is modular, extensible and fast.
https://github.com/intuit/wasabi[Wasabi,window=blank]: Wasabi A/B Testing Service is a real-time, enterprise-grade, 100% API driven project.
https://github.com/wikimedia/restbase[Wikimedia RestBase,window=blank]: RESTBase was built to provide a low-latency & high-throughput API for Wikipedia / Wikimedia content.
https://github.com/apache/zeppelin[Zeppelin,window=blank]: Zeppelin is a web-based notebook that enables interactive data analytics.
--------
------
// end accordion
// start accordion
[openblock,cassandra-cloud]
------
[discrete]
=== Cassandra Kubernetes Operators
[openblock,accordion-content ml-medium hidden]
--------
https://github.com/mesosphere/kudo-cassandra-operator[D2iQ Cassandra Kudo Operator,window=blank]: The KUDO Cassandra Operator makes it easy to deploy and manage Apache Cassandra on Kubernetes.
https://github.com/datastax/cass-operator[DataStax cass-operator,window=blank]: The DataStax Kubernetes Operator for Apache Cassandra
https://github.com/instaclustr/cassandra-operator[Instaclustr cassandra-operator,window=blank]: The Cassandra operator manages Cassandra clusters deployed to Kubernetes and automates tasks related to operating a Cassandra cluster.
https://k8ssandra.io/[K8ssandra,window=blank]: K8ssandra provides a production-ready platform for running Apache Cassandra on Kubernetes, including automation for operational tasks such as installation via helm, repairs, backups, and monitoring. K8ssandra includes the https://github.com/datastax/cass-operator[DataStax cass-operator,window=blank].
https://orange-opensource.github.io/casskop/[Orange CassKop,window=blank]: The Orange Cassandra operator is a Kubernetes operator to automate provisioning, management, autoscaling and operations of Apache Cassandra clusters deployed to K8s.
https://github.com/rook/rook[Rook,window=blank]: Rook is an open source cloud-native storage orchestrator for Kubernetes, providing the platform, framework, and support for a diverse set of storage solutions to natively integrate with cloud-native environments.
https://github.com/sky-uk/cassandra-operator[Sky Cassandra Operator,window=blank]: The Sky Cassandra Operator is a Kubernetes operator that manages Cassandra clusters inside Kubernetes.
--------
------
// end accordion
// start accordion
[openblock,cassandra-cloud]
------
[discrete]
=== Cassandra Management Sidecars
[openblock,accordion-content ml-medium hidden]
--------
https://github.com/apache/cassandra-sidecar[Apache Cassandra cassandra-sidecar,window=blank]: Sidecar for the highly scalable Apache Cassandra database, built as part of the Apache Cassandra project.
https://github.com/datastax/management-api-for-apache-cassandra[DataStax Management API for Apache Cassandra,window=blank]: RESTful / Secure Management Sidecar for Apache Cassandra
https://github.com/datastax/spring-boot[DataStax Spring Boot,window=blank]: Spring Boot extension
https://github.com/instaclustr/icarus[Instaclustr Icarus,window=blank]: Icarus is meant to be run alongside of Cassandra, talking to Cassandra via JMX. Instaclustr Esop is embedded in Icarus for on-the-fly cluster backup and restore using various cloud storage providers as a source or destination. Icarus is used primarily as a backup and restore tool, and is containerized in https://github.com/instaclustr/cassandra-operator[Instaclustr cassandra-operator,window=blank] and https://orange-opensource.github.io/casskop/[Orange CassKop,window=blank].
--------
------
// end accordion
// start accordion
[openblock,cassandra-cloud]
------
[discrete]
=== Developer Frameworks
[openblock,accordion-content ml-medium hidden]
--------
https://camel.apache.org/components/latest/cql-component.html[Apache Camel,window=blank]: Camel is an Open Source integration framework that empowers you to quickly and easily integrate various systems consuming or producing data.
http://r4fek.github.io/django-cassandra-engine/[Django Cassandra Engine,window=blank]: Cassandra backend for Django Framework that allows you to use Cqlengine directly in your project.
https://express-cassandra.readthedocs.io/en/stable/[Express Cassandra,window=blank]: Express-Cassandra is a Cassandra ORM/ODM/OGM for NodeJS with Elassandra & JanusGraph Support.
https://github.com/uber/marmaray/blob/master/marmaray/src/main/java/com/uber/marmaray/common/converters/data/CassandraSinkDataConverter.java[Marmaray,window=blank]: Marmaray is a generic Hadoop data ingestion and dispersal framework and library. It is a plug-in based framework built on top of the Hadoop ecosystem where support can be added to ingest data from any source and disperse to any sink leveraging the power of Apache Spark.
https://github.com/micronaut-projects/micronaut-cassandra[Micronaut-Cassandra,window=blank]: Adds support for the DataStax Cassandra Driver to a Micronaut application.
https://quarkus.io/guides/cassandra[Quarkus extension for Apache Cassandra,window=blank]: An Apache Cassandra(R) extension for Quarkus. Quarkus is A Kubernetes Native Java stack tailored for OpenJDK HotSpot and GraalVM, crafted from the best of breed Java libraries and standards.
https://spring.io/projects/spring-data-cassandra[Spring Data Cassandra,window=blank]: With the power to stay at a high level with annotated POJOs, or at a low level with high performance data ingestion capabilities, the Spring Data for Apache Cassandra templates are sure to meet every application need
https://github.com/tschellenbach/Stream-Framework[Stream Framework,window=blank]: Stream Framework is a Python library which allows you to build activity streams & newsfeeds using Cassandra and/or Redis.
https://www.testcontainers.org/modules/databases/cassandra/[TestContainers,window=blank]: Testcontainers is a Java library that supports JUnit tests, providing lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container.
--------
------
// end accordion
// start accordion
[openblock,cassandra-cloud]
------
[discrete]
=== Cassandra Connectors
[openblock,accordion-content ml-medium hidden]
--------
[discrete]
==== Apache Drill
https://drill.apache.org/docs/cassandra-storage-plugin/[Cassandra Storage Plugin,window=blank]: Drill’s Cassandra storage plugin allows you to execute SQL queries against Cassandra tables.
[discrete]
==== Apache Flink
https://ci.apache.org/projects/flink/flink-docs-stable/dev/connectors/cassandra.html[Flink Sink Connector,window=blank]: This connector provides sinks that writes data into a Apache Cassandra database.
[discrete]
==== Apache Kafka
https://www.confluent.io/hub/confluentinc/kafka-connect-cassandra[Confluent Connect Cassandra,window=blank]: The Confluent Cassandra Sink Connector is used to move messages from Kafka into Apache Cassandra.
https://downloads.datastax.com/#akc[DataStax Sink Connector:,window=blank]: The DataStax Apache Kafka Connector automatically takes records from Kafka topics and writes them to a DataStax Enterprise or Apache Cassandra™ database. This sink connector is deployed in the Kafka Connect framework and removes the need to build a custom solution to move data between these two systems.
https://docs.lenses.io/connectors/sink/cassandra.html[Lenses Sink Connector,window=blank]: The Cassandra Sink allows you to write events from Kafka to Cassandra. The connector converts the value from the Kafka Connect SinkRecords to JSON and uses Cassandra’s JSON insert functionality to insert the rows. The task expects pre-created tables in Cassandra.
https://docs.lenses.io/connectors/source/cassandra.html[Lenses Source Connector,window=blank]: Kafka Connect Cassandra is a Source Connector for reading data from Cassandra and writing to Kafka.
https://github.com/lensesio/stream-reactor[Stream-Reactor,window=blank]: Lenses offers SQL (for data browsing and Kafka Streams), Kafka Connect connector management, cluster monitoring, and more.
[discrete]
==== Apache Pulsar
https://pulsar.apache.org/docs/en/io-quickstart/#connect-pulsar-to-cassandra[Pulsar Sink Connector Cassandra Connector,window=blank]: The Pulsar Cassandra Sink connector is used to write messages to a Cassandra Cluster.
[discrete]
==== Apache Spark
https://github.com/datastax/spark-cassandra-connector[DataStax Spark Cassandra Connector,window=blank]: This library lets you expose Cassandra tables as Spark RDDs and Datasets/DataFrames, write Spark RDDs and Datasets/DataFrames to Cassandra tables, and execute arbitrary CQL queries in your Spark applications.
[discrete]
==== Presto
https://prestodb.io/docs/current/connector/cassandra.html[Presto,window=blank]: The Cassandra connector allows querying data stored in Cassandra.
--------
------
// end accordion
// start accordion
[openblock,cassandra-cloud]
------
[discrete]
=== Professional Support
[openblock,accordion-content ml-medium hidden]
--------
https://anant.us/cassandra/[Anant,window=blank]
https://luna.datastax.com/[DataStax Luna,window=blank]
https://www.datastax.com/services/support/premium-support[DataStax Premium Support,window=blank]
https://www.datastax.com/services/professional-services[DataStax Professional Services,window=blank]
https://digitalis.io/apache-cassandra-services/[Digitalis Services,window=blank]
https://www.instaclustr.com/services/[Instaclustr,window=blank]
https://opencredo.com/about-us/[Open Credo,window=blank]
--------
------
// end accordion
// start accordion
[openblock,cassandra-cloud]
------
[discrete]
=== Education
[openblock,accordion-content ml-medium hidden]
--------
https://academy.datastax.com/[DataStax Academy,window=blank]
https://www.datastax.com/cassandra-workshop-series[DataStax Workshops,window=blank]
https://www.instaclustr.com/instaclustr-labs/training/[Instaclustr Training,window=blank]
--------
------
// end accordion