A company needs to simultaneously process hundreds of requests from different users.
Which combination of AWS services should the company use to build an operationally efficient solution?
A company needs to simultaneously process hundreds of requests from different users.
Which combination of AWS services should the company use to build an operationally efficient solution?
To process hundreds of requests from different users simultaneously in an operationally efficient manner, the combination of Amazon Simple Queue Service (Amazon SQS) and AWS Lambda is ideal. Amazon SQS acts as a queue for incoming requests, ensuring they are handled reliably without overwhelming the processing system. AWS Lambda processes these requests in a serverless and scalable manner. This architecture provides the necessary decoupling, scalability, and fault tolerance needed to handle high volumes of requests efficiently.
Why there're so much controversial questions
is isn't that the point of an exam
There is a problem with the questioner.
Data pipeline is not relevant for this question - it moves data between AWS compute / storage services and on prem data.
Para quem ainda está na dúvida: O AWS Data Pipeline não é a melhor escolha para processar centenas de solicitações simultaneamente. O AWS Data Pipeline é usado principalmente para orquestrar e automatizar fluxos de trabalho de processamento de dados que envolvem transferências de dados entre diferentes serviços e transformações de dados. A combinação mais adequada para processar centenas de solicitações simultâneas seria a opção A. Amazon Simple Queue Service (Amazon SQS) e AWS Lambda. O Amazon SQS enfileira e gerencia as solicitações e o AWS Lambda executa o código de processamento de maneira escalável e assíncrona em resposta a cada solicitação da fila. Isso proporciona uma solução eficiente e escalável para lidar com solicitações simultâneas de usuários.
The most suitable answer here is A. Amazon Simple Queue Service (Amazon SQS) and AWS Lambda. Here's why this combination is a strong fit for the scenario: Why SQS and Lambda work well together: Decoupling: SQS acts as a buffer, storing incoming requests and decoupling the request generation from the actual processing. This prevents the backend from being overwhelmed. Scalability: Lambda functions can automatically scale up or down based on the volume of messages in the SQS queue. This ensures efficient resource utilization to match demand. Asynchronous Processing: This architecture allows for asynchronous handling of requests. Users don't have to wait for immediate responses, improving responsiveness. Fault Tolerance: If a Lambda function fails, SQS retains the message for retry, adding resilience.
A. Amazon Simple Queue Service (Amazon SQS) and AWS Lambda. Here's why: By combining Amazon SQS and AWS Lambda, the company can achieve efficient and scalable processing of hundreds of requests from different users. SQS acts as a buffer for incoming requests, ensuring that they are processed reliably, while Lambda functions can be invoked in response to messages in the queue, processing them in a scalable and cost-effective manner. This architecture allows for decoupling between the request producers and the request consumers, providing flexibility, reliability, and scalability.
Option B is correct. SQS is from Producer to End User / Customers. See https://aws.amazon.com/sqs/ diagram shows clearly this concept. Therefore, I selected Data pipeline, a web service that you can use to automate the movement and transformation of data. With AWS Data Pipeline, you can define data-driven workflows, so that tasks can be dependent on the successful completion of previous tasks. You define the parameters of your data transformations and AWS Data Pipeline enforces the logic that you've set up. Please let me know your thoughts. AWS Data Pipeline also helps create EC2 instances flexibly.
C. Amazon Kinesis and Amazon Athena For simultaneously processing hundreds of requests from different users in a scalable and operationally efficient manner, Amazon Kinesis and Amazon Athena would be a suitable combination of AWS services. • Amazon Kinesis is designed for real-time data streaming and can handle large volumes of data with low latency. You can use it to ingest, buffer, and process streaming data in real-time. This is particularly useful when dealing with a high volume of incoming requests. Amazon Athena is a serverless, interactive query service for analyzing data in Amazon S3 using standard SQL. It allows you to run ad-hoc queries on your data stored in S3, which is valuable for processing and analyzing the data collected by Kinesis.
"Operationnaly efficient" are the key words for me. It means sustaining heavy load (SQS), and complying to AWS pillars (use serverless). Therefore, I can not see any other answer than A.
no discussion
A makes sense to me
I will go with A and not B as : A) SQS to handle requests and lambda to process those. B)AWS Data Pipeline is a web service that you can use to automate the movement and transformation of data.(Doesn't make sense for this question)
should be A
SQS is correct
Amazon Simple Queue Service (Amazon SQS) and AWS Lambda
A is better option
Option A (Amazon SQS and AWS Lambda) provides the necessary scalability, reliability, and operational efficiency for processing requests from different users in a distributed and decoupled manner. The other options do not offer the same level of suitability for this specific use case.
AWS Data Pipeline is a web service that helps you reliably process and move data between different AWS compute and storage services, as well as on-premises data sources, at specified intervals.