Which DynamoDB Read Consistency Option Consumes Double the RCUs?

Amazon DynamoDB offers two main read consistency options for fetching data: Eventual Consistency and Strong Consistency. When retrieving items, choosing Strongly Consistent Reads consumes double the Read Capacity Units (RCUs) compared to Eventually Consistent Reads for a given item size up to 4 KB. Understanding the operational differences, performance trade-offs, and cost implications between these consistency models is essential for optimizing application efficiency and cloud expenditure on AWS.

Strongly Consistent vs. Eventually Consistent Reads

DynamoDB automatically replicates data across multiple Availability Zones (AZs) in an AWS Region to ensure high availability and durability. When you issue a read request, the read consistency model dictates how DynamoDB returns the data and how read throughput is billed.

  • Eventually Consistent Reads: When you read from a table using eventual consistency, the response might not immediately reflect the results of a recently completed write operation. The read response can return stale data while changes propagate across all storage nodes.
  • Strongly Consistent Reads: When you request a strongly consistent read, DynamoDB returns a response with the most up-to-date data, reflecting updates from all prior write operations that received a successful response.

RCU Calculation and Cost Comparison

Read Capacity Units measure the read throughput required for items up to 4 KB in size. The choice of consistency model directly determines how many RCUs a request consumes.

Read Consistency Option RCU Consumption (per item up to 4 KB) Behavior
Eventually Consistent 0.5 RCU May return stale or slightly out-of-date data.
Strongly Consistent 1.0 RCU Guaranteed to return the latest written data.

Because an eventually consistent read requires only 0.5 RCU per 4 KB item, selecting a strongly consistent read (which costs 1.0 RCU for the same 4 KB item) effectively doubles your throughput consumption and billing rate for read operations. For items larger than 4 KB, DynamoDB calculates RCUs by rounding up to the next 4 KB boundary and multiplying by the corresponding consistency factor.

Best Practices for Choosing Consistency Models

To balance data accuracy and infrastructure cost, evaluate application requirements when configuring read requests:

  1. Default to Eventually Consistent Reads: Most application workloads can tolerate slight propagation delays (often under a second). Defaulting to eventual consistency cuts read unit costs in half.
  2. Use Strongly Consistent Reads Selectively: Limit strongly consistent reads to workflows where immediate data accuracy is non-negotiable, such as financial transactions, inventory reservation counters, or authorization checks.
  3. Note Global Secondary Index (GSI) Constraints: Global Secondary Indexes only support eventually consistent reads. If strong consistency is required, queries must be executed against the main table or a Local Secondary Index (LSI).