Courseiva

CCNA Data Ingestion and Transformation Questions

75 of 591 questions · Page 1/8 · Data Ingestion and Transformation · Answers revealed

1
MCQeasy

A data engineer needs to capture change data capture (CDC) events from an Amazon RDS for PostgreSQL database and stream them to Amazon S3 in near real-time. Which AWS service should be used?

A.Amazon S3 Transfer Acceleration
B.Amazon Athena
C.AWS Database Migration Service (AWS DMS)
D.Amazon Kinesis Data Streams
AnswerC

DMS supports ongoing replication (CDC) from databases to S3.

Why this answer

AWS DMS supports continuous replication from PostgreSQL source databases using logical replication slots to capture CDC events in near real-time. It can directly stream these changes to Amazon S3 as a target, making it the correct choice for this use case.

Exam trap

The trap here is that candidates may confuse Kinesis Data Streams as a direct CDC solution, but it requires a separate CDC tool or custom application to capture PostgreSQL changes, whereas AWS DMS natively supports this integration.

How to eliminate wrong answers

Option A is wrong because Amazon S3 Transfer Acceleration is a feature that speeds up uploads to S3 over long distances using edge locations, but it does not capture or stream CDC events from a database. Option B is wrong because Amazon Athena is an interactive query service for analyzing data in S3 using SQL, not a tool for capturing or streaming database changes. Option D is wrong because Amazon Kinesis Data Streams is a real-time streaming service that can ingest data, but it cannot directly capture CDC events from an RDS for PostgreSQL database without additional configuration or a separate CDC connector.

2
MCQhard

A company uses AWS Database Migration Service (DMS) to continuously replicate data from an on-premises Oracle database to Amazon S3 in Parquet format. The replication is used for near-real-time analytics. Recently, the DMS task started failing with an error indicating insufficient memory. The source database is large (2 TB). What should a data engineer do to resolve this issue while minimizing changes to the existing architecture?

A.Change the target format to JSON to reduce memory usage.
B.Split the DMS task into multiple smaller tasks.
C.Use Change Data Capture (CDC) only, without full load.
D.Increase the DMS replication instance size.
AnswerD

Provides more memory.

Why this answer

The error indicates the DMS replication instance is running out of memory during continuous replication of a 2 TB Oracle database to S3 in Parquet format. Increasing the replication instance size (Option D) directly addresses the memory constraint by providing more RAM and processing capacity, which is necessary for handling large volumes of Change Data Capture (CDC) data and Parquet conversion overhead. This solution requires minimal architectural changes, as it only involves modifying the instance class in the DMS task settings.

Exam trap

The trap here is that candidates may think splitting tasks or changing formats reduces memory usage, but the root cause is insufficient instance resources, and AWS DMS tasks require adequate instance sizing for large-scale CDC workloads.

How to eliminate wrong answers

Option A is wrong because changing the target format to JSON would not reduce memory usage; JSON is typically larger than Parquet and would increase memory consumption during serialization, not decrease it. Option B is wrong because splitting the DMS task into multiple smaller tasks would increase complexity and overhead, potentially causing additional memory pressure from multiple connections and task management, and does not directly resolve the insufficient memory error. Option C is wrong because using CDC only without full load ignores the fact that the task is already failing during continuous replication (CDC phase), and the full load may have already completed; disabling full load does not address the memory issue in CDC processing.

3
MCQmedium

A company has a large volume of CSV files in S3 that need to be transformed into Parquet using AWS Glue. The files are partitioned by date. The engineer wants to minimize costs by processing only new files each day. Which approach should be used?

A.Use S3 partition discovery to automatically read new partitions.
B.Schedule the Glue job to run daily and process all files.
C.Enable job bookmarks in the Glue job.
D.Use S3 Event Notifications to trigger the Glue job on each new file.
AnswerC

Bookmarks track processed data and skip already processed files.

Why this answer

Using a Job Bookmark in Glue tracks processed data and skips already processed files, processing only new ones. Option A is wrong because it would reprocess all files. Option B is wrong because partitioning alone does not prevent reprocessing.

Option D is wrong because an SQS event can trigger a job, but without bookmarks, it may still reprocess.

4
MCQeasy

A data engineering team needs to ingest real-time streaming data from thousands of IoT devices and transform the data before storing it in Amazon S3. Which AWS service is most suitable for performing the transformation step in near real-time?

A.AWS Lambda
B.Amazon Kinesis Data Analytics
C.Amazon Kinesis Data Firehose
D.Amazon S3
AnswerA

Lambda can process Kinesis stream records and transform them.

Why this answer

AWS Lambda can run code in response to Kinesis Data Streams events and perform transformations before writing to S3. Option B is incorrect because Kinesis Data Analytics is for running SQL/Java on streams, not simple transforms. Option C is incorrect because Kinesis Data Firehose is for loading data to destinations with optional simple transformations via Lambda.

Option D is incorrect because Amazon S3 is storage, not a transformation service.

5
MCQeasy

A data engineer needs to ingest streaming data from thousands of IoT devices into Amazon S3 in near real-time. The data must be processed with minimal latency and stored in a columnar format for analytics. Which service should the engineer use to ingest the data?

A.Amazon Kinesis Data Analytics
B.Amazon Simple Queue Service (SQS)
C.Amazon Kinesis Data Streams with a Lambda consumer
D.Amazon Kinesis Data Firehose
AnswerD

Directly loads streaming data to S3 with transformation and columnar format support.

Why this answer

Amazon Kinesis Data Firehose is the correct choice because it is designed to ingest streaming data and deliver it directly to Amazon S3 with near-real-time latency (typically 60 seconds or more, depending on buffer settings). It automatically converts data to columnar formats like Parquet or ORC, which is essential for analytics, and requires no custom code for the delivery pipeline, minimizing operational overhead.

Exam trap

The trap here is that candidates often confuse Kinesis Data Streams (which requires a consumer like Lambda to write to S3) with Kinesis Data Firehose (which is a fully managed delivery service), leading them to choose Option C because they think they need a Lambda consumer for processing, but Firehose handles the entire ingestion pipeline without custom code.

How to eliminate wrong answers

Option A is wrong because Amazon Kinesis Data Analytics is for running real-time SQL or Apache Flink analytics on streaming data, not for ingesting and storing raw data into S3. Option B is wrong because Amazon SQS is a message queue service for decoupling application components, not designed for high-throughput streaming ingestion or direct delivery to S3 with format conversion. Option C is wrong because while Kinesis Data Streams with a Lambda consumer can ingest data and write to S3, it requires custom code in the Lambda function for batching, format conversion, and error handling, adding latency and complexity compared to Firehose's managed delivery.

6
MCQmedium

A data engineer needs to ingest data from an on-premises Oracle database to Amazon S3 daily. The data volume is 500 GB per day, and the network bandwidth is 200 Mbps. The requirement is to minimize the impact on the source database and ensure data integrity. Which combination of AWS services should be used?

A.AWS Database Migration Service (DMS) with S3 as target
B.AWS Glue ETL jobs with JDBC connection
C.Amazon Kinesis Data Firehose with Oracle as source
D.AWS Data Pipeline with SQLActivity
AnswerA

AWS DMS minimizes source impact by using change data capture and supports S3 as a target.

Why this answer

AWS DMS with S3 as target is correct because it supports continuous change data capture (CDC) from Oracle, minimizing impact on the source database by reading redo logs instead of querying tables directly. It can handle 500 GB/day over 200 Mbps (which yields ~2.16 TB/day theoretical max) and ensures data integrity via transactional consistency and validation checksums. DMS also automatically partitions large datasets and can resume from failures, making it ideal for daily bulk loads.

Exam trap

The trap here is that candidates assume AWS Glue or Data Pipeline are suitable for database ingestion, but they lack the CDC and low-impact features of DMS, which is specifically designed for minimal source database load during large-scale migrations or replication.

How to eliminate wrong answers

Option B is wrong because AWS Glue ETL jobs with JDBC connection would pull data via full table scans, placing significant load on the Oracle database and lacking native CDC capabilities, which violates the requirement to minimize source impact. Option C is wrong because Amazon Kinesis Data Firehose cannot use Oracle as a direct source; it ingests from streaming sources like Kinesis Data Streams, not relational databases via JDBC. Option D is wrong because AWS Data Pipeline with SQLActivity uses a polling-based approach that repeatedly queries the source, causing unnecessary overhead, and does not support CDC or optimized large-volume transfers like DMS.

7
MCQmedium

A company uses Amazon Kinesis Data Firehose to deliver streaming data to Amazon S3. The data is in JSON format and needs to be converted to Parquet. However, the conversion is failing. What is the most likely cause?

A.The data transformation Lambda function is not converting to Parquet
B.The schema is not defined in the AWS Glue Data Catalog
C.The data size exceeds the 1 MB limit per record
D.The delivery stream is configured to use Kinesis Data Streams as source
AnswerB

Parquet conversion requires a schema; without it, Firehose cannot convert.

Why this answer

Kinesis Data Firehose requires a schema to convert to Parquet. This schema can be provided by a Glue Data Catalog table. If the schema is not defined, the conversion fails.

Data size is not an issue for conversion. Kinesis Data Streams is not involved here. Lambda transformation can convert to Parquet but is not required.

8
Multi-Selecthard

A company is ingesting Apache logs from multiple web servers into AWS. The logs are sent via Amazon CloudWatch Logs to a subscription filter that delivers to a Lambda function. The Lambda function parses the logs and writes to Amazon S3. However, there is a significant backlog. Which THREE actions can reduce the backlog?

Select 3 answers
A.Route the CloudWatch Logs subscription to an Amazon SQS queue first
B.Increase the Lambda function memory allocation
C.Increase the Lambda function reserved concurrency
D.Change the Lambda function runtime from Python to Node.js
E.Increase the Lambda function maximum concurrency (unreserved account concurrency)
AnswersB, C, E

More memory also increases CPU, speeding up processing.

Why this answer

Increasing the Lambda function's memory allocation also increases its CPU allocation, allowing the function to process each log event faster. This reduces the per-invocation processing time, enabling the function to handle more log data per unit time and thus reduce the backlog.

Exam trap

The trap here is that candidates may confuse 'reserved concurrency' with 'maximum concurrency' or think that adding an SQS queue always improves throughput, when in fact it can add latency and does not address the root cause of slow per-invocation processing.

9
MCQeasy

A data engineering team is ingesting streaming data from IoT devices into Amazon Kinesis Data Streams. The data must be transformed in real-time and then loaded into an Amazon S3 bucket for long-term storage. Which AWS service should be used to perform the transformation and delivery to S3 with minimal operational overhead?

A.Amazon Kinesis Data Firehose
B.AWS Glue
C.Amazon EMR
D.Amazon Kinesis Data Analytics
AnswerA

Kinesis Data Firehose can subscribe to a Kinesis Data Stream, transform data, and automatically deliver to S3.

Why this answer

Amazon Kinesis Data Firehose is the correct choice because it is a fully managed service designed to automatically load streaming data into Amazon S3, Redshift, Elasticsearch, and Splunk. It can invoke an AWS Lambda function for real-time data transformation before delivery, eliminating the need to manage any infrastructure or write custom code for the delivery pipeline. This directly meets the requirement of minimal operational overhead for transformation and S3 delivery.

Exam trap

The trap here is that candidates often confuse Amazon Kinesis Data Analytics (which processes streams but does not deliver to S3) with Kinesis Data Firehose, or they overcomplicate the solution by selecting EMR or Glue for what is fundamentally a simple streaming ingestion and transformation task.

How to eliminate wrong answers

Option B (AWS Glue) is wrong because AWS Glue is a serverless ETL service primarily used for batch processing and cataloging data in data lakes, not for real-time streaming ingestion or continuous delivery to S3. Option C (Amazon EMR) is wrong because Amazon EMR is a cluster-based platform for running big data frameworks like Apache Spark and Hadoop, which requires provisioning and managing clusters, leading to higher operational overhead than a fully managed service. Option D (Amazon Kinesis Data Analytics) is wrong because it is designed for real-time analytics on streaming data using SQL or Apache Flink, but it does not natively deliver transformed data to S3; it would require additional services to handle the output.

10
MCQeasy

A data engineer needs to transform JSON data from Amazon S3 into Parquet format using AWS Glue. The data contains nested fields. Which Glue feature should the engineer use to define the schema and handle the nested structure?

A.Use the 'FindMatches' transform to identify duplicates.
B.Use the 'DropFields' transform to remove nested fields.
C.Use the 'Relationalize' transform in a Glue ETL script.
D.Use the 'Spigot' transform to write sample data.
AnswerC

Relationalize flattens nested JSON into relational tables.

Why this answer

