Q90 — AWS SAA-C03 Ch.15
Question 90 of 100 | ← Chapter 15
Q1190. A company has multiple consumers that consume data from Amazon Kinesis Data Streams. The company wants to share throughput across all consumers. The company must prevent any one consumer from monopolizing the stream's throughput. Each consumer must have its own read throughput and must not compete with other consumers.Which solution will meet these requirements?
- A. Configure enhanced fan-out to allow each consumer to receive its own dedicated throughput. ✓
- B. Increase the number of shards in the stream.
- C. Configure lease management within the consumers.
- D. Send the data to an Amazon Simple Queue Service (Amazon SQS) queue before distributing data to the consumers.
Correct Answer: A. Configure enhanced fan-out to allow each consumer to receive its own dedicated throughput.
Explanation
To meet the company's requirements of sharing throughput across all consumers while preventing any one consumer from monopolizing the stream's throughput and ensuring each consumer has its own read throughput without competing with others, the best solution is:A. Configure enhanced fan-out to allow each consumer to receive its own dedicated throughput.Analysis of Options:A. Configure enhanced fan-out to allow each consumer to receive its own dedicated throughput. Advantage: Enhanced fan-out in Amazon Kinesis Data Streams provides each consumer with its own dedicated throughput of 2 MB/second per shard. This means that each consumer can read data from the stream at its own pace without being affected by the read operations of other consumers. This solution directly meets the company's requirements by ensuring that throughput is shared across all consumers while preventing any one consumer from monopolizing the stream's throughput.B. Increase the number of shards in the stream.Limitation: Increasing the number of shards in the stream increases the overall throughput capacity of the stream, but it does not inherently prevent any one consumer from monopolizing the throughput. Each consumer would still compete for the available throughput across the shards, potentially leading to one consumer consuming more throughput than others.C. Configure lease management within the consumers.Limitation: Lease management is typically used in distributed systems to coordinate access to shared resources. While it can help manage access to the stream, it does not inherently provide each consumer with its own dedicated throughput. Lease management might help in preventing multiple consumers from reading the same data, but it does not address the issue of throughput sharing and monopolization. D. Send the data to an Amazon Simple Queue Service (Amazon SQS) queue before distributing data to the consumers.Limitation: While using Amazon SQS can help in decoupling the producers and consumers and providing a buffer for messages, it does not inherently solve the problem of throughput sharing and monopolization in the context of Amazon Kinesis Data Streams. SQS operates on a different paradigm and does not provide the same dedicated throughput guarantees as enhanced fan-out in Kinesis.Conclusion:A. Configure enhanced fan-out to allow each consumer to receive its own dedicated throughput. is the best solution to meet the company's requirements. It ensures that each consumer has its own dedicated throughput, preventing any one consumer from monopolizing the stream's throughput and allowing each consumer to read data independently without competing with others.