Q57 — AWS SAA-C03 Ch.13

Question 57 of 100 | ← Chapter 13

Q957. A company tracks customer satisfaction by using surveys that the company hosts on its website. The surveys sometimes reach thousands of customers every hour. Survey results are currently sent in email messages to the company so company employees can manually review results and assess customer sentiment.The company wants to automate the customer survey process. Survey results must be available for the previous 12 months.Which solution will meet these requirements in the MOST scalable way?

Correct Answer: A. Send the survey results data to an Amazon APl Gateway endpoint that is connected to an Amazon Simple Queue Service (Amazon SQS) queue.Create an AWS Lambda function to poll the SQS queue,call Amazon Comprehend for sentiment analysis,and save the results to an Amazon DynamoDB table.Set the TTL for all records to 365 days in the future.

Explanation

The solution that meets the requirements in the MOST scalable way is A. Send the survey results data to an Amazon API Gateway endpoint that is connected to an Amazon Simple Queue Service (Amazon SQS) queue. Create an AWS Lambda function to poll the SQS queue, call Amazon Comprehend for sentiment analysis, and save the results to an Amazon DynamoDB table. Set the TTL for all records to 365 days in the future.Here's why:Scalability: SQS, Lambda, and DynamoDB are all highly scalable services that can handle large volumes of data. SQS acts as a buffer, preventing the Lambda function from being overwhelmed by sudden bursts of survey results. Lambda functions can be scaled automatically based on the incoming data load. DynamoDB is a NoSQL database designed for high-volume data storage and retrieval. Decoupling: SQS decouples the survey data producers from the data consumers (Lambda function), allowing for independent scaling and fault tolerance.Sentiment Analysis: Amazon Comprehend provides a robust and scalable service for sentiment analysis, enabling the company to automatically assess customer sentiment from the survey results. Data Retention: DynamoDB's Time to Live (TTL) feature automatically expires records after 365 days, ensuring compliance with the 12-month data retention requirement.Why other options are less scalable:B. Send the survey results data to an API that is running on an Amazon EC2 instance. Configure the API to store the survey results as a new record in an Amazon DynamoDB table, call Amazon Comprehend for sentiment analysis, and save the results in a second DynamoDB table. Set the TTL for all records to 365 days in the future: Running the API on an EC2 instance limits scalability and requires manual scaling as the data load increases.C. Write the survey results data to an Amazon S3 bucket. Use S3 Event Notifications to invoke an AWS Lambda function to read the data and call Amazon Rekognition for sentiment analysis. Store the sentiment analysis results in a second S3 bucket. Use S3 Lifecycle policies on each bucket to expire objects after 365 days: While S3 is a scalable storage solution, it's not designed for real-time data processing. Using S3 Event Notifications and Lambda functions can introduce latency and might not be as efficient as using SQS and Lambda for real-time data processing.D. Send the survey results data to an Amazon API Gateway endpoint that is connected to an Amazon Simple Queue Service (Amazon SQS) queue. Configure the SQS queue to invoke an AWS Lambda function that calls Amazon Lex for sentiment analysis and saves the results to an Amazon DynamoDB table. Set the TTL for all records to 365 days in the future: Amazon Lex is primarily designed for conversational AI, not for general-purpose sentiment analysis. Using Lex for sentiment analysis might not be as accurate or efficient as using Amazon Comprehend.In summary:Option A provides the most scalable and efficient solution for automating the customer survey process. By leveraging the scalability and integration capabilities of SQS, Lambda, Comprehend, and DynamoDB, the company can handle large volumes of survey data, perform sentiment analysis, and store results securely and efficiently.