- A
Replace Kinesis Data Streams with Amazon Kinesis Data Firehose
Why wrong: Firehose is for delivery to destinations, not for custom stream processing with KCL.
- B
Increase the write capacity of the DynamoDB table
Why wrong: DynamoDB is not throttling, so increasing capacity will not help.
- C
Increase the number of shards in the Kinesis stream to 20
More shards increase the number of concurrent consumers and reduce iterator age.
- D
Increase the number of KCL workers to 20
Why wrong: KCL workers cannot exceed the number of shards; extra workers will be idle.
Quick Answer
The answer is to increase the number of shards in the Kinesis stream to 20. This is correct because the consumer lag, measured by the 'GetRecords.IteratorAgeMilliseconds' metric exceeding 10 seconds, indicates that the existing 10 shards cannot process incoming data fast enough, even though each shard has a dedicated KCL worker with sufficient compute resources. By doubling the shard count, you increase the stream’s ingestion capacity and allow more parallel record processing, directly reducing the iterator age to under 2 seconds. On the AWS Certified Machine Learning Specialty MLS-C01 exam, this scenario tests your understanding of Kinesis shard-level parallelism as a primary lever for resolving consumer lag, especially when the bottleneck is not downstream services like DynamoDB. A common trap is assuming adding more workers beyond the shard count helps, but KCL ties one worker per shard, so scaling shards is the only way to increase parallelism. Memory tip: “Shards are the gears—more gears, less lag.”
MLS-C01 Data Engineering Practice Question
This MLS-C01 practice question tests your understanding of data engineering. The scenario asks you to isolate a root cause — eliminate options that address a different problem before choosing. After answering, compare your reasoning against the explanation and wrong-answer breakdown below. Once you have made your selection, read the full explanation to reinforce the concept and understand why each distractor is designed to mislead on exam day.
A company runs a streaming data pipeline using Amazon Kinesis Data Streams with 10 shards. The pipeline ingests sensor data from thousands of devices. Each device sends a JSON payload every 5 seconds. The payload size is approximately 2 KB. The data is consumed by a fleet of EC2 instances running a custom Java application that uses the Kinesis Client Library (KCL). Over the past week, the company has observed that the consumer application is experiencing increased latency, and the Kinesis stream's 'GetRecords.IteratorAgeMilliseconds' CloudWatch metric is consistently above 10 seconds. The company has verified that the EC2 instances have sufficient CPU and memory resources. The KCL application is configured with 10 workers, one per shard. The application processes each record by performing a simple transformation and writing to Amazon DynamoDB. The DynamoDB table has sufficient write capacity and is not throttling. The company wants to reduce the iterator age to under 2 seconds. Which action should the company take?
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 to 20
Option A is correct because the consumer is bottlenecked by the number of shards; increasing shards allows more parallelism and reduces latency. Option B is wrong because the issue is not DynamoDB capacity. Option C is wrong because switching to Firehose would change the architecture and may not support the custom transformation. Option D is wrong because increasing worker count beyond the number of shards does not help due to KCL's design.
Key principle: Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Replace Kinesis Data Streams with Amazon Kinesis Data Firehose
Why it's wrong here
Firehose is for delivery to destinations, not for custom stream processing with KCL.
- ✗
Increase the write capacity of the DynamoDB table
Why it's wrong here
DynamoDB is not throttling, so increasing capacity will not help.
- ✓
Increase the number of shards in the Kinesis stream to 20
Why this is correct
More shards increase the number of concurrent consumers and reduce iterator age.
Related concept
Read the scenario before looking for a memorised answer.
- ✗
Increase the number of KCL workers to 20
Why it's wrong here
KCL workers cannot exceed the number of shards; extra workers will be idle.
Common exam traps
Common exam trap: answer the scenario, not the keyword
Many certification questions include familiar terms but test a specific constraint. Read the exact wording before choosing an answer that is generally true but wrong for this case.
Detailed technical explanation
How to think about this question
This question should be treated as a scenario, not a definition check. Identify the problem, the constraint and the best action. Then compare each option against those facts.
KKey Concepts to Remember
- Read the scenario before looking for a memorised answer.
- Find the constraint that changes the correct option.
- Eliminate answers that are true in general but not in this case.
- Use explanations to understand the rule behind the answer.
TExam Day Tips
- Underline the problem statement mentally.
- Watch for words such as best, first, most likely and least administrative effort.
- Review why wrong options are wrong, not only why the correct option is correct.
Key takeaway
Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option.
Real-world example
How this comes up in practice
A cloud solutions architect for a retail company is evaluating services for a new workload. The correct answer here reflects best practice for the specific scenario described — not a general cloud recommendation. Answer the scenario, not the keyword: identify the specific constraint before choosing the most familiar-sounding option. Cloud exam questions reward reading the constraint carefully: the same technology can be right or wrong depending on the use case.
What to study next
Got this wrong? Here's your next step.
Identify which MLS-C01 exam domain this question belongs to, then review the specific concept being tested. Practise related questions in that domain and focus on understanding why each wrong answer is tempting — not just why the correct answer is right.
- →
Data Engineering — study guide chapter
Learn the concepts, then practise the questions
- →
Data Engineering practice questions
Targeted practice on this topic area only
- →
All MLS-C01 questions
1,755 questions across all exam domains
- →
AWS Certified Machine Learning Specialty MLS-C01 study guide
Full concept coverage aligned to exam objectives
- →
MLS-C01 practice test guide
How to use practice tests most effectively before exam day
Related practice questions
Related MLS-C01 practice-question pages
Use these pages to review the topic behind this question. This is how one missed question becomes focused revision.
Data Engineering practice questions
Practise MLS-C01 questions linked to Data Engineering.
Machine Learning Implementation and Operations practice questions
Practise MLS-C01 questions linked to Machine Learning Implementation and Operations.
Modeling practice questions
Practise MLS-C01 questions linked to Modeling.
Exploratory Data Analysis practice questions
Practise MLS-C01 questions linked to Exploratory Data Analysis.
MLS-C01 fundamentals practice questions
Practise MLS-C01 questions linked to MLS-C01 fundamentals.
MLS-C01 scenario practice questions
Practise MLS-C01 questions linked to MLS-C01 scenario.
MLS-C01 troubleshooting practice questions
Practise MLS-C01 questions linked to MLS-C01 troubleshooting.
Practice this exam
Start a free MLS-C01 practice session
Short sessions build daily habit. Longer sessions build exam-day stamina. Try a timed session to simulate real conditions.
FAQ
Questions learners often ask
What does this MLS-C01 question test?
Data Engineering — This question tests Data Engineering — Read the scenario before looking for a memorised answer..
What is the correct answer to this question?
The correct answer is: Increase the number of shards in the Kinesis stream to 20 — Option A is correct because the consumer is bottlenecked by the number of shards; increasing shards allows more parallelism and reduces latency. Option B is wrong because the issue is not DynamoDB capacity. Option C is wrong because switching to Firehose would change the architecture and may not support the custom transformation. Option D is wrong because increasing worker count beyond the number of shards does not help due to KCL's design.
What should I do if I get this MLS-C01 question wrong?
Identify which MLS-C01 exam domain this question belongs to, then review the specific concept being tested. Practise related questions in that domain and focus on understanding why each wrong answer is tempting — not just why the correct answer is right.
What is the key concept behind this question?
Read the scenario before looking for a memorised answer.
About these practice questions
Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →
Last reviewed: Jun 20, 2026
This MLS-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 MLS-C01 exam.
Question Discussion
Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.
Sign in to join the discussion.