How to Send DynamoDB Work-Anniversary Emails with Least Operational Effort?
Short answer
C Schedule a daily AWS Lambda function that scans the DynamoDB table and publishes anniversary emails to employees through Amazon SNS.
Question
Key Takeaways
This question tests two distinctions at once: serverless scheduled compute (Lambda) versus an always-on EC2 cron instance, and email delivery via SNS (a push pub/sub service) versus SQS (a queue that cannot send email at all).
A 15-employee company stores start dates in DynamoDB and needs automated anniversary emails with the MOST operational efficiency. The correct design is a daily scheduled AWS Lambda function that scans the table and publishes messages to Amazon SNS, which delivers the email — no servers, cron jobs, or queues to manage.
Common mistake: Choosing option D because Lambda sounds serverless and operationally efficient, while missing that Amazon SQS is a message queue with no native email delivery — a consumer would still be needed to actually send the message, so it cannot meet the requirement.
Expert Analysis
Why the Answer Is Correct
Option C combines the two services that each requirement demands: AWS Lambda provides the scheduled, serverless compute that scans the small DynamoDB table, and Amazon Simple Notification Service (SNS) natively delivers email to each employee through an email subscription on a topic. Scheduling the function to run once a day means no EC2 instance to patch, monitor, or pay for around the clock, which directly satisfies the "MOST operational efficiency" constraint. With only 15 employees, a daily Scan is trivially cheap and fast, so no index or query redesign is needed — the value here is entirely in eliminating operational overhead. Because SNS is a managed pub/sub service, the company simply adds employee email addresses as subscribers and the anniversary logic stays in the Lambda function.
Why the Other Options Are Wrong
Options A and B both rely on a cron job on an Amazon EC2 instance, which reintroduces the exact overhead the question is trying to avoid — patching, monitoring the script, and paying for an always-on instance for a job that runs once a day. Option B has an additional fatal flaw: Amazon SQS is a queue, not a notification service, so it cannot send email messages to employees at all without a separate consumer. Option D fixes the compute problem by using Lambda but keeps SQS for delivery, which again means the service only buffers the message; nothing in the design actually emails the employees. As one commenter put it, using a script on EC2 "will add maintenance on both the EC2 and the script".
Community Comment Notes
All 100 recorded votes landed on C, and the reasoning in the comments matches the exam logic. KennethNg923 reasoned that the script would have to be run every time and that sending email requires SNS, so the answer should be C. Scheldon noted that deploying a full instance is "overkill" and that Lambda plus SNS is enough and quite cheap for this scale. Mikado211 spelled out the architecture precisely — Lambda scans the table and publishes to an SNS topic — and added that cron jobs are not reliable and are hard to monitor properly. Another commenter, Erfan, agreed with the Lambda-plus-SNS design.
Official Reference
- https://docs.aws.amazon.com/sns/latest/dg/sns-email-notifications.html
- https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule-schedule.html
These links open the official vendor documentation in a new tab.
Exam Strategy
When a question says "MOST operational efficiency," eliminate every option that requires you to manage a server, patch a script, or keep an instance running for an infrequent job — that points to Lambda plus a managed schedule. Then verify the delivery service actually performs the requested action: SNS pushes notifications (including email), while SQS only stores messages until a consumer retrieves them.
Frequently Asked Questions
Why can't Amazon SQS deliver the anniversary emails directly?
Is a full DynamoDB Scan acceptable for only 15 employees?
Community Votes
100% of anonymous learners picked answer C. 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
-
Mikado211 👍 3 Answered CSNS for sending mails Lambda to scan the database + send the message to the SNS topic. Using a script on a EC2 will add maintenance on both the EC2 and the script + cronjobs are not reliable and can be hard to monitor properly. SO answer C !
-
Scheldon 👍 3 Answered CAnswerC Deploying full instance is an overkill. Lambda should be enough + SNS to sent email. And it should be quite cheap
-
KennethNg923 👍 3 Answered COperational efficiency, script need to be run every time, and send email need to use SNS, so it should be C
Reader comments & corrections
No reader corrections yet — spotted an error or have a note? Share it below.
Related Analysis
Practice All SAA-C03 Questions
Access 120 questions with complete answers and detailed explanations.
View Full SAA-C03 Practice Test →