SAA-021
数百万件の小さなメッセージを非同期に処理します。処理順序は厳密でなく、できるだけ高いスループットを重視します。最も適したキューはどれですか?
選択肢
解説と正解
解説と正解を読む(先に自分で回答してから開くのがおすすめです)
正解:A. Amazon SQS Standard Queue
解説
SQS Standard Queueは高スループットのメッセージ処理に向いています。順序保証が必須でない場合に適しています。
選択肢ごとの解説
A. Amazon SQS Standard Queue
正解です。高スループットの非同期処理に適しています。
B. Amazon EFS
EFSは共有ファイルストレージです。
C. AWS Config
AWS Configはリソース設定の記録・評価サービスです。
D. Amazon SQS FIFO Queue
FIFO Queueは順序保証が必要な場合に使いますが、Standard Queueより要件が厳しくなります。
実務での使いどころ
Amazon SQS には Standard Queue と FIFO Queue の 2 種類が存在する。Standard Queue は「ほぼ無制限」のスループット(リージョン上限内で実質無制限の TPS)を提供し、ベストエフォートでの順序配信と、少なくとも 1 回(at-least-once)の配信保証を持つ。順序が保証されない代わりに、内部的に複数ノードへ分散することで非常に高いスループットを実現しており、数百万件規模の小メッセージ処理の非同期バッファとして適している。 FIFO Queue は厳密な順序保証と重複排除(exactly-once 処理)を提供する代わりに、デフォルトでは 1 グループあたり 300 メッセージ/秒(バッチで 3000 メッセージ/秒)の上限がある。高スループットモード(High Throughput for FIFO)を有効化すれば数千 TPS まで拡張できるが、メッセージグループ ID の設計を適切に行わないとスループットが伸びない。順序が業務要件にない限りは Standard Queue を選び、コストとスケーラビリティの両面で有利な構成にするのが基本である。 SAA-C03 では「高スループット」「順序は厳密でない」「数百万件規模」というキーワードで Standard Queue が正解となる。逆に「重複排除」「厳密な順序」「金融取引・在庫更新の決定的処理」などの要件があれば FIFO Queue が選ばれる。SNS や EventBridge との使い分けも頻出で、Pub/Sub 型のファンアウトなら SNS、イベント駆動のルーティングなら EventBridge、メッセージのバッファリング・retry なら SQS という棲み分けを押さえる。