The 'Relationalize' transform in AWS Glue is specifically designed to convert nested JSON data into flat tables by extracting and flattening nested fields into separate relational tables. This allows handling complex nested structures effectively. Option A is incorrect because 'FindMatches' is used for deduplication, not for handling nested data.

Option B is incorrect because 'DropFields' is used to remove fields from a dataset, not to transform nested structures. Option D is incorrect because 'Spigot' is used for writing sample data for testing or debugging, not for schema definition or handling nesting.

11
Multi-Selecteasy

Which TWO AWS services can be used to transform data in an Amazon S3 data lake before loading into Amazon Redshift? (Choose 2.)

Select 2 answers
A.AWS Lambda
B.Amazon Athena
C.Amazon EMR
D.AWS Glue
E.Amazon Redshift Spectrum
AnswersD, E

Glue can transform data in S3 and load into Redshift.

Why this answer

AWS Glue (Option D) is correct because it provides a fully managed ETL service that can crawl, catalog, and transform data in Amazon S3 data lakes. With AWS Glue, you can create ETL jobs using a serverless Spark environment to transform raw data into optimized formats (e.g., Parquet) and load it into Amazon Redshift via JDBC connections, making it ideal for preparing data before ingestion.

Exam trap

The trap here is that candidates confuse Amazon Athena's querying capability with ETL functionality, or assume AWS Lambda can handle large-scale data transformations, when in fact AWS Glue is the correct managed ETL service for transforming data in S3 before loading into Redshift.

12
MCQmedium

A data engineer needs to ingest data from an on-premises Apache Kafka cluster into Amazon S3. The data volume is about 10 TB per day. The engineer wants to set up a managed Kafka connector. Which AWS service should they use?

A.AWS Database Migration Service
B.AWS Lambda with Kafka trigger
C.Amazon MSK Connect
D.Amazon Kinesis Data Streams
AnswerC

MSK Connect runs Kafka Connect workers, including S3 sink connectors.

Why this answer

Amazon MSK Connect is a managed Kafka connector service that integrates with Amazon MSK or self-managed Apache Kafka clusters to stream data into Amazon S3 using Kafka Connect. It handles the 10 TB/day volume efficiently with auto-scaling and checkpointing, making it the correct choice for a managed connector setup.

Exam trap

The trap here is that candidates confuse Amazon MSK Connect with Amazon Kinesis Data Streams, thinking both are streaming services, but MSK Connect is specifically a managed Kafka connector service for Kafka-to-S3 ingestion, while Kinesis is a separate streaming platform.

How to eliminate wrong answers

Option A is wrong because AWS Database Migration Service (DMS) is designed for database migrations and continuous replication, not for ingesting data from Kafka into S3. Option B is wrong because AWS Lambda with Kafka trigger is event-driven and not suitable for high-volume, continuous streaming of 10 TB/day due to concurrency limits and lack of managed checkpointing for large-scale Kafka ingestion. Option D is wrong because Amazon Kinesis Data Streams is a separate streaming service, not a managed Kafka connector; it cannot directly connect to an on-premises Kafka cluster as a connector.

13
MCQhard

A company is building a data lake on S3 and needs to ingest data from on-premises Oracle database. The data is 5 TB and changes incrementally. The ingestion must capture changes in near real-time (less than 1 minute latency) and be cost-effective. Which approach should be used?

A.Use AWS Database Migration Service (DMS) with ongoing replication to S3
B.Use Amazon Kinesis Data Firehose with an Oracle JDBC connector
C.Use AWS Glue to perform a full table export daily
D.Use AWS DataSync to sync the Oracle data files to S3
AnswerA

DMS supports CDC and can replicate changes to S3 with low latency.

Why this answer

AWS DMS with ongoing replication captures incremental changes from Oracle using its native change data capture (CDC) mechanism, such as Oracle LogMiner or binary logs, and streams them to S3 in near real-time with latency under 1 minute. This approach is cost-effective because DMS charges only for the compute resources used during replication, and S3 storage is inexpensive, making it ideal for a 5 TB dataset with continuous changes.

Exam trap

The trap here is that candidates often confuse Kinesis Data Firehose's ability to accept data from custom sources with native JDBC support, leading them to choose Option B, but Firehose lacks built-in CDC connectors for relational databases like Oracle.

How to eliminate wrong answers

Option B is wrong because Amazon Kinesis Data Firehose does not natively support a JDBC connector for Oracle; it ingests data from sources like Kinesis Data Streams, AWS IoT, or custom HTTP endpoints, and using a JDBC connector would require custom code and add complexity without guaranteeing sub-minute latency for CDC. Option C is wrong because AWS Glue performing a full table export daily cannot meet the near real-time requirement of less than 1 minute latency; it is a batch-oriented service designed for periodic ETL jobs, not continuous change capture. Option D is wrong because AWS DataSync is designed for one-time or scheduled bulk data transfers of files or objects, not for capturing incremental database changes from Oracle; it syncs data at the file level, not the row-level CDC needed for a database.

14
MCQmedium

A company ingests JSON logs into Amazon S3 using Kinesis Data Firehose. The logs contain a timestamp field, but the delivery to S3 is delayed by up to 15 minutes during peak hours. The business requires near-real-time availability (under 2 minutes). Which configuration change should the data engineer make?

A.Increase the number of shards in the Kinesis Data Firehose stream
B.Increase the buffer size to 128 MB
C.Decrease the buffer interval to 60 seconds
D.Enable buffering hints in the Firehose delivery stream
AnswerC

Shorter buffer interval reduces delivery latency.

Why this answer

Decreasing the buffer interval to 60 seconds forces Kinesis Data Firehose to deliver data to S3 more frequently, reducing the maximum delivery latency to under 2 minutes. The default buffer interval is 300 seconds (5 minutes), and by lowering it to 60 seconds, you ensure that data is flushed to S3 within one minute of ingestion, meeting the near-real-time requirement even during peak hours when buffering might otherwise delay delivery.

Exam trap

The trap here is that candidates confuse Kinesis Data Firehose with Kinesis Data Streams and incorrectly think that increasing shards (a Data Streams concept) will reduce latency, when in fact Firehose's latency is controlled solely by buffer size and buffer interval parameters.

How to eliminate wrong answers

Option A is wrong because increasing the number of shards applies to Kinesis Data Streams, not to Kinesis Data Firehose, which uses a delivery stream abstraction and does not have shards; shard management is irrelevant to Firehose's buffering behavior. Option B is wrong because increasing the buffer size to 128 MB would actually increase the amount of data held before delivery, potentially worsening latency rather than reducing it, as Firehose waits to fill the buffer before flushing. Option D is wrong because 'buffering hints' is not a valid configuration in Kinesis Data Firehose; the correct parameters are buffer size and buffer interval, and enabling hints does not exist as a feature.

15
Multi-Selecteasy

A data engineer needs to ingest data from a SaaS application that sends webhooks in JSON format. The data must be stored in S3 for batch analysis. Which AWS services can receive the webhooks and store the data in S3 with minimal custom code? (Choose TWO.)

Select 2 answers
A.AWS Lambda with S3 SDK
B.AWS Glue with a Python shell job
C.Amazon Kinesis Data Streams
D.Amazon API Gateway with S3 integration
E.Amazon API Gateway with Kinesis Data Firehose integration
AnswersD, E

API Gateway can directly write to S3.

Why this answer

Amazon API Gateway with S3 integration (Option D) allows you to create a REST API that directly writes incoming webhook payloads to an S3 bucket without any custom code, using a proxy integration with an AWS service. This minimizes custom code because the integration handles the mapping and storage automatically.

Exam trap

The trap here is that candidates often assume Lambda is the only serverless option for webhook ingestion, overlooking API Gateway's direct S3 integration, or they mistakenly think Kinesis Data Streams can directly receive HTTP requests without a custom producer.

16
Multi-Selecthard

A data engineer is designing a data transformation pipeline using AWS Glue. The source data is in Amazon S3 in Parquet format, and the transformed output must be written to another S3 bucket in Parquet format partitioned by year, month, day. The pipeline should handle incremental updates efficiently. Which three features should the engineer use? (Choose THREE.)

Select 3 answers
A.AWS Glue job bookmarks to track processed data
B.Use AWS Glue JobWatch for monitoring job progress
C.Use DynamicFrames instead of Spark DataFrames for schema handling
D.Enable partition pruning in the Glue job
E.Use Spark SQL for transformations
AnswersA, C, D

Enables incremental processing.

Why this answer

AWS Glue job bookmarks track processed data by recording the state of previously processed files and partitions, enabling incremental processing of new or changed data in subsequent runs. This is essential for efficiently handling incremental updates without reprocessing the entire dataset.

Exam trap

The trap here is that candidates may confuse general-purpose tools like Spark SQL or monitoring concepts with the specific AWS Glue features designed for incremental processing and partitioning, leading them to select options that are technically possible but not the three required features.

17
Multi-Selecteasy

A company uses AWS Glue to catalog and transform data in Amazon S3. The Glue ETL jobs are failing intermittently with 'ThrottlingException' errors. Which THREE actions can help mitigate this issue? (Select THREE.)

Select 3 answers
A.Implement exponential backoff and retry in the Glue job code.
B.Increase the number of DPUs for the Glue job.
C.Request a service quota increase for the Glue API.
D.Enable job bookmarking to avoid reprocessing old data.
E.Switch from PySpark to Spark SQL.
AnswersA, C, D

Exponential backoff retries throttled requests, reducing failure impact.

Why this answer

Options A, C, and D are correct. Implementing exponential backoff and retry (A) handles transient ThrottlingException errors by pacing retries. Requesting a service quota increase for the Glue API (C) raises the maximum allowed requests per second.

Enabling job bookmarking (D) reduces the amount of data reprocessed, thereby lowering the number of API calls made to Glue. Option B (increasing DPUs) improves job performance but does not directly address API throttling. Option E (switching to Spark SQL) does not change the underlying API call frequency.

18
MCQmedium

A company uses AWS Glue crawlers to populate the Data Catalog from data in Amazon S3. The crawler fails to update the schema when new columns are added to the CSV files. What is the most likely cause?

A.The S3 bucket has versioning enabled.
B.The crawler is configured to only crawl new partitions.
C.The IAM role for the crawler lacks permissions to read the new columns.
D.The crawler uses a custom classifier that defines a fixed schema.
AnswerD

Custom classifiers can override schema inference.

Why this answer

When a crawler uses a custom classifier that defines a fixed schema, it will not recognize new columns added to the CSV files because the custom classifier overrides the schema inference. Option A is incorrect because S3 bucket versioning does not affect crawler schema updates. Option B is incorrect because the crawler configuration to crawl new partitions does not prevent schema updates; it only affects which partitions are crawled.

Option C is incorrect because the IAM role would cause permissions errors, not a failure to update schema due to new columns.

19
MCQeasy

A data engineer is tasked with ingesting on-premises database snapshots (full load) into Amazon S3 on a daily basis. The database is PostgreSQL and the snapshot size is 50 GB. The network link is 1 Gbps. Which approach is the MOST time-efficient and cost-effective?

A.Use AWS Database Migration Service (DMS) with S3 as target.
B.Use AWS Snowball Edge to transfer the snapshot.
C.Use AWS CLI to copy the snapshot file directly to S3.
D.Write a Lambda function to run pg_dump and upload to S3.
AnswerA

DMS can perform full loads from on-premises PostgreSQL to S3 in a managed and scalable way.

Why this answer

AWS Database Migration Service (DMS) is a managed service that efficiently performs full loads from on-premises PostgreSQL to Amazon S3, handling schema conversion and data transfer automatically. For a 50 GB snapshot over a 1 Gbps link, the transfer takes approximately 7 minutes, making Snowball (Option B) overkill and more expensive. Option C (AWS CLI) would require manual steps and is less efficient for database snapshots.

Option D (Lambda + pg_dump) adds unnecessary complexity and potential performance issues. Therefore, DMS is the most time-efficient and cost-effective approach.

20
Multi-Selecteasy

A data engineer is building a data ingestion pipeline that uses AWS Lambda to process records from Amazon Kinesis Data Streams. The Lambda function writes the processed data to Amazon DynamoDB. Which TWO factors affect the maximum number of concurrent Lambda executions for this stream? (Choose TWO.)

Select 2 answers
A.DynamoDB table's read capacity units
B.Lambda function's memory allocation
C.Kinesis stream name
D.Batch size configured for the Lambda event source mapping
E.Number of shards in the Kinesis stream
AnswersD, E

Batch size determines how many records are sent per invocation, affecting concurrency.

Why this answer

Correct options: D and E. The maximum number of concurrent Lambda executions for processing a Kinesis stream is determined by the number of shards in the stream, because each shard can have at most one concurrent Lambda invocation processing records from that shard. The batch size configured for the Lambda event source mapping also affects concurrency: a smaller batch size can lead to more invocations per shard over time, as each shard processes batches sequentially.

