Q52 — AWS SAA-C03 Ch.13

Question 52 of 100 | ← Chapter 13

Q952. A company uses GPS trackers to document the migration patterns of thousands of sea turtles. The trackers check every 5 minutes to see if a turtle has moved more than 100 yards (91.4 meters). lf a turtle has moved,its tracker sends the new coordinates to a web application running on three Amazon EC2 instances that are in multiple Availability Zones in one AWS Region.Recently,the web application was overwhelmed while processing an unexpected volume of tracker data. Data was lost with no way to replay the events.A solutions architect must prevent this problem from happening again and needs a solution with the least operational overhead.What should the solutions architect do to meet these requirements?

Correct Answer: C. Create an Amazon Simple Queue Service (Amazon SQS) queue to store the incoming data. Configure the application to poll for new messages for processing

Explanation

The best solution to prevent data loss and minimize operational overhead is C. Create an Amazon Simple Queue Service (Amazon SQS) queue to store the incoming data. Configure the application to poll for new messages for processing.Here's why:Decoupling: SQS acts as a message queue, decoupling the data producers (GPS trackers) from the data consumers (EC2 instances). This prevents the application from being overwhelmed by sudden bursts of data.Scalability: SQS is a highly scalable service, able to handle large volumes of messages without performance degradation.Data Persistence: Messages in SQS are persistent, ensuring that data is not lost even if the application experiences temporary failures.Polling Mechanism: The application can poll the SQS queue for new messages at a rate that it can handle efficiently, preventing data loss and ensuring that all data is processed eventually.Why other options are less suitable:A. Create an Amazon S3 bucket to store the data. Configure the application to scan for new data in the bucket for processing: While S3 is a good storage solution, it's not designed for real-time message processing. Scanning for new data can be inefficient and might lead to data loss during high-volume events.B. Create an Amazon API Gateway endpoint to handle transmitted location coordinates. Use an AWS Lambda function to process each item concurrently: API Gateway and Lambda are excellent for handling web requests, but they might not be the ideal solution for handling a high volume of real-time data from GPS trackers. The processing latency could be an issue, and the application might still be overwhelmed during peak periods.D. Create an Amazon DynamoDB table to store transmitted location coordinates. Configure the application to query the table for new data for processing. Use TTL to remove data that has been processed:DynamoDB is a great database for handling high-volume data, but it's not designed for real-time message queuing. Continuously querying the table for new data can be resource-intensive and potentially lead to performance issues.In summary:Option C provides the most robust and efficient solution for handling the high volume of data from GPS trackers. SQS offers a reliable, scalable, and persistent message queue that allows the application to process data at its own pace, preventing data loss and ensuring efficient data handling.