Q90 — AWS SAA-C03 第15章
第 90/100 問 | ← 第15章
Q1190. ある企業は、複数のコンシューマーが Amazon Kinesis Data Streams からデータを消費しています。この企業は、すべてのコンシューマー間でスループットを共有したいと考えています。また、特定の1つのコンシューマーがストリームのスループットを独占することを防ぐ必要があります。さらに、各コンシューマーには独自の読み取りスループットが必要であり、他のコンシューマーと競合してはなりません。これらの要件を満たす解決策はどれですか?
- A. 各コンシューマーが独自の専用スループットを受信できるよう、エンハンストファンアウト(enhanced fan-out)を設定します。 ✓
- B. ストリーム内のシャード数を増加させます。
- C. コンシューマー内でリース管理(lease management)を設定します。
- D. データをコンシューマーに配信する前に、Amazon Simple Queue Service(Amazon SQS)キューに送信します。
正解: A. 各コンシューマーが独自の専用スループットを受信できるよう、エンハンストファンアウト(enhanced fan-out)を設定します。
解説
企業の要件——全コンシューマー間でのスループット共有、特定コンシューマーによるスループットの独占防止、および各コンシューマーへの専用読み取りスループットの保証(他コンシューマーとの競合なし)——を満たす最適な解決策は以下の通りです: A. 各コンシューマーが独自の専用スループットを受信できるよう、エンハンストファンアウトを設定します。 選択肢の分析: A. エンハンストファンアウトを設定する:メリット — Amazon Kinesis Data Streams のエンハンストファンアウトでは、シャードあたり各コンシューマーに2 MB/秒の専用スループットが保証されます。これにより、各コンシューマーは他のコンシューマーの読み取り操作に影響を受けず、独自のペースでデータを読み取ることができます。このソリューションは、スループットの共有と独占防止という要件を直接かつ確実に満たします。 B. ストリーム内のシャード数を増加させる:制限点 — シャード数の増加はストリーム全体のスループット容量を向上させますが、個々のコンシューマーがスループットを独占することを本質的に防ぐものではありません。各コンシューマーは引き続きシャード間の利用可能なスループットを競い合い、結果として特定のコンシューマーが過剰にスループットを消費する可能性があります。 C. コンシューマー内でリース管理を設定する:制限点 — リース管理は、分散システムにおいて共有リソースへのアクセスを調整するために使用される手法ですが、各コンシューマーに専用スループットを提供する機能はありません。重複読み取りの防止には役立つ場合もありますが、スループットの公平な分配や独占防止という課題には対応できません。 D. データを Amazon SQS キューに送信してからコンシューマーに配信する:制限点 — Amazon SQS を活用すれば、プロデューサーとコンシューマーの非同期連携やメッセージバッファリングが可能になりますが、これは Amazon Kinesis Data Streams 固有のスループット共有・独占防止の課題を解決するものではありません。SQS は異なるアーキテクチャに基づき動作し、Kinesis のエンハンストファンアウトのような専用スループット保証を提供しません。 結論: A. 各コンシューマーが独自の専用スループットを受信できるよう、エンハンストファンアウトを設定する — が、要件を最も適切に満たす解決策です。これにより、各コンシューマーに専用スループットが保証され、スループットの独占が防止され、他のコンシューマーとの競合を回避した独立したデータ読み取りが可能になります。