Resolving Kinesis Data Streams Throttling from Hot Shards
Short answer
A Use a random partition key to distribute the ingested records.
Question
Key Takeaways
The core concept tested is Kinesis shard distribution mechanics, with the common trap being the assumption that increasing capacity (adding shards) fixes uneven data skew rather than addressing the root cause of the hot shard.
This question addresses how to resolve throttling caused by hot shards in Amazon Kinesis Data Streams. The correct approach involves modifying the partition key strategy to ensure even data distribution across all shards.
Common mistake: Many candidates choose Option B (increase shards) because it seems like a logical way to handle high load, but adding shards does not solve the problem if the partition key still directs traffic to specific shards, leaving them 'hot' and throttled.
Expert Analysis
Why the Answer Is Correct
Option A is correct because 'hot shards' are caused by an uneven distribution of data, typically due to a partition key that has low cardinality or predictable patterns (e.g., sequential IDs). By using a random partition key (or appending a random suffix), the data engineer ensures that records are distributed uniformly across all available shards. This prevents any single shard from becoming a bottleneck, thereby eliminating the throttling issue at its source.
Why the Other Options Are Wrong
Option B is incorrect because simply increasing the number of shards increases overall throughput capacity, but if the partition key logic remains unchanged, the new shards will also receive disproportionate loads. The 'hot' shards remain hot, just with potentially higher absolute limits, but the distribution skew persists. Option C is incorrect because limiting the producer rate is a workaround that sacrifices ingestion speed and doesn't fix the inefficiency of the stream design. Option D is incorrect because decreasing record size helps with bandwidth but does not address the fundamental issue of uneven sharding caused by the partition key.
Community Comment Notes
The community discussion highlights the distinction between capacity and distribution. As Faye15599 noted, "A is the best solution because the issue of hot shards is typically caused by an uneven distribution... Using a random partition key ensures that records are distributed more evenly." JekChong correctly identified that increasing shards doesn't solve the desproporción (disproportion) if the key causes concentration, reinforcing that partition key strategy is the primary lever for balancing load.
Exam Strategy
When dealing with Kinesis throttling, always distinguish between insufficient capacity (need more shards) and uneven distribution (need better partition keys). If the problem is specifically 'hot shards,' focus on the partition key's randomness and cardinality before considering scaling up.
Frequently Asked Questions
Why isn't increasing shards the right answer for hot shards?
What is a hot shard in Kinesis?
Community Votes
71% 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
-
Faye15599 👍 3 Answered AA is the best solution because the issue of hot shards is typically caused by an uneven distribution of records across shards due to poorly chosen partition keys. Using a random partition key ensures that records are distributed more evenly across all shards, reducing the likelihood of any single shard becoming "hot" and experiencing throttling. B is incorrect because while increasing the number of shards can help handle more data, it does not resolve the root cause of hot shards, which is uneven distribution due to poor partition key selection. Without addressing the partition key issue, adding shards may still result in some shards being overloaded.
-
JekChong 👍 2 Answered BAmazon Kinesis Data Streams uses shards to distribute data, and each shard has a fixed throughput limit. If certain shards receive significantly more data than others (hot shards), they will experience throttling. To resolve this issue: Increase the number of shards – This increases the overall capacity of the stream. Distribute records more evenly across shards – This can be done by modifying the partition key strategy so that data is spread more evenly.
-
italiancloud2025 👍 2 Answered AA: Sí, usar una clave de partición aleatoria distribuirá uniformemente los registros entre los shards, reduciendo cuellos de botella en shards "calientes". B: No, aumentar shards no soluciona la desproporción si la clave sigue causando concentración.
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 →