A company is developing an application that provides order shipping statistics for retrieval by a REST API. The company wants to extract the shipping statistics, organize the data into an easy-to-read HTML format, and send the report to several email addresses at the same time every morning.
Which combination of steps should a solutions architect take to meet these requirements? (Choose two.)
A. Configure the application to send the data to Amazon Kinesis Data Firehose.
B. Use Amazon Simple Email Service (Amazon SES) to format the data and to send the report by email.
C. Create an Amazon EventBridge (Amazon CloudWatch Events) scheduled event that invokes an AWS Glue job to query the application's API for the data.
D. Create an Amazon EventBridge (Amazon CloudWatch Events) scheduled event that invokes an AWS Lambda function to query the application's API for the data.
E. Store the application data in Amazon S3. Create an Amazon Simple Notification Service (Amazon SNS) topic as an S3 event destination to send the report by email.
The correct combination of steps to meet these requirements would be:
- D. Create an Amazon EventBridge (Amazon CloudWatch Events) scheduled event that invokes an AWS Lambda function to query the application's API for the data.
- B. Use Amazon Simple Email Service (Amazon SES) to format the data and to send the report by email.
Here's why:
-
Option D is correct because you can use AWS Lambda to retrieve the data from the application's API, process it, and format it into HTML. You can then schedule this Lambda function to run every morning using Amazon EventBridge.
-
Option B is correct because after the data is formatted into HTML by the Lambda function, you can use Amazon SES to send this HTML content as an email to multiple recipients.
Options A, C, and E are not suitable for this scenario:
-
Option A is not correct because Amazon Kinesis Data Firehose is used for loading streaming data into data stores and analytics tools. It doesn't help with querying an API, formatting data into HTML, or sending emails.
-
Option C is not correct because AWS Glue is a fully managed extract, transform, and load (ETL) service that makes it easy to prepare and load your data for analytics. It doesn't help with querying an API or sending emails.
-
Option E is not correct because while you can use Amazon S3 to store data and Amazon SNS to send notifications, this doesn't help with querying an API, formatting data into HTML, or sending emails.