Which solution will meet these requirements MOST cost-effectively?
Configure an S3 event notification to invoke the Lambda function when a branch office uploads a sales report.
Create an AWS Step Functions state machine that invokes the Lambda function once each day at the predefined time.
Configure the Lambda function to run continuously and to begin analysis only at the predefined time each day.
Create an Amazon EventBridge scheduled rule that invokes the Lambda function once each day at the predefined time.
Explanations:
Configuring an S3 event notification would trigger the Lambda function every time a branch office uploads a sales report. This does not guarantee that the analysis happens only once per day at a specific time, as it would trigger on each file upload.
AWS Step Functions is used for orchestrating complex workflows. While it could trigger the Lambda function, it introduces unnecessary complexity and cost for simply running the Lambda function once per day. It is overkill for this requirement.
Configuring the Lambda function to run continuously would be inefficient and would lead to unnecessary costs as Lambda functions are billed based on execution time. This is not a cost-effective solution.
An Amazon EventBridge scheduled rule is the most cost-effective and simple solution. It allows the Lambda function to be invoked at a specific time each day, ensuring the analysis happens once a day at the predefined time without unnecessary costs.