AWS Certified Developer – Associate / Question #946 of 557

Question #946

A developer's application uses an Amazon DynamoDB table with a local secondary index (LSI). During peak traffic, the application receives ProvisionedThroughputExceededException errors, but the total requests are within the table's provisioned capacity. What is the reason for this issue?

D

The IAM role lacks permissions to access the LSI.

A

The partition key values in the table are unevenly distributed, causing hot partitions.

B

The LSI's provisioned throughput is lower than the table's.

C

The application does not use jitter when retrying failed requests.

Explanation

The correct answer is A. DynamoDB allocates provisioned throughput evenly across partitions. If partition key values are unevenly distributed (e.g., some keys are accessed far more frequently), it creates 'hot partitions' that exceed their allocated throughput, even if the total requests are within the table's provisioned capacity. LSIs share the base table's throughput and do not have separate provisioning (eliminating B). While jitter (C) helps mitigate retries, it does not address the root cause. IAM permissions (D) would cause AccessDenied errors, not throttling.

Key Points:
- DynamoDB partitions throughput based on partition keys.
- Hot partitions occur when a single partition receives excessive requests.
- LSIs use the base table's capacity and do not have independent provisioning.

Answer

The correct answer is: A