exam questions

Exam AWS Certified Developer - Associate DVA-C02 All Questions

View all questions & answers for the AWS Certified Developer - Associate DVA-C02 exam

Exam AWS Certified Developer - Associate DVA-C02 topic 1 question 29 discussion

An application is processing clickstream data using Amazon Kinesis. The clickstream data feed into Kinesis experiences periodic spikes. The PutRecords API call occasionally fails and the logs show that the failed call returns the response shown below:

Which techniques will help mitigate this exception? (Choose two.)

  • A. Implement retries with exponential backoff.
  • B. Use a PutRecord API instead of PutRecords.
  • C. Reduce the frequency and/or size of the requests.
  • D. Use Amazon SNS instead of Kinesis.
  • E. Reduce the number of KCL consumers.
Show Suggested Answer Hide Answer
Suggested Answer: AC 🗳️

Comments

Chosen Answer:
This is a voting comment (?). It is better to Upvote an existing comment if you don't have anything to add.
Switch to a voting comment New
eboehm2
Highly Voted 1 year, 6 months ago
Selected Answer: AC
100% AC as per AWS : ProvisionedThroughputExceededException The request rate for the stream is too high, or the requested data is too large for the available throughput. Reduce the frequency or size of your requests. For more information, see Streams Limits in the Amazon Kinesis Data Streams Developer Guide, and Error Retries and Exponential Backoff in AWS in the AWS General Reference. https://docs.aws.amazon.com/kinesis/latest/APIReference/API_PutRecords.html
upvoted 8 times
...
sumanshu
Most Recent 2 weeks ago
Selected Answer: AC
A) Correct - Retries with exponential backoff help manage temporary spikes by delaying subsequent retry attempts progressively B) Eliminated - Switching to PutRecord would increase API calls, worsening the throughput issue C) Correct - Reducing request size or frequency directly addresses the throughput limits by spreading out the data more evenly. D) Eliminated - Amazon SNS is a messaging service, not designed for streaming data with high throughput like Kinesis.
upvoted 1 times
sumanshu
2 weeks ago
E) Eliminated - KCL consumers consume data from Kinesis streams; reducing their number will not address the write throughput limits causing the ProvisionedThroughputExceededException
upvoted 1 times
...
...
trieudo
3 weeks, 1 day ago
Selected Answer: AC
==> Discard B: PutRecord doesn't reduce throughput issues as it sends one record at a time, increasing API calls. ==> Discard D: SNS isn't designed for streaming data; it handles pub/sub messaging. ==> Discard E: Reducing KCL consumers affects reading, not writing throughput. - A: Exponential backoff reduces retries during peak usage, easing shard throughput pressure. - C: Lowering request frequency or size directly mitigates throughput exceedance on shards.
upvoted 1 times
...
Venky786
2 months ago
Answer is A and C Batch Efficiency: The `PutRecords` API allows you to send multiple records in a single request, which is generally more efficient than sending individual records with `PutRecord`. Using `PutRecords` can help optimize throughput by reducing the number of API calls and better utilizing the available capacity.
upvoted 2 times
...
65703c1
7 months, 2 weeks ago
Selected Answer: AC
AC is the correct answer.
upvoted 1 times
...
Baba_Eni
1 year, 7 months ago
Selected Answer: AC
AC is the best answer. When there is throttling, it is best practise to implement retries with exponential backoff.
upvoted 1 times
...
ezredame
1 year, 7 months ago
Selected Answer: BC
I think this is really tricky question. To get this exception, the request rate for the stream is too high, or the requested data is too large for the available throughput. Reduce the frequency or size of your requests. So we can "Reduce the frequency and/or size of the requests" also decrease the size with "Use a PutRecord API instead of PutRecords" The API already implements retries with exponential backoff. So there is no need for A.
upvoted 3 times
eboehm2
1 year, 6 months ago
I thought this at first too, but I was doing some additional reading and using the PutRecord API over PutRecords is wrong as it could actually make the problem worse as producers may make too many rapid requests to write to the stream https://repost.aws/knowledge-center/kinesis-data-stream-throttling
upvoted 4 times
...
Majong
1 year, 7 months ago
Can you please add a link where I can find this information. From what I can read on AWS is that you can implement exponential backoff but it is not by default.
upvoted 1 times
...
...
Untamables
1 year, 9 months ago
Selected Answer: AC
A and C https://aws.amazon.com/premiumsupport/knowledge-center/kinesis-data-stream-throttling-errors/
upvoted 4 times
...
aragon_saa
1 year, 9 months ago
AC https://www.examtopics.com/discussions/amazon/view/69142-exam-aws-certified-developer-associate-topic-1-question-370/
upvoted 4 times
yashika2005
1 year, 7 months ago
thanks a lotttt!
upvoted 1 times
...
...
Community vote distribution
A (35%)
C (25%)
B (20%)
Other
Most Voted
A voting comment increases the vote count for the chosen answer by one.

Upvoting a comment with a selected answer will also increase the vote count towards that answer by one. So if you see a comment that you already agree with, you can upvote it instead of posting a new comment.

SaveCancel
Loading ...
exam
Someone Bought Contributor Access for:
SY0-701
London, 1 minute ago