
Answer-first summary for fast verification
Answer: Enable Amazon DynamoDB Streams on the table. Use triggers to write to a single Amazon Simple Notification Service (Amazon SNS) topic to which the teams can subscribe.
## Explanation **Option C is the correct answer** because it provides the least operational overhead while meeting all requirements: 1. **DynamoDB Streams** captures item-level modifications (INSERT, UPDATE, DELETE) in near real-time without affecting the performance of the main application. 2. **Triggers** (typically using AWS Lambda) can process stream records and publish notifications to an SNS topic. 3. **Single SNS topic** with multiple subscriptions allows all four teams to receive the same alert efficiently. 4. **No changes to the current application** - the solution works asynchronously and independently. 5. **Minimal operational overhead** - DynamoDB Streams and Lambda triggers are fully managed services. **Why other options are incorrect:** - **Option A**: DynamoDB transactions are for ACID compliance, not for notifications. This would add complexity and potential performance impact to the main application. - **Option B**: Requires modifying the current application to publish to SNS, which could affect performance and adds operational complexity. - **Option D**: Cron job scanning every minute is inefficient, adds latency, consumes read capacity, and requires manual infrastructure management. **Key AWS Services Used:** - **DynamoDB Streams**: Captures changes to DynamoDB tables - **AWS Lambda**: Processes stream events (triggers) - **Amazon SNS**: Fan-out notifications to multiple subscribers This solution ensures alerts are sent in near real-time without impacting the existing application's performance.
Author: LeetQuiz Editorial Team
Ultimate access to all questions.
No comments yet.
A meteorological startup company has a custom web application to sell weather data to its users online. The company uses Amazon DynamoDB to store its data and wants to build a new service that sends an alert to the managers of four internal teams every time a new weather event is recorded. The company does not want this new service to affect the performance of the current application.
What should a solutions architect do to meet these requirements with the LEAST amount of operational overhead?
A
Use DynamoDB transactions to write new event data to the table. Configure the transactions to notify internal teams.
B
Have the current application publish a message to four Amazon Simple Notification Service (Amazon SNS) topics. Have each team subscribe to one topic.
C
Enable Amazon DynamoDB Streams on the table. Use triggers to write to a single Amazon Simple Notification Service (Amazon SNS) topic to which the teams can subscribe.
D
Add a custom attribute to each record to flag new items. Write a cron job that scans the table every minute for items that are new and notifies an Amazon Simple Queue Service (Amazon SQS) queue to which the teams can subscribe.