Options A (DynamoDB read capacity units) and B (Lambda memory allocation) do not directly limit concurrency from the stream. Option C (stream name) is just an identifier and has no effect on concurrency.

21
MCQeasy

A data engineer needs to transform JSON data from an S3 bucket using AWS Glue. The JSON contains nested arrays and objects. Which Glue transform is best suited for flattening nested structures?

A.Unnest
B.ResolveChoice
C.Relationalize
D.Map
AnswerC

Relationalize flattens nested structures into separate DynamicFrames.

Why this answer

The Relationalize transform is specifically designed to flatten nested JSON structures (arrays and objects) into a set of related tables, making it ideal for this use case. It automatically handles complex nesting by creating separate DataFrames for each nested level and linking them via foreign keys, which is exactly what is needed when ingesting JSON with nested arrays and objects into a relational format.

Exam trap

The trap here is that candidates often confuse the generic Spark SQL function `explode` (or the concept of 'unnesting') with a named AWS Glue transform, leading them to select 'Unnest' even though it does not exist as a Glue transform and would require manual handling of multiple nesting levels.

How to eliminate wrong answers

Option A (Unnest) is wrong because AWS Glue does not have a built-in transform named 'Unnest'; this is a Spark SQL function (e.g., `explode`) but not a named Glue transform, and it would require manual handling of multiple nesting levels. Option B (ResolveChoice) is wrong because it is used to resolve schema ambiguities (e.g., when a column has mixed types like string and int) and does not flatten nested structures. Option D (Map) is wrong because it applies a function to each record in a DynamicFrame for row-wise transformations, but it does not inherently flatten nested arrays or objects—you would need to write custom logic to handle the nesting.

22
MCQmedium

A gaming company ingests player event data from mobile games into Amazon Kinesis Data Streams. Each event is a small JSON payload (<1 KB). The data must be delivered to Amazon S3 for analytics, and the company wants to minimize storage costs by aggregating events into larger files (e.g., 100 MB per file). The current setup uses Kinesis Data Firehose with a buffer size of 10 MB and a buffer interval of 60 seconds, but the resulting files are very small (average 5 MB) because the data volume is low. The engineer needs to ensure that files are at least 100 MB to reduce the number of S3 objects and lower costs. What should the engineer do?

A.Use an AWS Glue streaming ETL job with a 100 MB file size threshold to write to S3.
B.Use an AWS Lambda function to buffer events in memory and write to S3 when buffer reaches 100 MB.
C.Increase the buffer size in Kinesis Data Firehose to 100 MB and increase the buffer interval to 300 seconds.
D.Use Amazon EMR with Spark Streaming to aggregate and write larger files to S3.
AnswerC

This allows Firehose to accumulate data until the buffer size or interval is reached, producing larger files.

Why this answer

Increase the buffer size in Kinesis Data Firehose to 100 MB and increase the buffer interval to 300 seconds. This allows more data to accumulate before writing to S3, resulting in larger files (≥100 MB) and reducing the number of S3 objects, thus lowering storage costs. Option B (Lambda) would require custom buffering logic and may encounter timeouts or memory limits.

Option A (Glue streaming ETL) adds latency and cost without directly controlling file size. Option D (EMR Spark Streaming) is overkill for this simple aggregation need.

23
Multi-Selecteasy

A financial services company is ingesting real-time stock trade data into Amazon Kinesis Data Streams. The data is then processed by a Kinesis Data Analytics application for fraud detection. The company must ensure that the data is processed in the correct order for each stock symbol. Which TWO configuration steps should be taken? (Choose two.)

Select 2 answers
A.Use a random partition key to distribute the load evenly.
B.Increase the number of shards to reduce latency.
C.Use the stock symbol as the partition key when putting records into the stream.
D.Use AWS Lambda with DynamoDB Streams instead of Kinesis Data Analytics.
E.Configure the Kinesis Client Library (KCL) to process records in the order they arrive in each shard.
AnswersC, E

Partition key determines shard assignment; same symbol goes to same shard, preserving order.

Why this answer

To ensure data is processed in the correct order for each stock symbol, the partition key must group all records for the same symbol into the same shard. Using the stock symbol as the partition key (C) guarantees that all trades for a given symbol go to the same shard, preserving order within that shard. Additionally, the Kinesis Client Library (KCL) processes records within a shard in the order they arrive (E), so enabling this ensures ordered processing.

Options A and B are incorrect: a random partition key (A) would distribute records across shards, breaking order; increasing shards (B) does not affect ordering. Option D is wrong because DynamoDB Streams is for change data capture, not for real-time streaming order.

24
MCQhard

A data pipeline uses AWS Glue to read from an Amazon S3 bucket containing millions of small CSV files (each < 1 MB). The ETL job is slow. Which optimization would most improve performance?

A.Write the ETL script using PySpark instead of Scala
B.Increase the number of Glue workers
C.Use the G.1X worker type for more memory
D.Use S3 file grouping to combine small files
AnswerD

Grouping small files reduces the number of partitions and improves Spark performance.

Why this answer

Using Amazon S3 file grouping or converting to columnar format like Parquet reduces the number of files and improves read performance. Increasing workers helps, but file consolidation is more impactful. Using G.1X worker type may help, but grouping files is key.

Using Spark SQL directly does not address the small files problem.

25
MCQeasy

A company needs to ingest data from an on-premises Hadoop cluster into Amazon S3 for archival and analysis. The total data volume is 50 TB. The migration must be completed within one week. The on-premises network has a 1 Gbps connection to AWS. Which AWS service should be used?

A.AWS Transfer Family
B.AWS Snowball Edge
C.AWS Glue
D.AWS DataSync
AnswerB

Snowball can physically ship data for large transfers.

Why this answer

AWS Snowball Edge is the correct choice because it is designed for large-scale data transfers (50 TB) over slow or unreliable networks. With a 1 Gbps connection, transferring 50 TB would take approximately 5 days under ideal conditions, but real-world factors (e.g., network congestion, protocol overhead) make it risky to complete within one week. Snowball Edge physically ships the data, bypassing network constraints entirely.

Exam trap

The trap here is that candidates assume a 1 Gbps connection is fast enough for 50 TB in a week, ignoring real-world throughput limitations (e.g., TCP overhead, competing traffic) and the need for a guaranteed completion window, which makes Snowball Edge the safer choice.

How to eliminate wrong answers

Option A is wrong because AWS Transfer Family is used for managed file transfers over SFTP/FTPS/FTP, not for bulk data migration from Hadoop clusters; it would still be limited by the 1 Gbps network and would not complete 50 TB within a week. Option C is wrong because AWS Glue is a serverless ETL service for data preparation and cataloging, not a data transfer or migration tool; it cannot move 50 TB from on-premises to S3. Option D is wrong because AWS DataSync is optimized for online data transfer over the network, but with a 1 Gbps link, transferring 50 TB would take approximately 5 days under perfect conditions, leaving no margin for error or real-world overhead, making it unreliable for a one-week deadline.

26
Multi-Selecthard

A data engineer is implementing a CDC (Change Data Capture) pipeline from a relational database to Amazon S3 using AWS Database Migration Service (DMS). Which TWO configurations are required for continuous replication?

Select 2 answers
A.Define transformation rules in the DMS task.
B.Enable binary logging on the source database.
C.Configure a VPC endpoint for DMS.
D.Enable 'Full load' and 'Ongoing replication' in the task.
E.Pre-create the target table in S3.
AnswersB, D

Binary logs are needed to capture changes for CDC.

Why this answer

For continuous CDC replication with AWS DMS, two key configurations are required: enabling binary logging on the source database (option B) and selecting both 'Full load' and 'Ongoing replication' in the DMS task (option D). Binary logging (e.g., binlog for MySQL) captures ongoing changes, while enabling both full load and ongoing replication ensures that the initial data load is completed before continuous change capture begins. Option A (transformation rules) is optional, not required.

Option C (VPC endpoint) is not necessary because DMS can connect to the source database over the internet, VPN, or VPC peering without a VPC endpoint. Option E (pre-creating the target table in S3) is not needed because DMS can create the target table automatically or you can let DMS handle the schema.

27
MCQmedium

Refer to the exhibit. A Glue ETL job failed. What is the most likely cause?

A.Some source files have a different schema than others.
B.The job bookmarks are misconfigured.
C.The source data has inconsistent partitioning.
D.The job ran out of memory due to insufficient DPUs.
AnswerA

Directly matches the error.

Why this answer

The error 'Cannot merge incompatible schemas' indicates that some source files have a different schema than others, preventing the Glue ETL job from merging them. Option D is wrong because insufficient DPUs cause memory or performance errors, not schema conflicts. Option B is wrong because partition pruning is about filtering data, not schema mismatches.

Option C is wrong because job bookmarks track processed files to avoid reprocessing, not schema issues.

28
MCQhard

A company is designing a data ingestion pipeline for real-time analytics. The source is a relational database, and the target is Amazon Redshift. The pipeline must handle schema changes in the source database automatically. Which combination of services should be used?

A.Amazon S3 and Amazon Athena
B.AWS DMS and AWS Glue
C.AWS Glue and Amazon Redshift COPY
D.Amazon Kinesis Data Streams and AWS Lambda
AnswerB

DMS captures changes, Glue can detect and apply schema changes.

Why this answer

AWS DMS (Database Migration Service) can capture ongoing changes from a relational database source using Change Data Capture (CDC) and replicate them to Amazon Redshift. AWS Glue can be used to handle schema evolution by crawling the source and updating the target schema, ensuring the pipeline adapts to schema changes automatically. Together, they provide a real-time ingestion pipeline with schema flexibility.

Exam trap

The trap here is that candidates often choose Kinesis and Lambda (Option D) because they associate 'real-time' with streaming, but they overlook that DMS is the native AWS service for CDC from relational databases, and Glue is required for schema evolution, not just any streaming service.

How to eliminate wrong answers

Option A is wrong because Amazon S3 and Amazon Athena are designed for querying data at rest, not for real-time ingestion or handling schema changes from a relational database to Redshift. Option C is wrong because AWS Glue and Amazon Redshift COPY are batch-oriented; COPY loads static files from S3 and does not support real-time CDC or automatic schema evolution from a live source. Option D is wrong because Amazon Kinesis Data Streams and AWS Lambda are suited for streaming data from applications or IoT devices, not for capturing CDC from a relational database, and Lambda would require custom code to manage schema changes and load into Redshift.

29
MCQmedium

A company uses Amazon S3 to store raw data and AWS Glue to run ETL jobs that transform the data into analytics-ready tables. The Glue job reads from a source with a schema that changes frequently (new columns added). The engineer wants the Glue job to automatically adapt to schema changes without manual intervention. Which configuration should the engineer use?

A.Schedule a Glue crawler to run after each ETL job to update the Data Catalog.
B.Set the job to use schema-on-read by storing data in Parquet format.
C.Enable the 'Update schema' option in the Glue job's output target configuration.
D.Use Glue's partition indexes to automatically detect new columns.
AnswerC

This option automatically adds new columns to the target table.

Why this answer

Enabling the 'Update schema' option in the Glue job's output target configuration allows the job to automatically add new columns to the target table in the Data Catalog when the source schema changes. This setting directly addresses the requirement for automatic adaptation to schema changes without manual intervention, as it updates the table definition during the ETL job run.

Exam trap

