Q89 — AWS SAA-C03 Ch.12
Question 89 of 100 | ← Chapter 12
Q889. A company's near-real-time streaming application is running on AWS. As the data is ingested, a job runs on the data and takes 30 minutes to complete. The workload frequently experiences high latency due to large amounts of incoming data. A solutions architect needs to design a scalable and serverless solution to enhance performance.Which combination of steps should the solutions architect take? (Choose two.)
- A. Use Amazon Kinesis Data Firehose to ingest the data. ✓
- B. Use AWS Lambda with AWS Step Functions to process the data.
- C. Use AWS Database Migration Service (AWS DMS) to ingest the data.
- D. Use Amazon EC2 instances in an Auto Scaling group to process the data.
- E. Use AWS Fargate with Amazon Elastic Container Service (Amazon ECS) to process the data. ✓
Correct Answer: A. Use Amazon Kinesis Data Firehose to ingest the data., E. Use AWS Fargate with Amazon Elastic Container Service (Amazon ECS) to process the data.
Explanation
To design a scalable and serverless solution that enhances performance for the near-real-time streaming application, the following steps can be taken:A. Use Amazon Kinesis Data Firehose to ingest the data.Amazon Kinesis Data Firehose is a fully managed service that can reliably and efficiently load streaming data into data lakes, data stores, and analytics tools. By using Kinesis Data Firehose to ingest the data, the architect can leverage its scalability and built-in resilience to handle the large amounts of incoming data with high throughput. This helps reduce latency and ensures efficient data ingestion.E. Use AWS Fargate with Amazon Elastic Container Service (Amazon ECS) to process the data.AWS Fargate is a serverless compute engine for containers that allows you to run containers without managing the underlying infrastructure. By using Fargate with Amazon ECS, the architect can deploy and manage containerized applications that process the data. Fargate automatically scales the compute resources based on the workload, ensuring optimal performance and resource utilization. This helps enhance performance by providing a scalable and serverless processing environment.Option C suggests using AWS Database Migration Service (AWS DMS) to ingest the data. However, AWS DMS is typically used for database migration and replication scenarios rather than real-time streaming applications. It is not the appropriate service for this use case.Option B suggests using AWS Lambda with AWS Step Functions to process the data. While Lambda is a serverless compute service that can process data efficiently, using it alone may not be suitable for long-running jobs that take 30 minutes to complete. Lambda has a maximum execution time limit of 15 minutes, which may not be sufficient for the given workload.Option D suggests using Amazon EC2 instances in an Auto Scaling group to process the data. While EC2 instances can provide scalability, they require manual management and have associated operational overhead. Using a serverless solution like Fargate with ECS provides a more scalable and cost-effective approach without the need to manage EC2 instances.In summary, the recommended combination of steps to design a scalable and serverless solution that enhances performance for the near-real-time streaming application is to use Amazon Kinesis Data Firehose to ingest the data (Option A) and to use AWS Fargate with Amazon ECS to process the data (Option E).