Step Functions

Step Functions は、可視化された State Machine(ステートマシン) によって、分散処理や複数のAWSサービスをオーケストレーションするサーバーレスワークフローサービスです。

State(ステート) はワークフロー内の処理単位であり、Definition(定義)AWS States Language(ASL) というJSONベースの言語で記述します。実行ごとに生成される Execution(実行) では、各ステップの進行状況やエラーを可視的に追跡できます。

ワークフローでは、Task ステートで Lambda、ECS、EKS、Batch、Glue、SageMaker などのサービスを呼び出し、実際の処理を行います。Pass ステートでデータをそのまま渡したり、Choice ステートで条件分岐を定義したり、Parallel ステートで並列処理を行うことができます。Map ステートを使えば、配列データに対して繰り返し処理を実行でき、Wait ステートで待機時間を制御したり、Succeed/Fail ステートでワークフローを明示的に終了させることもできます。エラー処理 機能ではRetry(再試行)やCatch(例外捕捉)の動作を細かく設定でき、堅牢なフロー制御を実現します。

ワークフロータイプには、長時間実行や履歴保持に適した Standard Workflow(標準ワークフロー) と、高頻度・短時間処理向けの Express Workflow(エクスプレスワークフロー) の2種類があります。

Step Functions は、SNS/SQS、EventBridge、API Gateway、DynamoDB などともシームレスに統合されており、イベント駆動型やマイクロサービス連携型のシステム構築にも最適です。

サーバーレスETL処理、長時間ジョブの実行、業務フローの自動化などを安全かつ効率的に実現できます。

重要用語

関連サービス

ユースケース

  • リスト1
  • リスト2
  • リスト3

ベストプラクティス

  • リスト1
  • リスト2
  • リスト3

高可用性・冗長化

  • リスト1
  • リスト2
  • リスト3

セキュリティ

  • リスト1
  • リスト2
  • リスト3

運用・監視

  • リスト1
  • リスト2
  • リスト3

デフォルトのリミット値

リミット事項 上限数
項目1上限1
項目2上限2
項目3上限3
項目4上限4
項目5上限5

AWS CLIのサンプルコード

vpc を作成
vpc を作成
aaaaaaaaaaaaa
bbbbbbbbbbbbb
ccccccccccccc

Terraformのサンプルコード

vpc を作成
bbbbbbbbbbbbbbbbbbbbbbb
ddddddddddddddddddddddd
vpc を作成
xxxxxxxxxxxxxxxxxxxxxxx
yyyyyyyyyyyyyyyyyyyyyy

課金モデル

項目 内容
項目1内容1
項目2内容2
項目3内容3
項目4内容4
項目5内容5

公式ページ

AWSドキュメント