The trap here is that candidates often confuse schema-on-read (Parquet's flexibility) with automatic schema evolution in the Data Catalog, leading them to choose Option B, but schema-on-read does not update the target table's metadata, which is required for downstream analytics tools to query the new columns.

How to eliminate wrong answers

Option A is wrong because scheduling a Glue crawler after each ETL job updates the Data Catalog based on the output data, but it does not automatically adapt the ETL job's transformation logic to new columns; it only updates metadata post-hoc, and the job itself would still need manual changes to process new columns. Option B is wrong because schema-on-read with Parquet allows flexible reading of data with varying schemas, but it does not automatically update the Data Catalog or the target table schema; the Glue job would still need explicit handling to write new columns to the target. Option D is wrong because partition indexes are used to optimize query performance on partitioned data, not to detect or adapt to schema changes; they have no mechanism for automatic column detection.

30
Multi-Selectmedium

A data engineer is designing a streaming pipeline using Amazon Kinesis Data Streams. The data must be transformed in real-time and then stored in Amazon S3 for long-term retention. Which THREE services can be used together to achieve this?

Select 3 answers
A.Amazon Kinesis Data Analytics
B.Amazon Kinesis Data Firehose
C.AWS Glue
D.Amazon Athena
E.Amazon Kinesis Data Streams
AnswersA, B, E

Performs real-time transformations.

Why this answer

Options A, B, and E are correct: Kinesis Data Streams ingests data, Kinesis Data Analytics performs real-time transformations, and Kinesis Data Firehose delivers the transformed data to S3. Option C (AWS Glue) is a batch ETL service, not suitable for real-time streaming. Option D (Amazon Athena) is a query service, not for data ingestion or transformation in a streaming pipeline.

31
MCQhard

A company is using Amazon MSK (Managed Streaming for Apache Kafka) to ingest real-time data. They need to transform the data using custom Java code before writing to Amazon S3. The transformation must be fault-tolerant and exactly-once semantics are required. Which AWS service should be used?

A.Amazon EMR with Spark Streaming
B.AWS Lambda consumer for MSK
C.Kafka Connect with S3 Sink Connector
D.Kinesis Data Analytics for Apache Flink
AnswerC

Supports exactly-once and custom transformations.

Why this answer

Kafka Connect with S3 Sink Connector supports exactly-once semantics and custom transformations via Single Message Transforms (SMTs) or custom connectors. Option A (Amazon EMR with Spark Streaming) is for batch processing, not real-time exactly-once from MSK. Option B (AWS Lambda) does not provide exactly-once semantics from MSK.

Option D (Kinesis Data Analytics for Apache Flink) is for Flink, not Kafka.

32
Multi-Selecteasy

A company is ingesting large volumes of sensor data into Amazon S3. The data must be encrypted at rest using an AWS KMS customer managed key. Which TWO actions are required to enable server-side encryption with AWS KMS (SSE-KMS) on the S3 bucket?

Select 2 answers
A.Enable S3 Versioning on the bucket
B.Set the default encryption on the S3 bucket to AWS-KMS and specify the KMS key
C.Enable Amazon CloudWatch Logs for the bucket
D.Add a bucket policy that denies uploads without encryption
E.Ensure the IAM role/user has kms:Encrypt permission on the KMS key
AnswersB, E

This configures SSE-KMS for all objects.

Why this answer

Setting the default encryption on the S3 bucket to AWS-KMS and specifying the KMS key ensures that all objects uploaded to the bucket are automatically encrypted with SSE-KMS using that customer managed key. This is the primary configuration step to enforce server-side encryption at rest with a customer managed key.

Exam trap

The trap here is that candidates often think a bucket policy denying unencrypted uploads alone is sufficient to enable SSE-KMS, but it only enforces that uploads must include encryption headers—it does not automatically apply encryption, so the default encryption setting is also required.

33
MCQmedium

A company needs to transform JSON data from an Amazon S3 bucket into Parquet format and load it into an Amazon Redshift cluster. The transformation includes joining with a reference table stored in Amazon RDS. Which AWS service is BEST suited for this task?

A.AWS Data Pipeline
B.AWS Glue ETL job
C.Amazon Athena
D.Amazon EMR with Spark
AnswerB

Glue ETL jobs can read from S3, connect to RDS via JDBC, transform, and write to Redshift efficiently.

Why this answer

(AWS Glue ETL job) is the best choice because it natively integrates with S3, RDS, and Redshift. Glue can read JSON from S3, connect to RDS via JDBC to join with the reference table, transform the data to Parquet using its built-in converter, and write directly to Redshift. Option A (AWS Data Pipeline) is older and less integrated for this purpose.

Option C (Amazon Athena) can query S3 and convert to Parquet but cannot natively join with RDS without additional services. Option D (Amazon EMR with Spark) is possible but requires more setup and maintenance.

34
MCQmedium

A company uses Amazon Kinesis Data Firehose to ingest application logs into an Amazon S3 bucket. The logs are in JSON format. The data engineering team wants to convert the logs from JSON to Parquet format before landing in S3. What is the most cost-effective way to achieve this?

A.Use Amazon Athena to query the JSON data and write results in Parquet format.
B.Configure the Firehose delivery stream to convert the data to Parquet using a schema from AWS Glue.
C.Use an AWS Lambda function to transform each record to Parquet and send to Firehose.
D.Use an AWS Glue ETL job to run on a schedule and convert JSON to Parquet in S3.
AnswerB

Configure the Firehose delivery stream to convert the data to Parquet using a schema from AWS Glue. This is the most cost-effective because Firehose handles the conversion natively without additional compute services.

Why this answer

Kinesis Data Firehose can convert the input data format to Parquet using a schema from AWS Glue. Option A is incorrect because Athena queries raw data and would not help with ingestion. Option C is incorrect because Lambda can do this but would incur additional compute cost.

Option D is incorrect because Glue ETL would add cost and latency.

35
MCQmedium

A company is using Amazon Kinesis Data Analytics for Apache Flink to process streaming data. The application reads from a Kinesis data stream and writes results to an Amazon S3 bucket. The team notices that the application is experiencing high latency during peak hours. The stream has 8 shards, and the application is configured with a parallelism of 4. Which action would most likely reduce the latency?

A.Decrease the batch size in the S3 sink.
B.Use a larger Kinesis Data Analytics application instance type.
C.Increase the parallelism of the Flink application to 8.
D.Increase the checkpointing interval to reduce overhead.
AnswerC

Matching parallelism to shard count ensures each shard is processed concurrently, reducing backpressure.

Why this answer

The application has 8 shards but only a parallelism of 4, meaning each Flink subtask must process data from 2 shards. This creates a bottleneck because a single subtask cannot process data from multiple shards faster than the slowest shard's throughput. Increasing parallelism to 8 matches the shard count, allowing each subtask to read from exactly one shard, eliminating the contention and reducing latency.

Exam trap

The DEA-C01 exam often tests the misconception that increasing instance size (Option B) or tuning sink parameters (Option A) will fix latency, when the root cause is a parallelism-to-shard mismatch that only increasing parallelism can resolve.

How to eliminate wrong answers

Option A is wrong because decreasing the batch size in the S3 sink would increase the number of small writes, causing more overhead and potentially higher latency, not lower. Option B is wrong because the bottleneck is parallelism, not compute resources; a larger instance type would not resolve the mismatch between shard count and parallelism, and could even increase cost without benefit. Option D is wrong because increasing the checkpointing interval reduces checkpointing overhead but does not address the fundamental parallelism bottleneck; it may actually increase recovery time and does not improve throughput during peak hours.

36
MCQhard

Refer to the exhibit. A data engineer is using a Kinesis Data Stream with 2 shards. The producer uses a partition key that is the user ID (a UUID). The consumer is falling behind. Which change would improve throughput?

A.Switch to Kinesis Data Firehose
B.Increase the number of shards
C.Increase the retention period
D.Change the partition key to a constant value
AnswerB

More shards increase the read capacity for consumers.

Why this answer

The consumer is falling behind because the total throughput of the stream (1 MB/s or 1,000 records/s per shard for writes, and 2 MB/s per shard for reads) is insufficient for the incoming data volume. Increasing the number of shards scales both the write and read capacity linearly, allowing the consumer to process records faster and catch up. Changing the partition key or retention period does not increase throughput, and switching to Firehose changes the delivery model but does not inherently solve the consumer lag.

Exam trap

The trap here is that candidates may think changing the partition key to a constant value would simplify processing, but it actually destroys parallelism and reduces throughput to a single shard, making the lag worse.

How to eliminate wrong answers

Option A is wrong because Kinesis Data Firehose is a fully managed delivery service that buffers and loads data into destinations like S3 or Redshift; it does not increase the read throughput for a consumer that is falling behind, and it removes the ability for custom consumers to process records in real time. Option C is wrong because increasing the retention period (default 24 hours, max 365 days) only keeps records longer in the stream; it does not increase the ingestion or consumption rate, so the consumer will still lag. Option D is wrong because changing the partition key to a constant value would cause all records to go to a single shard, drastically reducing throughput and making the lag worse, as the other shard would be idle.

37
MCQmedium

A company runs an e-commerce platform that generates clickstream data from millions of users. The data is ingested into Amazon Kinesis Data Streams with a shard count of 10. The data is then consumed by a Kinesis Data Analytics application that runs SQL queries to aggregate metrics in real time. Recently, the application has been falling behind, and the stream's iterator age metric is increasing. The data volume has doubled over the past month. The application currently uses a single Kinesis Data Analytics application with parallelism of 1. Which action should the data engineer take to improve the processing rate and reduce the iterator age without losing data or causing duplicates?

A.Change the Kinesis Data Analytics application to use a Kinesis Data Firehose delivery stream as the source.
B.Reduce the retention period of the Kinesis Data Streams to 24 hours.
C.Increase the number of shards in the Kinesis Data Streams to 20.
D.Increase the parallelism of the Kinesis Data Analytics application to match the number of shards.
AnswerD

Higher parallelism allows concurrent processing of multiple shards.

Why this answer

Kinesis Data Analytics (KDA) processes data from each shard in a stream using one or more parallel operators. With a parallelism of 1, the application uses only a single processing thread, which cannot keep up with the doubled data volume across 10 shards. By increasing parallelism to match the shard count (10), KDA can read from all shards concurrently, distributing the processing load and reducing the iterator age without data loss or duplicates, as KDA manages checkpointing and exactly-once semantics internally.

Exam trap

The trap here is that candidates often assume increasing shard count (Option C) is the only way to handle higher data volume, but they overlook that the processing application's parallelism must also scale to consume the additional shards, otherwise the bottleneck shifts to the consumer.

How to eliminate wrong answers

Option A is wrong because Kinesis Data Firehose is a delivery service that buffers and loads data into destinations like S3 or Redshift; it does not support real-time SQL analytics or reduce iterator age, and using it as a source would break the existing KDA SQL application. Option B is wrong because reducing the retention period from the default (24 hours or more) to 24 hours does not improve processing rate; it only causes data to expire sooner, potentially losing unprocessed records and increasing the risk of data loss without addressing the throughput bottleneck. Option C is wrong because increasing the shard count to 20 would double the stream's ingestion capacity, but the KDA application with parallelism of 1 would still process only one shard at a time, leaving the other 19 shards unprocessed and worsening the iterator age; the bottleneck is the application's parallelism, not the stream's shard count.

38
Multi-Selecthard

A company needs to ingest data from a MySQL database into Amazon S3 using AWS DMS. The data changes frequently and the requirement is to capture changes in near real-time. Which THREE configurations are necessary?

Select 3 answers
A.Create a VPC endpoint for S3.
B.Create an S3 target endpoint in DMS.
C.Enable binary logging (binlog) on the MySQL source database.
D.Create an AWS DMS replication instance.
E.Configure an S3 event notification to trigger DMS.
AnswersB, C, D

Needed to specify the S3 bucket.

Why this answer

To capture near real-time changes from a MySQL database to S3 using AWS DMS, you need: B) an S3 target endpoint in DMS to write the data; C) binary logging (binlog) enabled on MySQL to capture changes; and D) a DMS replication instance to process and transfer data. Options A and E are unnecessary: a VPC endpoint for S3 is not required (DMS can use public endpoints or VPC peering), and S3 event notifications are not used to trigger DMS—they are typically for post-processing.

39
MCQmedium

A gaming company collects player event data from mobile devices. The data is sent to an Amazon API Gateway endpoint, which triggers an AWS Lambda function that writes the data to an Amazon DynamoDB table. The company wants to also store the data in Amazon S3 for historical analysis. The data volume is about 100 GB per day. The data engineer needs to design a solution to copy data from DynamoDB to S3 with minimal impact on the DynamoDB table. What should the data engineer do?

A.Enable DynamoDB Streams on the table and configure a Lambda function to write changes to S3.
B.Create a global secondary index on the table and export the index to S3.
C.Use AWS Glue to scan the DynamoDB table and write results to S3 every hour.
D.Use the DynamoDB Export to S3 feature to export the entire table daily.
AnswerA

Using DynamoDB Streams with a Lambda function that writes to S3 enables real-time replication with minimal impact on the DynamoDB table.

Why this answer

Using DynamoDB Streams with a Lambda function that writes to S3 enables real-time replication with minimal impact on the DynamoDB table. Option B is wrong because creating a global secondary index does not export data to S3; it is used to improve query performance. Option C is wrong because using AWS Glue to scan the DynamoDB table would consume read capacity units, potentially impacting performance.

Option D is wrong because the DynamoDB Export to S3 feature is a one-time or scheduled export, not continuous, and may not be suitable for near-real-time needs.

40
MCQhard

A company uses AWS Glue ETL to transform data from Amazon RDS for PostgreSQL to Amazon S3. The transformation includes joining several tables and aggregating millions of rows. The job runs successfully but takes over 2 hours. The data engineer wants to reduce runtime. Which action is MOST effective?

A.Enable Auto Scaling for the Glue job.
B.Use AWS Glue DynamicFrames instead of DataFrames.
C.Increase the number of DPUs for the Glue job.
D.Convert the source data to Parquet format.
AnswerC

