DBS-C01 Workload-Specific Database Design Practice Question
A company uses Amazon DynamoDB to store user session data for a web application. The table has a partition key of 'user_id' and no sort key. Each item is about 5 KB. The application performs frequent GetItem and UpdateItem operations. Recently, the application has been experiencing higher than expected latency and some throttling. The table's read and write capacity are set to on-demand mode. The CloudWatch metrics show that the ConsumedWriteCapacityUnits are well below the provisioned limits (if they were provisioned), but there are occasional ThrottledWriteEvents. The application team also notices that the throttling occurs for specific users. What is the most likely cause and solution?
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Implement write sharding by appending a random suffix to the partition key for high-traffic users.
Implement write sharding by appending a random suffix to the partition key for high-traffic users. In DynamoDB on-demand mode, each partition can handle up to 3000 read request units or 1000 write request units per second. When a single partition key (user_id) receives high write traffic, that partition can become a hot partition and be throttled, even though overall consumption is within limits. Write sharding distributes the writes for a hot user across multiple partition key values by adding a random suffix to the user_id, thereby spreading the load across multiple partitions. Option A (creating a GSI) would not solve the base table write throttling because the base table writes still target the same partition. Option B (adding a sort key) does not change the partition key distribution; the partition key remains the same, so the hot partition issue persists. Option D (switching to provisioned capacity) would not automatically solve the hot partition; it would require proper partition design similarly.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Create a global secondary index with a different partition key for the hot users.
Why it's wrong here
Creating a global secondary index does not address the hot partition on the base table. The base table writes still go to the same partition key, so throttling continues.
- ✗
Add a sort key to the table to improve data distribution.
Why it's wrong here
Adding a sort key does not change the partition key; the data distribution across partitions remains unchanged. The hot partition issue is still present.
- ✓
Implement write sharding by appending a random suffix to the partition key for high-traffic users.
Why this is correct
Write sharding by appending a random suffix to the partition key spreads writes for a hot user across multiple partition keys, balancing the load among partitions and preventing throttling.
- ✗
Switch to provisioned capacity mode and increase the write capacity units significantly.
Why it's wrong here
Switching to provisioned capacity mode does not solve the hot partition problem; the same single partition would still be throttled if it exceeds its throughput limits. Proper partition key design is required.
Go deeper
Related to this question
About these practice questions
This DBS-C01 question is part of Courseiva's 1,663-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This DBS-C01 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the DBS-C01 exam.