Courseiva

DEA-C01 Data Operations and Support Practice Question

A company uses Amazon Kinesis Data Streams to ingest clickstream data. The data is consumed by a custom consumer application that writes to Amazon S3 every 5 minutes. The consumer is falling behind and processing lag is increasing. Which action is MOST effective to reduce the lag?

⚠ Common exam trap

Test-takers frequently confuse throughput scaling with batch size or delivery destination changes, but the only way to increase read throughput from a Kinesis stream is to increase the number of shards or use enhanced fan-out.

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 shards in the Kinesis stream

The consumer is falling behind because the stream's throughput capacity is insufficient for the incoming data volume. Increasing the number of shards in the Kinesis stream directly increases the total read capacity (each shard provides 2 MB/s read throughput and 5 transactions/second), allowing the consumer to process more data in parallel and reduce lag.

Answer analysis

Option-by-option breakdown

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

  • ✗

    Switch to Amazon Kinesis Data Firehose to deliver data directly to S3

    Why it's wrong here

    Firehose buffers and delivers to S3 on its own schedule, removing the custom consumer's per-record processing bottleneck, but it cannot replay or serve multiple consumers. It is tempting as a managed delivery path, and would be correct when only S3 delivery is needed and no custom stream processing is required.

  • ✗

    Increase the batch size of records written to S3

    Why it's wrong here

    Larger batches reduce per-write overhead but do not raise the consumer's read throughput from the shards, so lag continues growing. It is tempting because batching improves S3 write efficiency, and would be correct when write calls, not shard-level read capacity, are the limiting factor.

  • ✓

    Increase the number of shards in the Kinesis stream

    Why this is correct

    A Kinesis stream's throughput ceiling is set by shard count: each shard provides 1 MB/s or 1,000 records/s ingest and 2 MB/s egress. Adding shards raises parallel capacity so the consumer can drain the backlog faster, directly reducing processing lag.

  • ✗

    Reduce the retention period of the stream

    Why it's wrong here

    Retention controls how long records remain replayable, not how fast consumers read them; shortening it risks data loss without touching processing throughput. It is tempting because retention tuning matters when consumers must replay old records after failure, but lag from slow consumption requires more shards or enhanced fan-out.

Quick reference

AWS S3 Storage Class Comparison

Storage ClassMin DurationRetrievalUse Case
S3 StandardNoneImmediateFrequently accessed data
S3 Standard-IA30 daysImmediateInfrequent access, rapid retrieval
S3 One Zone-IA30 daysImmediateNon-critical infrequent data
S3 Intelligent-TieringNoneImmediate–hoursUnknown or changing access patterns
S3 Glacier Instant90 daysMillisecondsArchive with instant retrieval
S3 Glacier Flexible90 daysMinutes–hoursArchive, flexible retrieval
S3 Glacier Deep Archive180 daysHoursLong-term compliance archive

About these practice questions

One of 1,321 original DEA-C01 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. 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 company uses Amazon Kinesis Data Streams to ingest clickstream data from web applications. The data is consumed by a Kinesis Data Analytics application that runs SQL queries. Recently, the data analytics application has been falling behind, and the 'MillisBehindLatest' metric for the consumer has been increasing steadily. The shard count is 4, and the average records per second per shard is 200, with an average record size of 1 KB. The provisioned shard limit for the account is 10. Which action will resolve the issue?

medium
  • A.Enable enhanced fan-out on the Kinesis stream and subscribe the analytics application to it.
  • B.Reduce the checkpoint interval on the Kinesis Client Library (KCL) consumer to commit offsets more frequently.
  • ✓ C.Increase the number of shards in the Kinesis stream to 8.
  • D.Increase the provisioned write capacity of the Kinesis stream by requesting a shard limit increase.

Why C: The issue is that the Kinesis Data Analytics application is falling behind because the stream does not have enough shards to handle the incoming data rate. With 4 shards, each shard can handle up to 1 MB/s or 1000 records/s. The current load is 200 records/s per shard with 1 KB records, which is 200 KB/s per shard, well within limits. However, the analytics application might be limited by the number of shards for parallel processing. Increasing shards to 8 allows more parallelism and throughput. Also, the provisioned shard limit is 10, so 8 is feasible.

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.