More DPUs increase parallelism and reduce execution time.

Why this answer

Increasing the number of DPUs (Data Processing Units) in AWS Glue ETL jobs allows more parallel processing of the transformation, which directly reduces runtime for CPU-bound or memory-bound tasks like joining and aggregating millions of rows. Option A: Auto Scaling adjusts DPUs based on workload but does not guarantee maximum performance; it may still be limited by the initial DPU allocation. Option B: DynamicFrames vs DataFrames performance difference is minimal for such operations; this would not significantly reduce runtime.

Option D: Converting source data to Parquet applies to data in S3, but the source is Amazon RDS, so this conversion does not help with reading from the database. Therefore, increasing DPUs is the most effective action.

41
MCQhard

A company ingests streaming data from multiple sources into a single Kinesis Data Streams stream. Each source produces records with a different schema. The data must be routed to different S3 prefixes based on the source. Which approach minimizes transformation overhead?

A.Use a single Kinesis Data Firehose with a Lambda transformation that reads schema metadata from DynamoDB to determine the S3 prefix.
B.Ingest all data into S3 and use AWS Glue ETL jobs to partition and route data to different prefixes.
C.Use separate Kinesis Data Streams for each source and configure separate Firehose delivery streams.
D.Use Kinesis Data Analytics to run SQL queries that route data to different Firehose streams.
AnswerA

Using a single Kinesis Data Streams stream with a Lambda function that reads schema metadata from DynamoDB to determine the S3 prefix minimizes transformation overhead by routing data in real-time without additional storage or processing steps.

Why this answer

Using a single Kinesis Data Firehose delivery stream with a Lambda transformation that reads schema metadata from DynamoDB to determine the S3 prefix minimizes transformation overhead by routing data in real-time without additional storage or processing steps. Option B is wrong because ingesting all data into S3 first and then using AWS Glue ETL jobs to partition and route data to different prefixes adds latency and transformation overhead due to the need for batch processing. Option C is wrong because using separate Kinesis Data Streams for each source with separate Firehose delivery streams increases cost and complexity, and does not minimize transformation overhead as it requires managing multiple streams.

Option D is wrong because using Kinesis Data Analytics to run SQL queries for routing adds unnecessary complexity and overhead, as Kinesis Data Analytics is better suited for real-time analytics, not simple routing.

42
MCQhard

A data pipeline uses Amazon Kinesis Data Firehose to deliver data to an S3 bucket. The delivery stream is configured with a buffer interval of 60 seconds and a buffer size of 5 MB. The data arrives at an average rate of 2 MB per second. What is the expected time interval between S3 writes?

A.Approximately 2.5 seconds
B.Approximately 30 seconds
C.Approximately 60 seconds
D.Approximately 10 seconds
AnswerA

The buffer size of 5 MB fills in 2.5 seconds at 2 MB/s, triggering a write.

Why this answer

Amazon Kinesis Data Firehose writes to S3 when either the buffer interval (60 seconds) or buffer size (5 MB) is reached first. With data arriving at 2 MB/s, the 5 MB buffer fills in 2.5 seconds (5 MB / 2 MB/s), triggering a write before the 60-second interval expires. Thus, the expected time between S3 writes is approximately 2.5 seconds.

Exam trap

The trap here is that candidates assume the buffer interval (60 seconds) is the primary determinant of write frequency, ignoring that the buffer size threshold triggers writes much earlier when data arrival rates are high.

How to eliminate wrong answers

Option B is wrong because 30 seconds would imply a buffer fill rate of ~0.167 MB/s, which does not match the given 2 MB/s arrival rate. Option C is wrong because 60 seconds is the buffer interval, but the buffer size threshold is reached much sooner at 2.5 seconds, making the interval the active trigger only if data arrival is slower. Option D is wrong because 10 seconds would correspond to a buffer size of 20 MB (2 MB/s * 10 s), which is not the configured 5 MB buffer size.

43
MCQhard

A healthcare company is building a data pipeline to ingest electronic health records (EHR) from hospitals. The data is sent as JSON files via SFTP to an on-premises server. The company wants to move this data to AWS using AWS Transfer Family (SFTP) and then process it with AWS Glue. Data sovereignty regulations require that all data remain within the EU (Frankfurt) region. The pipeline must detect when a new file arrives and start the Glue job automatically. The engineer has set up an AWS Transfer Family server in Frankfurt, and files are uploaded to an S3 bucket in the same region. However, the Glue job is not triggering automatically. The engineer needs to implement automated triggering. What should the engineer do?

A.Configure AWS Step Functions to poll the S3 bucket every minute and start the Glue job if new files exist.
B.Configure Amazon CloudWatch Events to trigger the Glue job on a schedule that checks for new files.
C.Use Amazon Simple Queue Service (SQS) to queue file metadata and have a Lambda function poll the queue to start the Glue job.
D.Set up an S3 event notification on the bucket to invoke an AWS Lambda function that starts the Glue job.
AnswerD

S3 event notifications can invoke Lambda immediately when a new file is uploaded.

Why this answer

S3 event notifications can be configured to invoke an AWS Lambda function when a new object is created in the bucket, and the Lambda function can then start the AWS Glue job. This is the simplest and most direct method for automated triggering. Option A (Step Functions) adds unnecessary complexity and polling overhead.

Option B (CloudWatch Events) cannot directly monitor S3 object creation events; it would require additional custom logic. Option C (SQS) is an unnecessary intermediary; S3 can directly invoke Lambda without needing a queue.

44
MCQeasy

A company needs to ingest data from multiple on-premises databases into Amazon S3 for analytics. The databases include Oracle, MySQL, and PostgreSQL. The data must be continuously replicated with minimal latency. Which AWS service should be used?

A.AWS Database Migration Service (AWS DMS)
B.Amazon Kinesis Data Streams
C.AWS Snowball
D.AWS Glue
AnswerA

DMS can continuously replicate from multiple source databases to S3.

Why this answer

AWS DMS supports continuous replication (change data capture, CDC) from Oracle, MySQL, and PostgreSQL to S3 as a target, enabling near-real-time data ingestion with minimal latency. It handles schema conversion and can replicate ongoing changes without interrupting source databases, making it the correct choice for this use case.

Exam trap

The trap here is that candidates may confuse Kinesis Data Streams as a general-purpose ingestion service for databases, but it lacks native CDC connectors for relational databases and is optimized for streaming data from applications, not for replicating transactional changes from databases to S3.

How to eliminate wrong answers

Option B is wrong because Amazon Kinesis Data Streams is a real-time streaming service for ingesting high-throughput data from applications or devices, not designed for continuous database replication with CDC from relational databases. Option C is wrong because AWS Snowball is a physical data transfer device for offline, bulk data migration, not suitable for continuous, low-latency replication. Option D is wrong because AWS Glue is a serverless ETL service primarily for batch data transformation and cataloging, not for continuous replication with minimal latency from live databases.

45
MCQeasy

A company needs to ingest data from an external FTP server into AWS S3. The FTP server is not accessible from the internet. Which AWS service should be used to securely transfer the data?

A.Kinesis Data Firehose
B.AWS Transfer Family with SFTP endpoint in a VPC
C.AWS DataSync
D.AWS Snowball Edge
AnswerB

AWS Transfer Family supports SFTP and can be configured with a VPC endpoint to securely transfer data from an FTP server in a private network to S3.

Why this answer

AWS Transfer Family supports SFTP and can be configured with a VPC endpoint to securely transfer data from an FTP server in a private network to S3. Option A is wrong because Kinesis Data Firehose is designed for streaming data ingestion, not for FTP transfers. Option C is wrong because AWS DataSync requires network connectivity to the source, and the FTP server is not internet-accessible.

Option D is wrong because AWS Snowball Edge is intended for large-scale offline data transfers, not regular FTP-based transfers.

46
MCQhard

A data engineering team needs to ingest streaming data from thousands of IoT devices. The data must be processed in near real-time and stored in Amazon S3 in Apache Parquet format partitioned by device_id and timestamp. Which combination of services should the team use to minimize operational overhead and cost?

A.Amazon Kinesis Data Streams, Amazon EC2 for processing, and Amazon S3 with lifecycle policies.
B.Amazon MSK (Kafka), AWS Glue Streaming, and Amazon S3.
C.Amazon Kinesis Data Streams, Amazon Kinesis Data Firehose, and optionally AWS Lambda.
D.Amazon S3 Transfer Acceleration and AWS Lambda for event-driven transformation.
AnswerC

Kinesis provides serverless ingestion and Firehose handles delivery, Parquet conversion, and partitioning.

Why this answer

Amazon Kinesis Data Streams ingests streaming data from thousands of IoT devices in near real-time. Kinesis Data Firehose delivers the data directly to Amazon S3 with built-in conversion to Apache Parquet and automatic partitioning by device_id and timestamp, minimizing operational overhead. AWS Lambda can optionally be used for lightweight transformations if needed.

Option A is incorrect because using Amazon EC2 for processing adds significant operational overhead for scaling and management. Option B is incorrect because Amazon MSK (Kafka) and AWS Glue Streaming require more operational overhead and are not as cost-effective for this simple near-real-time use case. Option D is incorrect because S3 Transfer Acceleration is designed for large file transfers over long distances, not for streaming data ingestion, and AWS Lambda alone cannot handle continuous streaming without a dedicated ingestion service like Kinesis.

47
MCQhard

Refer to the exhibit. A data engineer runs a Glue job manually and receives a ThrottlingException. The engineer checks the job run history and sees a previous failure with the same error. What is the MOST likely cause of the throttling, and which solution is MOST appropriate?

A.Increase the number of DPUs for the job to reduce runtime.
B.Implement retry logic with exponential backoff in the script that calls start-job-run.
C.Use AWS Glue reserved capacity to guarantee API throughput.
D.Delete old job runs to reduce the number of entries in the job run history.
AnswerB

Implementing retry logic with exponential backoff in the script that calls StartJobRun handles transient throttling by retrying after delays, which is the appropriate solution for exceeding API rate limits.

Why this answer

The error 'ThrottlingException' indicates the Glue API rate limit has been exceeded. The most likely cause is making too many API calls, such as multiple concurrent job starts. Implementing retry logic with exponential backoff in the script that calls StartJobRun will handle transient throttling.

Option A (increasing DPUs) does not affect API rate limits. Option C (using reserved capacity) reserves compute capacity, not API throughput, so it does not prevent throttling. Option D (deleting old job runs) does not reduce API calls; it only affects job history visibility.

48
MCQmedium

A media company ingests video files from content partners into an Amazon S3 bucket. Each video file is 10-50 GB. Upon upload, an AWS Lambda function is triggered to extract metadata (e.g., resolution, duration) and store it in DynamoDB. The company now wants to also generate a thumbnail image for each video. The thumbnail generation is CPU-intensive and can take up to 5 minutes per video. The Lambda function has a maximum execution time of 15 minutes. The company has noticed that some thumbnail generation tasks are timing out. What should the data engineer do to reliably generate thumbnails for all videos?

A.Provision an EC2 instance to run a script that polls S3 for new videos and generates thumbnails
B.Use AWS Glue with a Python shell job to generate thumbnails
C.Increase the Lambda timeout to 15 minutes and allocate more memory
D.Use AWS Batch to run a containerized thumbnail generation job triggered by S3 events
AnswerD

Batch is optimized for batch computing and can handle long-running jobs.

Why this answer

Use AWS Batch to run a containerized thumbnail generation job triggered by S3 events. AWS Batch is designed for long-running, compute-intensive workloads like video processing, and it can automatically scale resources based on the job queue. Option A (EC2 instance) requires manual management and scaling.

Option B (Glue Python shell) is intended for ETL jobs, not CPU-intensive video processing. Option C (increasing Lambda timeout and memory) may still not be reliable for 5-minute thumbnail generation since Lambda has a maximum execution time of 15 minutes and is not optimized for heavy compute tasks; it could still time out or be cost-inefficient.

49
MCQmedium

A company is using Amazon Kinesis Data Streams with a Lambda consumer to process clickstream data. The data rate is high and the Lambda function is falling behind, resulting in increased processing latency. What is the MOST effective way to improve throughput?

A.Increase the memory allocated to the Lambda function.
B.Increase the Lambda function timeout.
C.Use Kinesis Data Firehose instead of Lambda.
D.Increase the number of shards in the Kinesis stream.
AnswerD

More shards increase parallelism and throughput.

Why this answer

Increasing the number of shards in the Kinesis stream increases the stream's total read capacity, allowing more concurrent Lambda invocations to process records in parallel. Since each shard supports up to 5 read transactions per second and a maximum of 2 MB/s read throughput, adding shards directly raises the aggregate throughput, enabling the Lambda consumer to keep up with the high data rate.

