AWS Certified Developer – Associate (DVA-C02) — Question 91
A developer maintains a critical business application that uses Amazon DynamoDB as the primary data store. The DynamoDB table contains millions of documents and receives 30-60 requests each minute. The developer needs to perform processing in near-real time on the documents when they are added or updated in the DynamoDB table.
How can the developer implement this feature with the LEAST amount of change to the existing application code?
Answer options
- A. Set up a cron job on an Amazon EC2 instance. Run a script every hour to query the table for changes and process the documents.
- B. Enable a DynamoDB stream on the table. Invoke an AWS Lambda function to process the documents.
- C. Update the application to send a PutEvents request to Amazon EventBridge. Create an EventBridge rule to invoke an AWS Lambda function to process the documents.
- D. Update the application to synchronously process the documents directly after the DynamoDB write.
Correct answer: B
Explanation
The correct answer is B because enabling a DynamoDB stream allows the application to react to changes in real time with minimal code alterations by invoking a Lambda function. Option A is inefficient as it processes changes hourly rather than in near-real time. Option C involves additional complexity by requiring integration with EventBridge, and option D would require significant changes to the application to handle synchronous processing.