How to Fix Kinesis WriteThroughputExceeded from Facility ID Hot Shards?
Short answer
A Change the Kinesis partition key from facility ID to a randomly generated key so records spread evenly across shards.
Question
Key Takeaways
Tests Kinesis partition-key design and shard load distribution; the trap is treating extra shards or a date key as a fix for a skewed key.
Amazon Kinesis Data Streams hot shards and WriteThroughputExceeded exceptions occur when facility ID concentrates traffic; this page confirms that switching to a random partition key resolves the skew.
Common mistake: Choosing to increase shards (B) because it appears to add throughput, without fixing the low-cardinality facility ID key that keeps sending high-volume facilities to the same shards.
Expert Analysis
Why the Answer Is Correct
Kinesis Data Streams hashes the partition key to assign records to shards, so the key must distribute traffic evenly. Using facility ID means a small number of busy facilities can dominate specific shards while low-volume facilities leave other shards mostly idle, producing WriteThroughputExceeded exceptions on the hot shards. Changing to a randomly generated key spreads records across the full hash space and reduces per-shard concentration, which directly addresses the observed skew. This is why option A is the correct fix for the root cause rather than a capacity workaround. The operations team's evidence of some shards heavily used and others idle is the classic symptom of a poorly distributed partition key.
Why the Other Options Are Wrong
Increasing the number of shards (B) can raise total stream capacity, but it does not repair the key skew: a high-volume facility still hashes to a particular shard range, so hot-shard behavior can persist and cost rises unnecessarily. Archiving data on the producer side (C) does not change how Kinesis routes records and may simply delay or lose the real-time ingestion the company needs. Changing the partition key to capture date (D) is worse because date is even less granular for this workload; all records for a day can pile onto the same shard range and intensify throttling. None of these options resolves the uneven shard utilization as directly as replacing facility ID with a high-cardinality random key.
Community Comment Notes
As tgv noted, the effective fix is to "balance the load more evenly across the shards," which matches the random-key approach. bakarys similarly explains that facility ID causes records to be "unevenly distributed across the shards" when some facilities produce more data than others. didorins adds that partitioning by date would make things worse, reinforcing rejection of option D. The comment consensus supports A because it addresses distribution rather than merely adding capacity.
Official Reference
- https://docs.aws.amazon.com/streams/latest/dev/key-concepts.html
- https://docs.aws.amazon.com/streams/latest/dev/troubleshooting.html
These links open the official vendor documentation in a new tab.
Exam Strategy
When Kinesis shows hot shards or WriteThroughputExceeded, first ask whether the partition key has enough cardinality and is evenly distributed. Choose the option that fixes key distribution before considering shard-count changes, which can mask but not solve skew.
Frequently Asked Questions
Why does facility ID as a Kinesis partition key cause hot shards?
Why not just increase shard count instead of changing the partition key?
Community Votes
100% of anonymous learners picked answer A. Votes are pick records left by other test-takers — they are not the verified answer.
Discussion 3 contributions
Compiled from public community threads and reader submissions, lightly edited for clarity. Handles and vote tallies are shown as recorded, and comments reflect the views of individual contributors.
From public community threads 3
Reader comments & corrections
No reader corrections yet — spotted an error or have a note? Share it below.
Related Analysis
Practice All DEA-C01 Questions
Access 100 questions with complete answers and detailed explanations.
View Full DEA-C01 Practice Test →
WriteThroughputExceededexceptions. By changing the partition key to a randomly generated key, the data records are more likely to be evenly distributed across all the shards, which can help to avoid the issue of some shards being heavily used and others being idle. This solution requires the least operational overhead and does not involve increasing costs (as in option B), archiving data (which might not be desirable or feasible, as in option C), or changing to a partition key that might also lead to uneven distribution (as in option D).