Q44 — AWS SAA-C03 Ch.12
Question 44 of 100 | ← Chapter 12
Q844. A company's application runs on Amazon EC2 instances that are in multiple Availability Zones. The application needs to ingest real-time data from third-party applications.The company needs a data ingestion solution that places the ingested raw data in an Amazon S3 bucket.Which solution will meet these requirements?
- A. Create Amazon Kinesis data streams for data ingestion. Create Amazon Kinesis Data Firehose delivery streams to consume the Kinesis data streams. Specify the S3 bucket as the destination of the delivery streams. ✓
- B. Create database migration tasks in AWS Database Migration Service (AWS DMS). Specify replication instances of the EC2 instances as the source endpoints. Specify the S3 bucket as the target endpoint.Set the migration type to migrate existing data and replicate ongoing changes.
- C. Create and configure AWS DataSync agents on the EC2 instances. Configure DataSync tasks to transfer data from the EC2 instances to the S3 bucket.
- D. Create an AWS Direct Connect connection to the application for data ingestion. Create Amazon Kinesis Data Firehose delivery streams to consume direct PUT operations from the application. Specify the S3 bucket as the destination of the delivery streams.
Correct Answer: A. Create Amazon Kinesis data streams for data ingestion. Create Amazon Kinesis Data Firehose delivery streams to consume the Kinesis data streams. Specify the S3 bucket as the destination of the delivery streams.
Explanation
To meet the requirement of ingesting real-time data from third-party applications and placing the ingested raw data in an Amazon S3 bucket, the recommended solution is:A. Create Amazon Kinesis data streams for data ingestion. Create Amazon Kinesis Data Firehose delivery streams to consume the Kinesis data streams. Specify the S3 bucket as the destination of the delivery streams.Here's why:Option A suggests using Amazon Kinesis data streams for data ingestion and Amazon Kinesis Data Firehose delivery streams to populate the S3 bucket with the ingested data.Amazon Kinesis data streams are designed to handle large volumes of streaming data and allow real-time ingestion of data from various sources. It can accommodate the requirement of ingesting real-time data from third-party applications.Amazon Kinesis Data Firehose is a service that can consume data from Kinesis data streams and deliver it to various destinations, including Amazon S3. By configuring Kinesis Data Firehose delivery streams with the S3 bucket as the destination, you can automatically store the ingested raw data in the desired bucket.This solution provides a scalable and managed approach for data ingestion, ensuring reliability, durability, and real-time processing capabilities. It simplifies the process of ingesting data from third-party applications and storing it in an S3 bucket without the need for complex manual configurations or custom code.Option B suggests using AWS Database Migration Service (AWS DMS) to replicate data from EC2 instances to an S3 bucket. However, AWS DMS is primarily designed for database migration and continuous replication, which may not be the most efficient or straightforward solution for real-time data ingestion from third-party applications.Option C suggests using AWS DataSync to transfer data from EC2 instances to an S3 bucket. While DataSync is suitable for transferring data between various storage systems, it may not be the most optimal solution for real-time data ingestion from third-party applications.Option D suggests using AWS Direct Connect for data ingestion and consuming direct PUT operations using Kinesis Data Firehose delivery streams. However, this solution introduces unnecessary complexity and may not be the most efficient approach for real-time data ingestion.Therefore, the recommended solution is to create Amazon Kinesis data streams for data ingestion and configure Amazon Kinesis Data Firehose delivery streams to consume the data from the streams and deliver it to the S3 bucket. This solution provides a scalable, managed, and real-time data ingestion pipeline to meet the requirements.