無限ノック › SAP 練習問題一覧 › 問題
SAP新しいソリューションのための設計

ある金融サービス企業は、口座の取引データを処理するシステムをAWS上に構築しています。データはAmazon S3バケットにアップロードされ、そのイベントをトリガーとして一連の検証、変換、および外部APIへの通知プロセスを非同期で実行します。プロセス全体で15分以上かかる場合があり、失敗したステップのリトライ制御や、全体のステータスの可視化が不可欠です。スケーラビリティが高く、運用保守の負担を最小限に抑えるサーバーレスアーキテクチャはどれですか。

A
S3のイベント通知を使用してAWS Lambda関数をトリガーし、Lambda関数内で検証、変換、API呼び出しのすべてのロジックを実行する
AWS Lambdaはサーバーレスでスケーラブルですが、1回の実行時間の最大上限が15分に制限されています。プロセス全体で15分以上かかる可能性があるという要件があるため、単一のLambda関数ですべてを処理する設計はタイムアウトを引き起こし失敗します。
B
S3のイベント通知を使用してAmazon SQSキューにメッセージを送信し、EC2インスタンス上のワーカープロセスでポーリングして順次処理する
SQSとEC2インスタンスを使用する構成はリトライなどの制御は可能ですが、サーバーレスアーキテクチャの要件に反します。EC2のOSパッチ適用やキャパシティ管理などの運用保守の負担が増大するため最適ではありません。
C
S3のイベント通知でAmazon EventBridgeをトリガーし、EventBridgeからAWS Step Functionsのステートマシンを起動して各処理ステップを連携する
✓ 正解
EventBridgeとStep Functionsの組み合わせにより、S3イベントを起点とした長時間のサーバーレスオーケストレーションが可能になります。各ステップの分離、自動リトライ、状態の可視化という要件を完璧に満たすベストプラクティスです。
D
S3のアップロードをトリガーとしてAWS Glueクローラを実行し、ETLジョブ内でデータ変換と外部APIの呼び出しをまとめて処理する
AWS GlueはビッグデータのETL処理には適していますが、外部APIへの通知や個別のビジネスロジックのステップごとの細かいリトライ制御、視覚的なステータスの可視化というアプリケーションワークフローの要件には特化しておらず不適切です。

解説

複数の非同期プロセス(検証、変換、通知など)を連携し、リトライ制御やエラーハンドリング、視覚的なステータス追跡が必要な長時間のワークフローを構築するには、AWS Step Functionsが最適です。Step Functionsはマイクロサービスやサーバーレスコンポーネントのオーケストレーションをフルマネージドで提供します。Amazon EventBridgeと統合することで、S3へのオブジェクト作成イベントをリアルタイムにキャッチし、Step Functionsのステートマシン(標準ワークフローは最大1年間実行可能)を直接起動できます。これにより、15分を超える処理でも問題なく実行でき、サーバーレスの利点(高スケーラビリティ・運用保守ゼロ)を活かしつつ複雑なビジネスロジックを安全に処理できます。 選択肢AのLambda単体での実装は、Lambda関数の最大実行時間が15分のため処理全体が15分を超えるユースケースには対応できません。また、複数ステップのリトライ制御や状態管理をすべてコード内で実装する必要があり、保守性も低下します。 選択肢BのSQS+EC2ワーカー構成は、EC2インスタンスの起動・スケーリング・管理が必要なためサーバーレスの要件を満たさず、運用保守の負担が大きくなります。 選択肢DのAWS GlueはデータのETL(抽出・変換・ロード)処理に特化したサービスであり、外部APIへの通知処理や複雑なビジネスロジックのオーケストレーションには適していません。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでSAPを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← SAP の問題一覧に戻る