Courseiva
Data Ingestion and TransformationhardMultiple SelectObjective-mapped

DEA-C01 Data Ingestion and Transformation Practice Question

A data engineer is troubleshooting a Kinesis Data Streams consumer application that is falling behind. The stream has 10 shards and is receiving 5 MB/s of data. The consumer uses the Kinesis Client Library (KCL) with a single worker. The worker is processing all 10 shards but is experiencing high latency and checkpointing delays. Which THREE actions should the engineer take to improve consumer performance? (Select THREE.)

⚠ Common exam trap

It's easy for candidates to think decreasing the checkpoint interval (Option C) reduces overhead, when in fact it increases the frequency of DynamoDB writes and can degrade performance; the correct approach is to increase the checkpoint interval or use asynchronous checkpointing.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

Increase the number of KCL workers to match the number of shards.

The KCL worker is processing all 10 shards sequentially within a single worker, causing a bottleneck. By increasing the number of KCL workers to match the number of shards, each worker can process one shard in parallel, significantly improving throughput and reducing latency. This is a standard scaling pattern for KCL-based consumers.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Increase the number of KCL workers to match the number of shards.

    Why this is correct

    Multiple workers can process shards in parallel, reducing per-worker load.

  • Enable enhanced fan-out for the consumer.

    Why this is correct

    Enhanced fan-out provides dedicated read throughput, eliminating read throttling.

  • Decrease the checkpoint interval to reduce checkpointing overhead.

    Why it's wrong here

    More frequent checkpointing increases DynamoDB writes and can cause delays.

  • Increase the KCL maxRecords parameter to process more records per call.

    Why this is correct

    Processing more records per GetRecords call reduces the number of API calls and improves throughput.

  • Increase the number of shards in the stream.

    Why it's wrong here

    More shards increase the write capacity but also increase the number of shards the consumer must process, worsening the issue.

About these practice questions

Courseiva writes every DEA-C01 question from scratch — 1,711 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

Same concept, more angles

1 more way this is tested on DEA-C01

These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.

Variation 1. A data engineer is troubleshooting a Kinesis Data Streams application that is experiencing high latency. The stream has 2 shards. The application is using a single Kinesis Client Library (KCL) worker to process all shards. Which change will MOST likely reduce latency?

hard
  • A.Increase the number of shards to 4.
  • B.Deploy multiple KCL workers to process shards in parallel.
  • C.Use a larger instance type for the Kinesis stream.
  • D.Decrease the number of shards to 1.

Why B: The application uses a single KCL worker to process all 2 shards, which processes records sequentially and causes high latency. Deploying multiple KCL workers (ideally one per shard) enables parallel processing of shards, significantly reducing latency. Option A is incorrect because increasing shard count to 4 adds more capacity but does not address the bottleneck of a single worker; the same worker would process all 4 shards sequentially, potentially worsening latency. Option C is incorrect because Kinesis Data Streams is a managed service; there is no instance type to change for the stream itself. The KCL worker runs on your compute resources, not on the stream. Option D is incorrect because decreasing shards to 1 reduces the level of parallelism, increasing the workload per shard and likely increasing latency further.

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This DEA-C01 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the DEA-C01 exam.