| Lambda | ECS | AWS Batch | |
|---|---|---|---|
| 難易度 | 簡単 | 難 | 普通 | 
| 15分以上の処理 | 無理 | 可能 | 可能 | 
| 大量データ | 普通 | 適する | 適する | 
| 大量リクエスト | 普通 | 普通 | 適する | 
| 処理 | EventBridgeからLambdaを起動し、バッチ処理を開始する | 
| メリット | 圧倒的に簡単。 | 
| デメリット | Lambdaには15分でタイムアウトする制限がある | 
| 処理 | ECS タスクスケジューリングを利用して、コンテナを起動して実行する | 
| メリット | 処理実行時のみコンテナを立ち上げるので、無駄なコストが発生しない | 
| デメリット | コンテナが起動するまでに時間がかかる  1つのECS タスクスケジューリング設定で、複数コンテナが立ち上がってしまうことがあるため、多重起動対策をプログラムでしておく必要がある  | 
	
| 処理 | EventBridgeでキューを生成。ECSコンテナでキューを取得して実行する | 
| メリット | ECSを起動しておくため、コンテナの起動時間を要さない。 | 
| デメリット | EventBridgeでキューを生成するが、EventBridgeはまれに1 つのイベントに対して複数回トリガーされることもあるので要注意  多重起動対策をプログラムでしておく必要がある ECSを起動しておく必要があり、使っていない時間もコストがかかる  | 
	
| 処理 | AWS Batch は、ECS をラップしている  キューのメッセージを取得し、Fargate を起動する  | 
	
| メリット | 並列に実行できる | 
| デメリット | 
複数ジョブの制御は、AWS Batch よりも Step Functions の方がより細かい要件が可能。
「Step Functions + Lambda」 
「Step Functions + ECS」 
一般向けサイト
ITエンジニア向けサイト
英語サイト
Portfolio
Copyright (c) 2025 クラウドのインフラ技術 All Rights Reserved.