Exam trap

The DEA-C01 exam often tests the misconception that Lambda performance tuning (memory/timeout) is the primary solution for stream processing backpressure, when in fact the shard count is the fundamental parallelism bottleneck in Kinesis Data Streams with a Lambda consumer.

How to eliminate wrong answers

Option A is wrong because increasing Lambda memory also increases CPU allocation, which can speed up individual function execution, but it does not address the bottleneck of limited shard-level parallelism; the function is falling behind due to insufficient concurrent processing capacity, not per-invocation performance. Option B is wrong because increasing the Lambda timeout only allows the function to run longer before being terminated, but it does not improve throughput; if the function is already timing out, extending the timeout may mask the issue but does not increase the rate at which records are consumed. Option C is wrong because Kinesis Data Firehose is a delivery stream that buffers and loads data to destinations like S3 or Redshift; it does not support real-time per-record processing with custom logic like Lambda, and switching to Firehose would lose the ability to transform or react to each record individually, which is likely required for clickstream processing.

50
MCQhard

A data engineer is designing a data ingestion pipeline for clickstream data that arrives in bursts, up to 100 MB/s, and must be processed with exactly-once semantics. The data must be stored in Amazon S3 partitioned by event date and hour. Which combination of services should the engineer use?

A.Amazon Kinesis Data Streams with AWS Lambda consumer writing to S3.
B.Amazon Kinesis Data Firehose with S3 destination and dynamic partitioning.
C.AWS Glue streaming ETL job reading from Amazon MSK and writing to S3.
D.Amazon Kinesis Data Streams with KCL application writing to S3.
AnswerB

Firehose handles bursts and supports partitioning with no custom code.

Why this answer

Amazon Kinesis Data Firehose with dynamic partitioning can directly ingest high-velocity clickstream data (up to 100 MB/s bursts) and automatically partition it by event date and hour in S3 with no custom code. It supports exactly-once delivery to S3 when configured with the `S3DestinationConfiguration` and appropriate error handling, meeting the burst throughput and partitioning requirements without managing consumers.

Exam trap

The trap here is that candidates often choose Kinesis Data Streams with Lambda (Option A) for real-time processing, overlooking Lambda's throughput limits and the fact that Firehose is purpose-built for high-volume streaming ingestion with automatic partitioning and exactly-once delivery to S3.

How to eliminate wrong answers

Option A is wrong because AWS Lambda has a maximum invocation duration of 15 minutes and a payload limit of 6 MB for synchronous invocations, making it unsuitable for sustained 100 MB/s bursts without complex sharding and throttling risks. Option C is wrong because AWS Glue streaming ETL jobs reading from Amazon MSK require managing Kafka clusters and do not natively provide exactly-once semantics to S3 without additional checkpointing logic, and MSK adds operational overhead. Option D is wrong because a Kinesis Client Library (KCL) application requires provisioning and managing compute resources (e.g., EC2 or ECS) to process records, and writing directly to S3 from a custom application does not guarantee exactly-once semantics without idempotency handling, unlike Firehose's built-in buffering and retry mechanism.

51
Multi-Selecteasy

A company is using AWS Glue to catalog data in Amazon S3. The data is stored in CSV format, but the schema is not consistent across all files. Which TWO actions can the company take to handle schema evolution and ensure the Glue Data Catalog is up to date? (Choose TWO.)

Select 2 answers
A.Configure the Glue crawler to update the table schema on each run.
B.Manually update the Glue Data Catalog tables whenever the schema changes.
C.Disable schema update in the crawler and add partitions manually.
D.Schedule the Glue crawler to run periodically to detect changes.
E.Require all data producers to use a single fixed schema.
AnswersA, D

This allows the crawler to automatically detect and apply schema changes.

Why this answer

Options A and D are correct. Configuring the Glue crawler to update the table schema on each run (A) allows automatic schema evolution, while scheduling the crawler to run periodically (D) ensures that changes in the data are captured. Option B (manual update) is not scalable.

Option C (disabling schema update) would prevent automatic updates. Option E (fixed schema) is impractical for evolving data.

52
MCQhard

A data engineer runs an AWS Glue ETL job that reads from a large Amazon S3 source (several terabytes of CSV files) and writes transformed data to an S3 bucket in Parquet format. The job fails with the error shown in the exhibit. The job uses the Standard worker type with 10 workers (G.1X). The engineer needs to resolve the failure with minimal cost increase. What should the engineer do?

A.Increase the number of workers to 20 while keeping G.1X worker type.
B.Change the worker type to G.2X with 10 workers.
C.Change the worker type to G.4X with 10 workers.
D.Set the 'coalesce' parameter to reduce the number of output files.
AnswerB

G.2X provides double the memory (32 GB) per worker compared to G.1X (16 GB), resolving the heap space error with minimal cost increase.

Why this answer

The error indicates that the Glue job is running out of memory during the shuffle phase, which is common when processing large datasets with transformations that require data redistribution. Changing the worker type to G.2X doubles the memory per worker (from 16 GB to 32 GB) without increasing the number of workers, providing the necessary memory headroom for the shuffle operation at a minimal cost increase compared to scaling out with more workers.

Exam trap

The trap here is that candidates assume scaling out (more workers) is always the cheapest fix, but increasing worker memory (scaling up) is often more cost-effective for memory-bound shuffle operations because it avoids the overhead of additional task serialization and network shuffling.

How to eliminate wrong answers

Option A is wrong because increasing the number of workers to 20 with G.1X type adds more total memory but does not address the per-worker memory limit; the shuffle phase still runs on individual executors and may exceed the 16 GB limit, plus it increases cost more than changing worker type. Option C is wrong because G.4X provides 64 GB per worker, which is excessive over-provisioning for this scenario and results in a higher cost than necessary. Option D is wrong because setting 'coalesce' reduces the number of output files but does not increase the memory available to executors during the shuffle phase; the failure is due to memory exhaustion during processing, not output file count.

53
Multi-Selecthard

A company uses AWS DMS to continuously replicate data from an on-premises SQL Server to Amazon Aurora MySQL. The replication lag is increasing. Which THREE actions can reduce the lag? (Choose three.)

Select 3 answers
A.Use parallel apply on the target endpoint.
B.Filter out unnecessary tables from replication.
C.Enable DMS validation.
D.Enable Multi-AZ for the DMS replication instance.
E.Increase the DMS replication instance size.
AnswersA, B, E

Parallel apply speeds up writes on the target.

54
MCQeasy

A data engineer needs to ingest JSON data from an on-premises relational database into Amazon S3 every hour. Which AWS service should be used to set up a scheduled, incremental data transfer?

A.Amazon S3 Transfer Acceleration with a cron job.
B.AWS Database Migration Service (DMS) with S3 as target.
C.AWS Glue with a JDBC connection and a scheduled crawler.
D.Amazon Kinesis Data Firehose with a database source.
AnswerB

DMS supports scheduled, incremental transfers from databases to S3.

Why this answer

AWS DMS is purpose-built for migrating databases to AWS targets, including Amazon S3. It supports ongoing replication (change data capture) and scheduled full-load tasks, making it ideal for hourly incremental transfers from an on-premises relational database to S3 without custom scripting.

Exam trap

The trap here is that candidates confuse AWS Glue's ETL capabilities with DMS's managed database migration, assuming Glue's JDBC connections can handle incremental transfers, but Glue lacks built-in change data capture and requires custom logic for scheduled incremental loads.

How to eliminate wrong answers

Option A is wrong because S3 Transfer Acceleration only speeds up uploads over long distances via edge locations; it does not provide scheduling, incremental data capture, or database connectivity. Option C is wrong because AWS Glue crawlers are designed for schema discovery and metadata cataloging, not for scheduled incremental data transfer from a database to S3; Glue ETL jobs can do this but require custom code, whereas DMS is the managed service for database migration. Option D is wrong because Kinesis Data Firehose ingests streaming data from producers like Kinesis streams or direct PUT, not from a relational database via JDBC; it lacks built-in change data capture for incremental database loads.

55
Multi-Selecteasy

A company uses Kinesis Data Firehose to deliver streaming data to S3. They need to transform the data by adding a timestamp and removing sensitive fields. Which TWO approaches can achieve this?

Select 2 answers
A.Use Kinesis Data Analytics to transform the stream
B.Use S3 Select to transform data at rest
C.Use AWS Glue ETL to process data after delivery to S3
D.Use Amazon Redshift Spectrum to transform data
E.Configure a Lambda function as a data transformation in Firehose
AnswersC, E

Glue can transform data after it is stored in S3.

Why this answer

Options C and E are correct. E: Kinesis Firehose can invoke a Lambda function to transform records (add timestamp, remove fields) before delivery to S3. C: AWS Glue ETL can process data after it is stored in S3, performing transformations like adding timestamps and removing sensitive fields.

Option A is incorrect because Kinesis Data Analytics is for real-time analytics, not for adding timestamps or removing fields in the Firehose pipeline. Option B is incorrect because S3 Select is used to retrieve subsets of data using SQL, not to transform data. Option D is incorrect because Redshift Spectrum is for querying data in S3, not for transforming it.

56
MCQhard

A data engineer is designing a data ingestion pipeline for real-time clickstream data from a website. The data must be stored in Amazon S3 in near-real time, and also be available for real-time analytics using Amazon Athena. The pipeline must handle occasional spikes of up to 10x the normal throughput. Which combination of services should the engineer use?

A.Amazon Simple Queue Service (SQS) with AWS Lambda to write to Amazon S3, and Amazon Athena for queries.
B.AWS Database Migration Service (DMS) to stream data to Amazon S3, and Amazon Athena for queries.
C.Amazon Kinesis Data Streams with AWS Lambda to write to Amazon S3, and Amazon Athena for queries.
D.Amazon Kinesis Data Firehose with AWS Glue for transformation, and Amazon Athena for queries.
AnswerC

Kinesis handles spikes, Lambda writes to S3, Athena queries.

Why this answer

Amazon Kinesis Data Streams can handle high throughput spikes (10x normal) with its scalable stream capacity. AWS Lambda can process records in near-real time and write them to Amazon S3. Amazon Athena can query the data directly from S3 using its schema-on-read approach.

Option A is wrong because Amazon SQS is a pull-based queue; Lambda would need to poll SQS, adding latency and complexity for near-real-time ingestion. Option B is wrong because AWS DMS is designed for database migration and continuous replication, not for ingesting real-time clickstream data from a website. Option D is wrong because Amazon Kinesis Data Firehose is a simpler option for streaming data to S3, but the question requires near-real-time availability for Athena; Firehose has a minimum buffer interval of 60 seconds, which may not meet near-real-time requirements, and AWS Glue is typically used for batch ETL rather than low-latency streaming transformations.

57
MCQeasy

A company wants to ingest real-time clickstream data from a website into Amazon S3 with minimal code. The data should be delivered within 60 seconds of generation. Which AWS service should be used?

A.Amazon Kinesis Data Firehose
B.AWS Database Migration Service (DMS)
C.Amazon Kinesis Data Streams
D.Amazon S3 Transfer Acceleration
AnswerA

Firehose is designed for near-real-time streaming ingestion into S3 with minimal configuration.

Why this answer

(Amazon Kinesis Data Firehose) is correct because it is a fully managed service that can ingest real-time clickstream data and deliver it to Amazon S3 in near-real-time (typically less than 60 seconds). Option B (AWS DMS) is for database migration, not streaming ingestion. Option C (Amazon Kinesis Data Streams) requires custom consumers to process and deliver data to S3, adding code overhead.

Option D (S3 Transfer Acceleration) only speeds up uploads but does not provide streaming ingestion capabilities.

58
MCQeasy

A data engineer needs to transfer 50 TB of historical data from an on-premises Hadoop cluster to Amazon S3. The company has a slow internet connection (100 Mbps). The data must be transferred within 2 weeks. Which service should the engineer recommend?

A.AWS DataSync
B.AWS Snowball Edge
C.Amazon Kinesis Data Firehose
D.AWS Glue ETL job with JDBC connection to Hadoop
AnswerB

Snowball Edge physically transfers data, bypassing network limitations.

Why this answer

B is correct because transferring 50 TB over a 100 Mbps connection would take approximately 48 days (50 TB * 1024 GB/TB * 8 bits/byte / (100 Mbps * 86400 seconds/day)), far exceeding the 2-week deadline. AWS Snowball Edge is a physical appliance that can be loaded with data on-premises and shipped to AWS, bypassing the slow network entirely and completing the transfer within days.

Exam trap

The trap here is that candidates may choose AWS DataSync (Option A) because it is a common migration tool, but they fail to calculate the transfer time over a slow link, overlooking the physical appliance option when bandwidth is severely constrained.

How to eliminate wrong answers

