AWS Certified Solutions Architect – Associate (SAA-C02) — Question 446
A company is running an application on AWS to process weather sensor data that is stored in an Amazon S3 bucket. Three batch jobs run hourly to process the data in the S3 bucket for different purposes. The company wants to reduce the overall processing time by running the three applications in parallel using an event- based approach.
What should a solutions architect do to meet these requirements?
Answer options
- A. Enable S3 Event Notifications for new objects to an Amazon Simple Queue Service (Amazon SQS) FIFO queue. Subscribe all applications to the queue for processing.
- B. Enable S3 Event Notifications for new objects to an Amazon Simple Queue Service (Amazon SQS) standard queue. Create an additional SQS queue for all applications, and subscribe all applications to the initial queue for processing.
- C. Enable S3 Event Notifications for new objects to separate Amazon Simple Queue Service (Amazon SQS) FIFO queues. Create an additional SQS queue for each application, and subscribe each queue to the initial topic for processing.
- D. Enable S3 Event Notifications for new objects to an Amazon Simple Notification Service (Amazon SNS) topic. Create an Amazon Simple Queue Service (Amazon SQS) queue for each application, and subscribe each queue to the topic for processing.
Correct answer: D
Explanation
To process the same Amazon S3 event concurrently across three distinct batch applications, a fan-out messaging pattern is required. By publishing the Amazon S3 Event Notification to an Amazon SNS topic and subscribing an individual Amazon SQS queue for each application to that topic, every job receives its own copy of the event message to process in parallel. The other options fail because a single SQS queue cannot deliver the same message to multiple independent consumers for parallel, isolated execution.