Functional Differences: Amazon Managed Apache Cassandra Service and Apache Cassandra - Amazon Managed Apache Cassandra Service

This is prerelease documentation for a service in preview release. It is subject to change. For help or questions, please contact AWS Support.

Functional Differences: Amazon Managed Apache Cassandra Service and Apache Cassandra

Following are the functional differences between Amazon Managed Cassandra Service and Apache Cassandra.

Cluster Configuration

Amazon Managed Cassandra Service is serverless, so there are no clusters, hosts, or Java virtual machines (JVMs) to configure. Cassandra’s settings for compaction, compression, caching, garbage collection, and bloom filtering are not applicable to Amazon Managed Cassandra Service and are ignored if specified.

Table and Keyspace Management

The creation and deletion of keyspaces and tables in Amazon Managed Cassandra Service happens asynchronously. A resource will become visible in the system schema once it is ready for use. Additionally, the AWS Management Console will indicate when a resource is pending or active .

System Tables

Amazon Managed Cassandra Service populates the system tables required by Apache 2.0 open source Cassandra drivers. The system tables visible to a client contain information unique to the authenticated user. The system tables are fully controlled by Amazon Managed Cassandra Service and are read-only.

Load Balancing

The system.peers table entries correspond to Amazon Managed Cassandra Service load balancers. For best results, we recommend using a round robin load-balancing policy and tuning the number of connections per IP to suit your applications needs.

CQL Query Throughput Tuning

Amazon Managed Cassandra Service supports up to 3000 CQL queries per TCP connection per second, but there is no limit on the number of connections a driver can establish. Most open source Cassandra drivers establish a connection pool to Cassandra and load balance queries over that pool of connections. Amazon Managed Cassandra Service exposes 9 peer IP addresses to drivers, and the default behavior of most drivers is to establish a single connection to each peer IP address. Therefore, the maximum CQL query throughput of a driver using the default settings will be 27000 CQL queries per second. To increase this number, we recommend increasing the number of connections per IP address your driver is maintaining in its connection pool. For example, setting the maximum connections per IP address to 2 will double the maximum throughput of your driver to 54000 CQL queries per second.

Range Delete

Amazon Managed Cassandra Service supports deleting items in range. A range deletion is limited to 1,000 rows in a single command. A range delete is atomic, but it is not isolated.

Batch

Amazon Managed Cassandra Service supports unlogged batch commands with up to 30 commands in the batch. Only unconditional INSERT, UPDATE, or DELETE commands are permitted in a batch. Logged batches are not supported.

Lightweight Transactions

Amazon Managed Apache Cassandra Service fully supports compare and set functionality on INSERT and UPDATE commands, which are known as lightweight transactions (LWTs) in Apache Cassandra. As a serverless offering, Amazon Managed Apache Cassandra Service provides consistent performance at any scale, including for lightweight transactions. With Amazon Managed Cassandra Service, there is no performance penalty for using lightweight transactions.

Authentication and Authorization

Amazon Managed Apache Cassandra Service uses AWS Identity and Access Management (IAM) for user authentication and authorization, and supports the equivalent authorization policies as Apache Cassandra. As such, Amazon Managed Cassandra Service does not support Apache Cassandra's security configuration commands.

Apache Cassandra APIs, Operations, and Data Types

Amazon Managed Cassandra Service supports all commonly used Cassandra data-plane operations, such as creating keyspaces and tables, reading data, and writing data. To see what is currently supported, see Supported Cassandra APIs, Operations, and Data Types.