What is Apache Cassandra?

Apache Cassandra is an open-source, NoSQL database designed to store data for applications that require fast read and write performance. For example, you can use Cassandra to store user profile information for online video games, device metadata for internet of things (IoT) applications, or records for events.

Learn how Amazon Keyspaces (for Apache Cassandra) can help you run Cassandra workloads more easily by using a scalable, serverless, highly available, and fully managed Apache Cassandra-compatible database service.

Cassandra data model

Cassandra is a nonrelational data store. You organize Cassandra data into keyspaces and tables. Keyspaces are collections of tables that you can use to represent table groupings, such as different system components, applications, or environments. Each table in Cassandra has a schema. Schemas define the columns within a table, and the data type of each column. Cassandra stores data within tables in rows. Each row in a table has a primary key which uniquely identifies the row within the table. Primary keys are composed of partition keys and optional clustering columns. Partition keys can be simple and made up of a single column, or rows can have compound partition keys composed from multiple columns. Rows also can have clustering columns. Cassandra uses clustering columns to sort rows within the same partition.

Learn more about Data Modeling in Amazon Keyspaces (for Apache Cassandra) in the Amazon Keyspaces Developer Guide.

Cassandra Query Language (CQL)

You can read, write, update, and delete data from Cassandra by using the Cassandra Query Language (CQL). CQL is a flexible, SQL-like API that enables developers to execute data definition language (DDL) and data manipulation language (DML) statements. You use DDL statements to create and define resources. For example, the following DDL statement creates a table named books in a keyspace named bookstore with a primary key column of isbn.

CREATE TABLE bookstore.books (
	isbn text,
	title text,
	author text,
	year_of_publication int

You use DML statements to manipulate data in a table. For example, the following DML statement inserts a new row into books table.

INSERT INTO bookstore.books (isbn, title, author, year_of_publication,) VALUES (‘0101010101010’, ‘The Long River’, ‘Jim Sozeb’,’1994’);

Learn more about CQL in the CQL Language Reference for Amazon Keyspaces (for Apache Cassandra).

Cassandra open-source community

Cassandra is an open-source, Apache project. As an active member of the Apache Cassandra community, AWS publishes code samples for a variety of programming languages to help new Cassandra developers get started. You can find these code samples on the AWS Samples Amazon Keyspaces examples GitHub repository.

The Apache Cassandra community’s main annual event is ApacheCon. Below are videos from AWS presented sessions from previous ApacheCon conferences.

ApacheCon@Home 2020: Re-imagining authentication using short-term credentials
ApacheCon@Home 2021: The future of security for cqlsh
ApacheCon@Home 2020: Advanced data modeling techniques for Cassandra
ApacheCon@Home 2021: Testing patterns of Apache Cassandra
Get started with Cassandra today

Get started with Cassandra quickly by creating your first keyspace and table with just a few clicks

Learn more 
Sign up for an AWS account
Sign up for a free account

Instantly access the AWS Free Tier. 

Sign up 
Start building in the console
Start building in the console

Get started building with Amazon Keyspaces in the AWS Management Console.

Sign in