Option A is wrong because AWS DataSync is a network-based transfer service that still relies on the internet connection; at 100 Mbps, it would take over 48 days to transfer 50 TB, exceeding the 2-week requirement. Option C is wrong because Amazon Kinesis Data Firehose is designed for real-time streaming data ingestion, not for batch transfer of 50 TB of historical data from a Hadoop cluster. Option D is wrong because AWS Glue ETL with a JDBC connection would require pulling data over the slow network, which is impractical for 50 TB, and Glue is optimized for schema discovery and transformation, not bulk data migration.

59
Multi-Selecthard

A company uses Amazon Kinesis Data Analytics for Apache Flink to process streaming data. The Flink application reads from a Kinesis Data Streams source, performs aggregations, and writes results to Amazon S3. The application is experiencing high checkpoint failures, and the processing lag is increasing. The data volume is 50 MB/s with an average record size of 1 KB. Which TWO actions would improve checkpoint reliability and reduce lag? (Choose TWO.)

Select 2 answers
A.Decrease the checkpoint interval to complete checkpoints faster.
B.Replace the S3 sink with Kinesis Data Firehose.
C.Decrease the parallelism of the Flink application.
D.Increase the checkpoint interval in the Flink configuration.
E.Increase the number of Kinesis Processing Units (KPUs) for the application.
AnswersD, E

Less frequent checkpoints reduce overhead.

Why this answer

Increasing the checkpoint interval (Option D) reduces the frequency of checkpoint operations, which decreases the overhead on the Flink application and allows it to dedicate more resources to processing data, thereby reducing lag. This is especially effective when checkpoint failures are caused by the system being unable to complete checkpoints within the current interval due to high throughput (50 MB/s).

Exam trap

The trap here is that candidates often think decreasing the checkpoint interval will speed up checkpoints, but in reality, it increases overhead and failure rates, while increasing parallelism (Option C) seems intuitive but actually reduces per-task resources and can worsen backpressure.

60
MCQhard

A financial services company processes real-time stock trade data. They use Amazon Kinesis Data Streams with a shard count of 5, each shard receiving about 500 records per second. The consumer application uses the Kinesis Client Library (KCL) with DynamoDB for checkpointing. Lately, some records are being processed multiple times. What is the most likely cause?

A.The consumer application is crashing and restarting, causing re-processing of records.
B.The Kinesis stream's iterator age is exceeding the retention period.
C.The DynamoDB table used for checkpointing is throttling write requests.
D.The record size exceeds the 1 MB API limit, causing retries.
AnswerA

KCL reprocesses from last checkpoint after failure.

Why this answer

The Kinesis Client Library (KCL) uses DynamoDB to track checkpoint progress for each shard. If the consumer application crashes and restarts, the KCL will resume processing from the last committed checkpoint, which may be behind the actual processing point. This causes records that were already processed (but not yet checkpointed) to be re-processed, leading to duplicate processing.

Exam trap

The trap here is that candidates often confuse checkpoint throttling (Option C) with duplicate processing, but throttling would cause checkpoint failures and potential re-processing only if the application cannot recover, whereas the direct cause of duplicates is the gap between processing and checkpointing after a crash.

How to eliminate wrong answers

Option B is wrong because iterator age exceeding the retention period would cause data to expire and become unavailable, not cause duplicate processing. Option C is wrong because DynamoDB throttling on checkpoint writes would cause checkpoint failures and potential re-processing, but the question states checkpointing is occurring and the issue is duplicate processing, not checkpoint failures. Option D is wrong because the 1 MB API limit applies to the total payload per PutRecords request, not per record, and exceeding it would cause write failures or retries, not duplicate processing of already-successful records.

61
Multi-Selectmedium

A company needs to ingest streaming data from thousands of IoT devices. The data must be processed in real-time and stored in Amazon S3. Which TWO services should be used together?

Select 2 answers
A.Amazon Kinesis Data Streams
B.Amazon Kinesis Data Firehose
C.AWS Glue
D.Amazon Simple Queue Service (SQS)
E.AWS Direct Connect
AnswersA, B

Provides real-time data ingestion.

Why this answer

Amazon Kinesis Data Streams is correct because it provides a scalable, real-time data ingestion service that can capture streaming data from thousands of IoT devices with low latency. Amazon Kinesis Data Firehose is correct because it can directly consume data from Kinesis Data Streams and automatically deliver it to Amazon S3 without requiring custom code for buffering, transformation, or loading.

Exam trap

The trap here is that candidates often confuse Kinesis Data Firehose with Kinesis Data Streams, thinking only one is needed, but the question requires both: Data Streams for real-time ingestion from devices and Data Firehose for automated delivery to S3.

62
MCQmedium

A company is ingesting data from multiple sources into S3 using AWS Glue. The data engineer notices that the Glue job is failing with an OutOfMemory error. Which step should be taken to resolve this issue?

A.Reduce the volume of incoming data
B.Configure the job to use a larger memory setting
C.Use a smaller file size for input
D.Increase the number of DPUs allocated to the Glue job
AnswerD

More DPUs provide more memory and compute.

Why this answer

AWS Glue jobs run on Apache Spark, which distributes data processing across multiple executors. An OutOfMemory error typically indicates that the data being processed exceeds the memory available to the executors. Increasing the number of DPUs (Data Processing Units) allocates more memory and compute resources to the job, allowing it to handle larger datasets without running out of memory.

Exam trap

The trap here is that candidates may think they can directly increase memory settings (Option B) or reduce data volume (Option A), but AWS Glue abstracts memory management through DPUs, and the correct approach is to increase DPU allocation to provide more resources.

How to eliminate wrong answers

Option A is wrong because reducing the volume of incoming data is not a scalable solution and may not be feasible; the job should be able to handle the required data volume. Option B is wrong because AWS Glue does not allow direct configuration of memory settings per executor; memory is tied to DPU allocation, and increasing DPUs is the correct way to increase total memory. Option C is wrong because using a smaller file size for input does not address the root cause of memory exhaustion; Glue can process many small files efficiently, but the issue is the total data volume or skewed partitions, not file size.

63
Multi-Selectmedium

A data engineering team is using AWS DMS to migrate a 2 TB Oracle database to Amazon RDS for PostgreSQL. The migration must have minimal downtime and needs to capture ongoing changes after the full load. Which THREE resources are required for this task? (Choose three.)

Select 3 answers
A.A DMS source endpoint configured for Oracle.
B.An AWS DMS replication instance.
C.An AWS Snowball Edge device for initial data transfer.
D.An Amazon S3 bucket for staging the data.
E.A DMS target endpoint configured for Amazon RDS PostgreSQL.
AnswersA, B, E

Connects to the source Oracle database.

Why this answer

A source endpoint for Oracle is required to connect to the source Oracle database. Option B is correct because an AWS DMS replication instance is needed to run the migration tasks. Option E is correct because a target endpoint for Amazon RDS PostgreSQL is required.

Option C is incorrect because an AWS Snowball Edge device is used for offline data transfer, not for DMS ongoing replication. Option D is incorrect because an Amazon S3 bucket is not required for a direct DMS migration; it would be used only if staging in S3.

64
MCQmedium

A company uses AWS Glue ETL to process data from Amazon S3 and write results to Amazon Redshift. The job fails with a memory error when processing large files. Which action should the data engineer take to resolve this issue?

A.Reduce the number of partitions in the Glue job.
B.Increase the number of DPUs allocated to the Glue job.
C.Switch to a smaller instance type in the Glue job configuration.
D.Use S3 Select to filter columns before reading into Glue.
AnswerB

More DPUs provide additional memory and compute resources.

Why this answer

Increasing the number of DPUs (Data Processing Units) allocated to the AWS Glue job provides more memory and compute resources, which directly addresses the out-of-memory error when processing large files. Glue jobs run on Apache Spark, and insufficient DPUs can cause executors to run out of memory during shuffle or aggregation operations on large datasets.

Exam trap

The trap here is that candidates may confuse memory errors with I/O bottlenecks and incorrectly choose S3 Select (Option D) to reduce data volume, when the real issue is insufficient compute memory for Spark transformations.

How to eliminate wrong answers

Option A is wrong because reducing the number of partitions would increase the data size per partition, worsening memory pressure and likely causing the same or a more severe memory error. Option C is wrong because switching to a smaller instance type would reduce available memory per executor, directly contradicting the need to resolve a memory error. Option D is wrong because S3 Select can reduce the amount of data read from S3, but it does not increase the memory available to the Glue job's Spark executors; the memory error occurs during processing, not during data ingestion.

65
MCQmedium

A company wants to ingest data from a SaaS application into Amazon S3. The SaaS application supports streaming data via HTTP POST requests. The data volume is approximately 100 MB per hour, and the company needs to store the raw data in S3 for archival and later analysis. Which approach is the most cost-effective and operationally efficient?

A.Launch a t3.nano EC2 instance that runs a script to receive HTTP POST requests and write to S3.
B.Use Amazon Kinesis Data Firehose with HTTP endpoint as the source, and configure S3 as the destination.
C.Use Amazon Simple Queue Service (SQS) to queue the HTTP POST data and have an AWS Lambda function read from SQS and write to S3.
D.Use Amazon API Gateway to create a REST API that receives the data and triggers an AWS Lambda function to store it in S3.
AnswerD

API Gateway provides a fully managed HTTP endpoint to receive the POST data, then triggers a Lambda function that writes to S3. This is serverless, cost-effective for low volumes, and operationally efficient.

Why this answer

Amazon API Gateway combined with AWS Lambda is the most appropriate and cost-effective approach for this use case. API Gateway provides a fully managed HTTP endpoint that can receive the HTTP POST requests from the SaaS application. The data is then passed to a Lambda function, which writes the raw data directly to Amazon S3.

This serverless architecture eliminates the need to manage servers, scales automatically, and incurs cost only when data is processed. Option B is incorrect because Amazon Kinesis Data Firehose does not natively support HTTP endpoints as a source; it can ingest data from Kinesis Data Streams, AWS IoT, or custom agents, but not directly via HTTP POST.

Exam trap

The trap is that candidates may incorrectly believe Amazon Kinesis Data Firehose can directly accept HTTP POST data. While Firehose is a great service for streaming data to S3, it does not support HTTP as a source. The correct serverless pattern for ingesting HTTP POST data is API Gateway + Lambda.

How to eliminate wrong answers

Option A is wrong because a t3.nano EC2 instance requires ongoing management (patching, scaling, monitoring) and incurs fixed hourly costs even at low data volumes, making it less cost-effective and operationally efficient than a serverless solution. Option C is wrong because SQS is a message queue, not a streaming ingestion endpoint; it would require additional components (e.g., an HTTP endpoint to receive POSTs and put to SQS) and the Lambda function adds latency and complexity, whereas Firehose directly accepts HTTP POSTs. Option D is wrong because API Gateway + Lambda introduces per-request costs and cold start latency, and it is over-engineered for simple streaming ingestion; Firehose provides built-in buffering, compression, and direct S3 delivery without custom code.

66
MCQhard

A data engineer is setting up an Amazon Kinesis Data Analytics application to process streaming data from a Kinesis data stream named "input-stream". The application uses a reference data source from an S3 bucket. The engineer has attached the IAM policy shown in the exhibit to the application's IAM role. When starting the application, the engineer receives an 'AccessDeniedException' error. Which additional permission is required?

A.kinesis:PutRecord on the input stream
B.s3:GetObject on the S3 bucket containing the reference data
C.kinesis:CreateStream on the input stream
D.kinesis:PutRecords on the input stream
AnswerB

The application needs to read reference data from S3, so GetObject is required.

Why this answer

The Kinesis Data Analytics application needs to read reference data from the S3 bucket, which requires the s3:GetObject permission on the bucket and its objects. The error 'AccessDeniedException' indicates the IAM role lacks this specific permission to retrieve the reference data file. Option B correctly adds the missing s3:GetObject action to allow the application to fetch the reference data from S3.

Exam trap

The trap here is that candidates often confuse the direction of data flow and assume the application needs write permissions (PutRecord/PutRecords) to the input stream, when in fact it only needs read permissions (kinesis:DescribeStream, kinesis:GetShardIterator, kinesis:GetRecords) and the missing permission is for the separate S3 reference data source.

How to eliminate wrong answers

Option A is wrong because kinesis:PutRecord is used to write data to a Kinesis stream, but the application reads from the input stream as a source, not writes to it; the error is not about writing. Option C is wrong because kinesis:CreateStream is an administrative action to create a new stream, which is irrelevant to an existing stream used as input. Option D is wrong because kinesis:PutRecords is for batch writing to a stream, not for reading or for accessing reference data from S3.

67
MCQeasy

A data engineer is ingesting CSV files from an Amazon S3 bucket into a Glue Data Catalog table. The files have headers, but some files have extra columns not present in the first file. The engineer wants the Glue crawler to automatically detect the schema. Which crawler configuration option should be used?

