Skip to main content

Amazon Keyspaces (for Apache Cassandra) features

Compatible with Apache Cassandra

Open all

Amazon Keyspaces is compatible with the open-source Cassandra CQL API, so you can migrate your existing Cassandra tables to Amazon Keyspaces while continuing to use your existing application code. Learn more about supported CQL APIs.

You can use existing Apache Cassandra 2.0–licensed drivers and developer tools with Amazon Keyspaces. Open-source Cassandra drivers are available for Java, Python, Ruby, .NET, Node.js, PHP, C++, and Perl.

Serverless

Open all

With on-demand capacity mode, you do not have to overprovision throughput for unexpected peak workloads. Capacity is managed automatically, and you pay for only the resources you use. Learn more about on-demand capacity mode on the pricing page.

Provisioned capacity mode helps you optimize the price of throughput if you have predictable application traffic. Just specify the number of reads and writes per second in advance you expect your application to perform. You can use auto scaling to adjust your table’s capacity automatically in response to changes in application traffic to maintain performance without overprovisioning capacity. Learn more about provisioned capacity mode on the pricing page.

Use Time to Live (TTL) to set expiration times on rows and attributes in your Keyspaces tables, and automatically delete the records after they expire. Keyspaces TTL is fully managed, so you don't need to manage or provision additional read/write capacity. You also do not need to manage tombstones or low-level system operations such as compaction. Keyspaces deletes expired data automatically and transparently. 

Performance at scale

Open all

Amazon Keyspaces provides consistent single-digit-millisecond read and write performance at any scale, so you can build applications with low latency to provide a smooth user experience.

Amazon Keyspaces tables scale in response to actual application traffic, with virtually unlimited throughput and storage. There is no limit on the size of tables or number of rows per table.

Amazon Keyspaces is integrated with Amazon CloudWatch. CloudWatch collects and processes data from Amazon Keyspaces into readable metrics, providing you with visibility into how your application is performing.

Highly available and secure

Open all

Amazon Keyspaces offers up to 99.999% multi-Region availability (SLA). Your table data is also automatically replicated three times across multiple AWS Availability Zones for durability.

With multi-Region replication, you can replicate your data with fully-managed, active-active replication across the AWS Regions of your choice. Multi-region Replication improves both availability (up to 99.999%) and resiliency from regional degradation while also providing low latency local reads and writes for multi-Region applications. Since all Regions in your keyspace can serve reads and writes, in the rare event of a single AWS Region degradation, you can recover by simply re-directing your application to a different Region in your multi-Region keyspace without any impact to your application's performance or scale. As a fully-managed capability, multi-Region replication also eliminates the need to build complex failover logic and the difficult work of resolving update conflicts and correcting for data divergence issues.

When you create a multi-Region keyspace, it consists of multiple replica keyspaces (one per AWS Region) that are treated as a single unit. Every Region has the same table schema. When an application writes data in one Region, Keyspaces uses storage-based asynchronous replication to propagate the writes across Regions typically in less than one second, with no impact to your application's availability. Replication in Keyspaces has little to no impact on your database queries since it does not share compute resources, which allows your applications to support high write throughput or bursty use cases.

If applications update the same data in different Regions at about the same time, conflicts can arise. To help ensure eventual consistency, Keyspaces uses a cell-level timestamps and a last-writer-wins reconciliation between concurrent updates. Conflict resolution is fully managed and happens in the background without any impact to application's availability. In the unlikely event of a single-Region failure, you can simply point your application to one of the healthy Regions in your multi-Region keyspace. As all Regions in a multi-Region keyspace support both reads and writes, there is no impact to your application's availability. Keyspaces keeps track of any writes that have been performed on your multi-Region keyspace but has not been yet propagated to all replica Regions. Once the Region comes back online, Keyspaces automatically syncs any missing data changes allowing you to recover without any impact to your application's availability.

You can create a new multi-Region keyspace with just a few clicks in the AWS Management Console or by using the AWS SDK or CLI, and more information is available in Keyspaces documentation.

Point-in-time recovery (PITR) helps protect your Amazon Keyspaces tables from accidental write or delete operations. PITR provides continuous backups of your Amazon Keyspaces table data, and you can restore that table to any second in the preceding 35 days. You can enable PITR or initiate backup-and-restore operations with a single click in the AWS Management Console or a single API call.  

Amazon Keyspaces CDC captures real-time data changes in your tables, letting you track and respond to data manipulations instantly. This feature enables you to stream data changes to Amazon OpenSearch Service for advanced search and Gen AI applications. You can also synchronize with data warehouses for analytics and build event-driven architectures while maintaining the scalability of a fully managed service. To consume CDC streams, you can choose between two methods. The first is the Amazon Keyspaces Streams API, which provides direct control for simpler use cases that need custom streaming logic. The second is the Kinesis Client Library (KCL), which includes helpful features like automatic shard management, fault tolerance, and worker load balancing. Choose KCL when building robust applications that process large data volumes, or select the Streams API when you need precise control over simpler streaming processes.

Amazon Keyspaces encrypts all customer data at rest by default. Encryption at rest enhances the security of your data by using encryption keys stored in AWS Key Management Service. You can choose to encrypt your data at rest with an AWS owned customer master key (default) or with a customer managed customer master key, giving you full control over how your data is encrypted.

Amazon Keyspaces is integrated with AWS Identity and Access Management to help you manage access to your tables and data.

Amazon Keyspaces supports secure networking by using TLS. You can use AWS PrivateLink to provide secure connectivity between your resources in Amazon Keyspaces and Amazon Virtual Private Cloud (Amazon VPC).