Pay for only what you use. There is no minimum fee.
With Amazon Keyspaces (for Apache Cassandra), you pay for only the read and write throughput, storage, and networking resources that you use.
Read and write throughput
Amazon Keyspaces offers two throughput capacity modes for reads and writes: on-demand and provisioned. You can choose your table’s throughput capacity mode to optimize the price of reads and writes based on the predictability and variability of your workload. You also can change the capacity mode of a table once per day as you learn more about your workload, or if you expect to have a large burst in traffic, such as from a one-time or seasonal event.
On-demand capacity mode
With on-demand capacity mode, you pay for only the reads and writes that your application actually performs. You do not need to specify in advance how many reads and writes you expect your application to perform. Amazon Keyspaces accommodates workloads instantly as they ramp up or down, making it a good option for applications with unpredictable traffic.
Provisioned capacity mode
Provisioned capacity mode helps you optimize the price of throughput if you have predictable application traffic and can forecast capacity requirements in advance. With provisioned capacity mode, you specify the number of reads and writes per second that you expect your application to perform. You can increase and decrease the provisioned capacity for your table automatically in response to actual application traffic by enabling auto scaling.
Read and write consistency
Amazon Keyspaces stores data durably across multiple AWS Availability Zones using a replication factor of three for high availability.
You can execute reads using either LOCAL_ONE or LOCAL_QUORUM consistency. LOCAL_ONE consistency optimizes for performance and availability by returning the first returned value from any storage replica. LOCAL_QUORUM consistency optimizes for data correctness by requiring at least two storage replicas to return a value before it is returned to your application.
All writes in Amazon Keyspaces are executed with LOCAL_QUORUM consistency for durability.
Metering and regional pricing
Metering of API calls to read and write data in Amazon Keyspaces is based on the capacity mode of the table, the consistency level of the operation, and the size of the data.
On-demand capacity mode
With on-demand capacity mode, reads are metered using read request units (RRUs) and writes are metered using write request units (WRUs). Each RRU provides enough capacity to read up to 4 KB of data with LOCAL_QUORUM consistency. If you use LOCAL_ONE consistency, you are only billed one half of an RRU for the read. Each WRU provides enough capacity to write up to 1 KB of data per row with LOCAL_QUORUM consistency. For example, to write a row with 3 KB of data requires 3 WRUs. To read a row with 10 KB of data requires 3 RRUs using LOCAL_QUORUM consistency or 1.5 RRUs using LOCAL_ONE consistency. If a query returns multiple rows, you are billed based on the aggregate size of the data returned. For example, if your query returns four rows and each row has 2 KB of data (8 KB of data total), you are billed 2 RRUs using LOCAL_QUORUM consistency and 1 RRU using LOCAL_ONE consistency.
Provisioned capacity mode
With provisioned capacity mode, reads are metered using read capacity units (RCUs) and writes are metered using write capacity units (WCUs). Each RCU provides enough capacity to read up to 4 KB of data per second with LOCAL_QUORUM consistency. If you use LOCAL_ONE consistency, you are only billed one half of an RCU for the read. Each WCU provides enough capacity to write up to 1 KB of data per row per second with LOCAL_QUORUM consistency. For example, to write one row with 3 KB of data per second requires 3 WCUs. To read a row with 10 KB of data per second requires 3 RCUs using LOCAL_QUORUM consistency or 1.5 RCUs using LOCAL_ONE consistency. If a query returns multiple rows, you are billed based on the aggregate size of the data returned. For example, if your query returns four rows and each row has 2 KB of data (8 KB of data total), you are billed 2 RCUs using LOCAL_QUORUM consistency and 1 RCU using LOCAL_ONE consistency.
With Amazon Keyspaces, you do not need to provision storage in advance. Amazon Keyspaces monitors the billable size of your tables continuously to determine your storage charges.
Data transfer in and out refers to transfer into and out of Amazon Keyspaces. Amazon Keyspaces does not charge for inbound data transfer, and the service does not charge for data transferred between Amazon Keyspaces and other AWS services within the same AWS Region ($0.00 per GB). Data transferred across AWS Regions, such as between Amazon Keyspaces in the US East (N. Virginia) Region and Amazon EC2 in the EU (Ireland) Region, is charged on both sides of the transfer. As part of the AWS Free Tier, you receive 1 GB of free data transfer out each month, aggregated across all AWS services except in the AWS GovCloud (US) Regions. To transfer data exceeding 500 TB per month, contact us.
AWS PrivateLink simplifies the security of data shared with cloud-based applications by eliminating the exposure of data to the public internet. AWS PrivateLink provides private connectivity between VPCs, AWS services, and on-premises applications, securely on the Amazon network. AWS PrivateLink makes it easy to connect services across different accounts and VPCs to significantly simplify the network architecture. The cost of VPC endpoints for use with AWS PrivateLink is not included in the price of Amazon Keyspaces data transfer.
For more information, see AWS PrivateLink pricing.
AWS Free Tier
As part of the AWS Free Tier, you can get started with Amazon Keyspaces for free. For the first three months, you are offered a monthly free tier of 30 million on-demand write request units, 30 million on-demand read request units, and 1 GB of storage (limit of one free tier per payer account). Your free tier starts from the first month when you create your first Amazon Keyspaces resource.