SAA高性能なアーキテクチャの設計

動画配信サービスが、アップロードされた動画をトランスコードするバッチ処理を設計している。1本あたりの処理時間は5〜40分、メモリは最大28GBを必要とする。ジョブは不定期に発生し月次件数の変動も大きい。ジョブの優先度管理・失敗時の自動リトライが必要で、コンテナイメージで動作させサーバーの管理を不要にしたい。

A
AWS Lambdaに動画ファイルを渡し、並列実行で複数の関数が同時にトランスコードする
AWS Lambdaは最大実行時間15分・メモリ上限10GBであり、40分・28GBが必要なトランスコードジョブの要件を満たせない。
B
Amazon EC2スポットインスタンスをAuto Scalingで起動し、SQSキューからジョブを取得して処理する
Amazon EC2 Auto Scalingはインスタンスのプロビジョニング・管理が発生し、サーバーの管理を不要にしたい要件を満たすことができない。
C
Amazon ECS(Fargate起動タイプ)でタスクを定義し、ジョブ発生のたびにRunTask APIで起動する
Amazon ECS Fargateはコンテナ実行は可能だが、ジョブ優先度管理・自動リトライ機能を持たずカスタム実装が必要になる。
D
AWS Batch(Fargate)のジョブキューとコンピュート環境でタスクを自動スケジューリングする
✓ 正解
AWS BatchはFargateと組み合わせることでサーバー管理不要・コンテナ実行・優先度付きジョブキュー・自動リトライをすべてマネージドで提供する。

解説

AWS BatchはFargate起動タイプでサーバー管理不要のコンテナ実行を提供し、ジョブキュー・優先度付け・自動リトライをマネージドで管理する。不定期バッチに最適なアーキテクチャである。

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

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

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