AWS Certified Solutions Architect – Associate (SAA-C03) — Question 724
A company hosts an application used to upload files to an Amazon S3 bucket. Once uploaded, the files are processed to extract metadata, which takes less than 5 seconds. The volume and frequency of the uploads varies from a few files each hour to hundreds of concurrent uploads. The company has asked a solutions architect to design a cost-effective architecture that will meet these requirements.
What should the solutions architect recommend?
Answer options
- A. Configure AWS CloudTrail trails to log S3 API calls. Use AWS AppSync to process the files.
- B. Configure an object-created event notification within the S3 bucket to invoke an AWS Lambda function to process the files.
- C. Configure Amazon Kinesis Data Streams to process and send data to Amazon S3. Invoke an AWS Lambda function to process the files.
- D. Configure an Amazon Simple Notification Service (Amazon SNS) topic to process the files uploaded to Amazon S3. Invoke an AWS Lambda function to process the files.
Correct answer: B
Explanation
Triggering an AWS Lambda function directly via Amazon S3 object-created event notifications is the most cost-effective and simple solution because Lambda scales automatically to handle fluctuating workloads and charges only for the exact execution time. Utilizing services like Amazon Kinesis Data Streams (Option C) or AWS AppSync (Option A) introduces unnecessary complexity and higher costs for a simple 5-second processing task. While Amazon SNS (Option D) can trigger Lambda, it adds an intermediate service layer that is redundant since S3 can invoke Lambda directly.