AWS Certified Solutions Architect – Professional (SAP-C02) — Question 496
A company is migrating its on-premises IoT platform to AWS. The platform consists of the following components:
• A MongoDB cluster as a data store for all collected and processed IoT data.
• An application that uses Message Queuing Telemetry Transport (MQTT) to connect to IoT devices every 5 minutes to collect data.
• An application that runs jobs periodically to generate reports from the IoT data. The jobs take 120-600 seconds to finish running.
• A web application that runs on a web server. End users use the web application to generate reports that are accessible to the general public.
The company needs to migrate the platform to AWS to reduce operational overhead while maintaining performance.
Which combination of steps will meet these requirements with the LEAST operational overhead? (Choose three.)
Answer options
- A. Create AWS Step Functions state machines with AUS Lambda tasks to prepare the reports and to write the reports to Amazon S3. Configure an Amazon CloudFront distribution that has an S3 origin to serve the reports
- B. Create an AWS Lambda function. Program the Lambda function to connect to the IoT devices. process the data, and write the data to the data store. Configure a Lambda layer to temporarily store messages for processing.
- C. Configure an Amazon Elastic Kubernetes Service (Amazon EKS) cluster with Amazon EC2 instances to prepare the reports. Create an ingress controller on the EKS cluster to serve the reports.
- D. Connect the IoT devices to AWS IoT Core to publish messages. Create an AWS IoT rule that runs when a message is received. Configure the rule to call an AWS Lambda function. Program the Lambda function to parse, transform, and store device message data to the data store.
- E. Migrate the MongoDB cluster to Amazon DocumentDB (with MongoDB compatibility).
- F. Migrate the MongoDB cluster to Amazon EC2 instances.
Correct answer: A, D, E
Explanation
Migrating the MongoDB cluster to Amazon DocumentDB (E) and using AWS IoT Core with AWS Lambda (D) provides a fully managed, serverless approach to data ingestion and storage, vastly reducing operational overhead. Using AWS Step Functions with Lambda tasks to output reports directly to an S3 bucket fronted by CloudFront (A) eliminates the need to manage web servers and handles the 120-600 second jobs easily within Lambda's 15-minute runtime limit. Managing EKS clusters, EC2 instances, or self-hosted MongoDB clusters (C, F) introduces significantly higher operational overhead, while Lambda layers (B) are not designed for message buffering.