A.Configure the crawler to 'Inherit schema from table' and set the table name.
B.Configure the crawler to 'Create a single schema for each S3 path' and enable 'Merge tables'.
C.Configure the crawler to 'Create a single schema for each S3 path' without enabling 'Merge tables'.
D.Configure the crawler to 'Create a single schema for each S3 path' and set 'Each file as a separate table'.
AnswerB

This merges schemas from all files in the path.

Why this answer

When CSV files have varying schemas (extra columns), the Glue crawler must be configured to 'Create a single schema for each S3 path' with 'Merge tables' enabled. This configuration instructs the crawler to union the schemas from all files in the S3 path, adding new columns as they appear, rather than creating separate tables for each schema variation.

Exam trap

The trap here is that candidates often assume 'Merge tables' is about combining multiple tables into one, when in fact it merges schemas from multiple files within the same S3 path into a single table definition.

How to eliminate wrong answers

Option A is wrong because 'Inherit schema from table' is not a valid Glue crawler configuration; crawlers do not inherit schemas from existing tables automatically. Option C is wrong because without enabling 'Merge tables', the crawler will create multiple tables for each distinct schema, not a single unified table. Option D is wrong because 'Each file as a separate table' would create a separate table per CSV file, which defeats the goal of having a single table with all columns merged.

68
Multi-Selectmedium

A company uses AWS Glue to run ETL jobs daily. The jobs consume data from an Amazon RDS for MySQL database and write results to Amazon S3. The company wants to minimize the impact on the source database during extraction. Which THREE actions should the data engineer take to achieve this? (Choose THREE.)

Select 3 answers
A.Schedule the Glue job to run during off-peak hours.
B.Configure the Glue job to connect to a read replica of the RDS instance.
C.Increase the number of Glue DPUs to process data faster.
D.Disable Glue job bookmarks to force full refresh.
E.Use a JDBC connection with a WHERE clause to extract only incremental data.
AnswersA, B, E

Runs when database load is naturally low.

Why this answer

Scheduling the Glue job to run during off-peak hours minimizes the load on the source RDS for MySQL database by avoiding high-traffic periods, reducing contention for CPU, memory, and I/O resources. This is a straightforward operational practice to reduce impact on production databases during extraction.

Exam trap

The trap here is that candidates often assume increasing DPUs (parallelism) always improves performance without realizing it can amplify the load on the source database, and they may overlook that disabling bookmarks forces full refreshes, which is the opposite of minimizing impact.

69
Multi-Selectmedium

A data engineer is designing a pipeline to ingest daily CSV files from an SFTP server into Amazon S3. The files are large (up to 10 GB) and must be encrypted in transit. The pipeline should be fully managed and serverless where possible. Which TWO services should be used together to achieve this? (Choose TWO.)

Select 2 answers
A.Amazon Kinesis Data Firehose
B.AWS Lambda
C.AWS Glue
D.AWS Transfer Family
E.Amazon Athena
AnswersC, D

Glue can process CSV files in S3.

Why this answer

Options C and D are correct. AWS Transfer Family provides a fully managed SFTP service that can transfer files directly to S3 with encryption in transit, meeting the requirement for serverless, managed file ingestion. AWS Glue can then be used to process the CSV files in S3, as it is a serverless ETL service suitable for batch processing large files.

Option A (Kinesis Data Firehose) is for streaming data, not batch file transfers. Option B (Lambda) has a 15-minute timeout and is not ideal for large files up to 10 GB. Option E (Athena) is a query service, not a transfer or processing service.

70
MCQhard

A data engineer is designing a data pipeline that ingests streaming data from Kinesis Data Streams, transforms it using AWS Lambda, and writes to S3. The Lambda function sometimes fails due to transient errors, and the engineer wants to ensure no data is lost. Which approach should be used?

A.Use the Kinesis Client Library to process records with checkpointing
B.Increase the Lambda function's timeout and memory
C.Use Kinesis Data Firehose as the delivery stream with Lambda for transformation and configure error handling with retries and a backup S3 bucket
D.Configure a dead-letter queue (DLQ) on Lambda to capture failed records
AnswerC

Firehose automatically retries on errors and can send failed records to a backup S3 bucket.

Why this answer

Kinesis Data Firehose natively integrates with Lambda for data transformation and provides built-in error handling with retries. If transformation fails after the retry limit, Firehose can automatically redirect failed records to a backup S3 bucket, ensuring no data is lost. This approach handles transient errors without requiring custom checkpointing or manual retry logic.

Exam trap

The DEA-C01 exam often tests the distinction between Kinesis Data Streams with Lambda triggers (which require custom error handling via DLQs or KCL) and Kinesis Data Firehose (which provides built-in retry and backup S3 for failed transformations), leading candidates to incorrectly choose DLQ or KCL options.

How to eliminate wrong answers

Option A is wrong because the Kinesis Client Library (KCL) is used for consuming data from Kinesis Data Streams with checkpointing in DynamoDB, but it does not integrate with Lambda as a trigger; the question specifies using Lambda for transformation, and KCL is a separate consumer model that would require managing EC2 instances or containers. Option B is wrong because increasing timeout and memory only reduces the likelihood of timeouts or out-of-memory errors but does not handle transient errors like network glitches or service throttling; it does not provide a mechanism to retry or capture failed records. Option D is wrong because a dead-letter queue (DLQ) on Lambda captures records that fail after all retries, but it does not automatically write to S3; the engineer would need additional logic to process the DLQ and write to S3, and the question specifically requires writing to S3 with no data loss, which Firehose handles directly.

71
MCQmedium

A company is using Amazon Kinesis Data Firehose to deliver streaming data to Amazon S3. The data must be transformed from JSON to Parquet format before landing in S3. The transformation logic is simple: convert the JSON schema to Parquet. Which approach meets the requirements with the least operational overhead?

A.Use the built-in data format conversion feature of Firehose with an AWS Glue Data Catalog table
B.Use an AWS Lambda function to transform records to Parquet before sending to Firehose
C.Use Amazon Kinesis Data Analytics to convert the stream to Parquet
D.Provision an Amazon EMR cluster to convert the data in micro-batches
AnswerA

Firehose can convert to Parquet automatically.

Why this answer

Amazon Kinesis Data Firehose provides a built-in data format conversion feature that can automatically convert incoming JSON data to Parquet format using an AWS Glue Data Catalog table as the schema reference. This approach requires no custom code, no additional infrastructure, and no manual transformation logic, making it the simplest solution with the least operational overhead for a straightforward JSON-to-Parquet conversion.

Exam trap

The trap here is that candidates often overcomplicate the solution by choosing Lambda or EMR, not realizing that Firehose's built-in format conversion with Glue Data Catalog is the simplest, fully managed option for JSON-to-Parquet conversion without any custom code.

How to eliminate wrong answers

Option B is wrong because using an AWS Lambda function to transform records to Parquet before sending to Firehose introduces unnecessary complexity, additional cost, and operational overhead (e.g., managing Lambda concurrency, packaging Parquet libraries, handling record size limits), whereas Firehose's built-in conversion handles this natively. Option C is wrong because Amazon Kinesis Data Analytics is designed for real-time analytics and stream processing using SQL or Flink, not for simple format conversion; it adds latency, complexity, and cost without benefit for a straightforward schema conversion. Option D is wrong because provisioning an Amazon EMR cluster to convert data in micro-batches is a heavy, over-engineered solution that requires cluster management, scaling, and job orchestration, far exceeding the operational overhead needed for a simple format conversion that Firehose can perform automatically.

72
MCQeasy

Refer to the exhibit. A Lambda function named 'IngestionProcessor' is failing. The engineer checks CloudWatch Logs and sees the log group exists but storedBytes is 0. Why might the logs show no data?

A.The Lambda execution role does not have permission to write logs to CloudWatch
B.The Lambda function is configured with a dead letter queue
C.The Lambda function has not been invoked yet
D.The log group is encrypted with a KMS key and the Lambda function lacks decrypt permission
AnswerA

Without logs:CreateLogGroup, CreateLogStream, PutLogEvents, logs are not written.

Why this answer

The Lambda execution role must have the `logs:CreateLogStream` and `logs:PutLogEvents` permissions to write logs to CloudWatch Logs. If the role lacks these permissions, the log group will be created (if it doesn't exist) but no log events will be written, resulting in `storedBytes` being 0. This is a common misconfiguration when the IAM policy does not include the necessary CloudWatch Logs actions.

Exam trap

The DEA-C01 exam often tests the distinction between log group creation (which requires `logs:CreateLogGroup`) and log writing (which requires `logs:CreateLogStream` and `logs:PutLogEvents`), leading candidates to confuse the existence of a log group with successful log delivery.

How to eliminate wrong answers

Option B is wrong because a dead letter queue (DLQ) is used to capture failed events for asynchronous invocations, not to prevent logs from being written; it does not affect CloudWatch Logs permissions. Option C is wrong because if the Lambda function had not been invoked, the log group would not exist at all; the presence of the log group with `storedBytes` of 0 indicates the function was invoked but failed to write logs. Option D is wrong because if the log group were encrypted with a KMS key and the Lambda function lacked decrypt permission, the function would fail with an access denied error when trying to write logs, but the log group would still show `storedBytes` as 0; however, the question states the log group exists and `storedBytes` is 0, which is consistent with missing write permissions, not KMS decryption issues (KMS errors would typically produce a different error message in CloudWatch).

73
MCQeasy

A company is using Amazon Kinesis Data Firehose to deliver data to an Amazon S3 bucket. The data is delivered in 5-minute intervals. The company wants to reduce the delivery frequency to 1 minute to get data faster. Which parameter should be changed in the Firehose delivery stream configuration?

A.Reduce the buffer interval from 300 seconds to 60 seconds.
B.Increase the buffer size to trigger delivery sooner.
C.Enable dynamic partitioning to deliver data more frequently.
D.Enable compression to reduce data size and speed up delivery.
AnswerA

The buffer interval controls the maximum time between deliveries.

Why this answer

The buffer interval determines how often data is delivered to the destination. Changing it from 300 seconds to 60 seconds will deliver data every minute. Option B (buffer size) affects delivery based on data volume, not time.

Option C (compression) does not affect frequency. Option D (partitioning) does not affect delivery frequency.

74
MCQhard

Refer to the exhibit. A Lambda function with this IAM policy is used to process records from a Kinesis stream and write to S3. The function is failing with access denied errors when writing to S3. What is the issue?

A.The function needs to use Kinesis Data Analytics for transformation.
B.The Kinesis stream ARN is incorrect.
C.The Lambda function does not have permission to read from the Kinesis stream.
D.The S3 bucket name in the policy does not match the actual bucket used by the function.
AnswerD

Common cause of access denied.

Why this answer

The IAM policy grants s3:PutObject permission on the resource 'my-bucket/*', but the Lambda function is attempting to write to an S3 bucket with a different name. Since the bucket name in the policy does not match the actual bucket used by the function, access is denied. Option A is incorrect because the function does not need Kinesis Data Analytics for transformation.

Option B is incorrect because the policy includes GetRecords and other Kinesis actions, so the Kinesis stream ARN is not the issue (if it were invalid, the error would occur when reading, not writing). Option C is incorrect because the policy explicitly allows Kinesis actions like GetRecords and DescribeStream, so the function does have permission to read from the stream.

75
MCQmedium

A company uses Amazon Kinesis Data Analytics to process real-time data. The application needs to aggregate data over a 10-minute window. The team notices that late-arriving events are being dropped. Which configuration should they adjust?

A.Configure a Kinesis Firehose delivery stream to buffer the late events.
B.Increase the shard count of the source Kinesis stream.
C.Set the allowed_lateness parameter in the application's windowed aggregation.
D.Increase the RecordColumn count in the input stream mapping.
AnswerC

Kinesis Data Analytics (now part of Amazon Managed Service for Apache Flink) provides an `allowed_lateness` parameter in windowed aggregations to handle late-arriving events.

Why this answer

Kinesis Data Analytics (now part of Amazon Managed Service for Apache Flink) provides an `allowed_lateness` parameter in windowed aggregations to handle late-arriving events. Option A is incorrect because Kinesis Firehose is used for data delivery and buffering, not for handling late events within Kinesis Data Analytics; the application itself must manage lateness. Option B is incorrect because increasing shard count increases parallelism and throughput but does not affect how late events are treated; they will still be dropped unless a lateness tolerance is set.

Option D is incorrect because `RecordColumn` count defines the schema of the input stream and has no impact on late-arriving event handling.

Page 1 of 8 · 591 questions totalNext →

Ready to test yourself?

Try a timed practice session using only Data Ingestion and Transformation questions.