Q48 — AWS SAA-C03 第1章

第 48/65 問 | ← 第1章

Q48. ある企業には、イベントデータを生成するサービスがあります。この企業は、AWS を活用して受信したイベントデータをリアルタイムで処理したいと考えています。データは特定の順序で書き込まれており、処理全体を通してその順序を維持する必要があります。また、運用オーバーヘッドを最小限に抑えるソリューションを実装したいとしています。ソリューションアーキテクトは、この要件をどのように満たすべきでしょうか?

正解: A. メッセージを保持するための Amazon Simple Queue Service (Amazon SQS) FIFO キューを作成し、キューからメッセージを処理する AWS Lambda 関数を設定します。

解説

イベントデータを特定の順序で処理しつつ、運用オーバーヘッドを最小限に抑えるには、選択肢 A(Amazon SQS FIFO キューと AWS Lambda 関数の組み合わせ)が最適です。 このソリューションの仕組みは以下の通りです: 1. Amazon SQS FIFO キュー:FIFO(先入れ先出し)キューを使用することで、イベントデータの受信順序を厳密に保証します。FIFO キューは、メッセージが受信された順序で処理されることを保証します。 2. AWS Lambda 関数:サーバーレスなコンピュートサービスである AWS Lambda 関数を、SQS キューからのメッセージ処理用に設定します。キューに新しいメッセージが到着すると、Lambda 関数が自動的にトリガーされます。 このアプローチにより、以下のようなメリットが得られます: ・順序の保証:FIFO キューによって、イベントデータが受信された正確な順序で処理され、要件通りの順序維持が実現されます。 ・スケーラビリティ:AWS Lambda はワークロードに応じて自動的にスケールし、サーバー資源の管理・プロビジョニングが不要となるため、運用オーバーヘッドが大幅に削減されます。 ・非同期処理:SQS FIFO キューにより、メッセージの生成と処理が分離され、データ生成者への影響を及ぼさずに非同期でイベントデータを処理できます。 選択肢 B は不適切です。Amazon SNS トピックはメッセージ順序の保証を目的としておらず、通知配信はベストエフォートであり、順序性は保証されません。 選択肢 C も不適切です。SQS 標準キューはスケーラビリティと高スループットを重視しており、メッセージの順序は保証されません。