Welcome to ExamTopics
ExamTopics Logo
- Expert Verified, Online, Free.

Unlimited Access

Get Unlimited Contributor Access to the all ExamTopics Exams!
Take advantage of PDF Files for 1000+ Exams along with community discussions and pass IT Certification Exams Easily.

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

A developer has an application that makes batch requests directly to Amazon DynamoDB by using the BatchGetItem low-level API operation. The responses frequently return values in the UnprocessedKeys element.
Which actions should the developer take to increase the resiliency of the application when the batch response includes values in UnprocessedKeys? (Choose two.)

  • A. Retry the batch operation immediately.
  • B. Retry the batch operation with exponential backoff and randomized delay.
  • C. Update the application to use an AWS software development kit (AWS SDK) to make the requests.
  • D. Increase the provisioned read capacity of the DynamoDB tables that the operation accesses.
  • E. Increase the provisioned write capacity of the DynamoDB tables that the operation accesses.
Show Suggested Answer Hide Answer
Suggested Answer: BD 🗳️

Comments

Chosen Answer:
This is a voting comment (?) , you can switch to a simple comment.
Switch to a voting comment New
brandon87
Highly Voted 1 year, 5 months ago
Selected Answer: BD
(B) If you delay the batch operation using exponential backoff, the individual requests in the batch are much more likely to succeed. (D) The most likely cause of a failed read or a failed write is throttling. For BatchGetItem, one or more of the tables in the batch request does not have enough provisioned read capacity to support the operation https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Programming.Errors.html#Programming.Errors.RetryAndBackoff
upvoted 22 times
...
Untamables
Highly Voted 1 year, 5 months ago
Selected Answer: BC
B & C https://docs.aws.amazon.com/general/latest/gr/api-retries.html
upvoted 19 times
konieczny69
7 months, 1 week ago
C already handles retries, why would want to to do that manually?
upvoted 1 times
...
...
phongnx8
Most Recent 1 month ago
BC is the correct answer.
upvoted 1 times
...
Anandesh
1 month, 3 weeks ago
Selected Answer: BC
https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_BatchGetItem.html https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Programming.Errors.html#Programming.Errors.RetryAndBackoff
upvoted 1 times
...
65703c1
3 months, 2 weeks ago
Selected Answer: BC
BC is the correct answer.
upvoted 1 times
...
drycleansing
5 months ago
Selected Answer: BC
among B C D, it is hard to say D copes with the problem directly I guess. Increasing RCU will affects the ratio of unprocessed items but that does not mean it handles the unprocessed items.
upvoted 1 times
...
vinfo
5 months ago
Selected Answer: BD
B,D. La combinación de estrategias es ideal para este comportamiento
upvoted 1 times
...
apa_1
5 months, 2 weeks ago
Selected Answer: BD
B,D is correct
upvoted 1 times
...
DeaconStJohn
5 months, 2 weeks ago
Selected Answer: BC
the aws documentation for unprocessedkeys reads: "If DynamoDB returns any unprocessed items, you should retry the batch operation on those items. However, we strongly recommend that you use an exponential backoff algorithm. If you retry the batch operation immediately, the underlying read or write requests can still fail due to throttling on the individual tables. If you delay the batch operation using exponential backoff, the individual requests in the batch are much more likely to succeed." Therefore I am taking the two options that provide this functionality. https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_BatchGetItem.html
upvoted 2 times
...
ibratoev
5 months, 2 weeks ago
Selected Answer: BD
B & D is correct
upvoted 1 times
...
HayLLlHuK
5 months, 3 weeks ago
Selected Answer: BD
According to AWS docs, the answer is B and D
upvoted 1 times
...
TheFivePips
6 months, 1 week ago
Selected Answer: BD
Exponential backoff with randomized delay is a common technique used to handle transient failures and throttle errors in distributed systems like DynamoDB. This approach involves retrying the failed operation after waiting for an increasing amount of time, which helps reduce the load on the service and increases the likelihood of success during periods of high demand or throttling. If the BatchGetItem operation frequently returns values in the UnprocessedKeys element, it indicates that the table's read capacity might be insufficient to handle the requested workload. By increasing the provisioned read capacity for the DynamoDB tables, the application can better handle the read throughput requirements and reduce the likelihood of encountering UnprocessedKeys in batch responses. AWS SDK might provide additional features and simplifications for making requests, it does not directly address the issue of UnprocessedKeys in batch responses. This option might be beneficial for improving code maintainability and leveraging SDK features however.
upvoted 1 times
...
badsati
6 months, 2 weeks ago
BC ...No discussion
upvoted 1 times
...
CrescentShared
7 months, 1 week ago
Why it's suggesting using SDK in the question from below link but not using C in this question? https://www.examtopics.com/discussions/amazon/view/96246-exam-aws-certified-developer-associate-topic-1-question-437/
upvoted 2 times
...
Sisanda_giiven
7 months, 2 weeks ago
Correct answer is B & D B- https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Programming.Errors.html#Programming.Errors.BatchOperations D - https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_BatchGetItem.html
upvoted 2 times
...
Cambrian
7 months, 3 weeks ago
Selected Answer: BC
Retry with exponential backoff and randomized delay (Option B) helps prevent overwhelming the system with repeated immediate requests and increases the likelihood of successful retries during intermittent issues. Using an AWS SDK (Option C) can provide built-in features for handling transient errors and retries, making the application more resilient to issues like UnprocessedKeys in batch responses.
upvoted 1 times
...
SherzodBek
8 months, 4 weeks ago
Selected Answer: BD
B & D. B is correct. Because in the question, it is mentioned that low-level API is being used.It means exponential backoff can be implemented manually. D is correct. Because there is a frequently keyword in the question. If UnprocessedKeys error occurs frequently, DynamoDB doesn't have enough capacity to process requests. So read capacity should be increased.
upvoted 3 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 ...