AWSでバッチ処理を実装する際の選択肢とサービス比較
BRANK

概要AWSでバッチ処理を実装しようとした際、組み合わせが多くて辟易した。自分たちのサービスにあった方法を見つけようとする中で色々と調べたので、どんな選択肢があるかや、重要と思われる項目で各サービスを比較してみた。特にサーバレス以外を選択するメリットはないと思うのでサーバレスなバッチ環境を前提とする。結論サービスの選択肢と比較LambdaECS(Fargate)AWS Batch(Fargate)起動のオーバーヘッド○〜△○〜△×大量データ処理×(重要)○○大量リクエスト処理○〜△△○複数ジョブの制御Step Functions利用Step Functions利用単体で可能他サービスとの連携○△△環境構築の容易さ○△×ローカル開発環境との相性○△△若干 Lambda を贔屓したような比較項目になっている気もするが、実際 Lambda は使い勝手がいいので適切だと思う。重要なのは大量データ処理には向いていないということで、そのために ECS(Fargate) や AWS Batch(Fargate) があるといえる。ユースケースに応じたサービス選択ユースケース選択すべきサービス実行時間が15分を超えない + 少量リクエストLambda実行時間が15分を超えない + 大量リクエストSQS + Lambda実行時間が15分を超える +…

zenn.dev
Related Topics: Amazon Web Services