概要
AWS認定DVA資格勉強時にまとめたものです。Step Functionsの概要について説明します。
Step Functionsのタイプ
key | value |
---|---|
Pass | Resultに指定した値をそのまま次のステートの入力に渡す |
Task | アクティビティやLambda関数、その他AWSサービスとの統合を指定 |
Wait | 指定した時間や日時まで処理を待つ |
Choice | 分岐 |
Fail | エラー名・理由を指定できる |
Parallel | 並列処理 |
Map | 動的配列の並列処理 |
Pass
Lambda関数などを実行せずに、ステートマシン内で次のステートに渡す入力を指定する場合などに使用する。
Task
Taskタイプには、アクティビティ、他のAWSサービスが指定できる。
指定できるAWSサービス
- Lambda
- AWS Batch
- DynamoDB
- Amazon ECS/Fargate
- Amazon SNS
- Amazon SQS
- AWS Glue
- SageMaker
- Amazon EMR
- CodeBuild
- Athena
- Amazon EKS
- API Gateway
- AWS Glue DataBrew
- Amazon EventBridge
- AWS Step Functions
Lambda関数を指定する例
Choice, Fail
- Choice:変数fooの値が1の場合はFirstMatchState、2の場合はSecondMatchState、それ以外はDefaultStateへ分岐
- Fail:Errorでエラー名、Causeでエラー理由を指定
Parallel
Map
InputとOutput
フィールド | 内容 |
---|---|
InputPath | ステートに渡す値 |
ResultPath | ステートの実行結果を受け取るフィールド名 |
OutputPath | 次のステートに渡す値 |
実行方法
StartExecution APIを実行
- Lambda関数等から実行
CloudWatch Eventsルールで実行
- 周期的に実行
- cron式で実行
- 特定のAPIイベントのタイミングで実行
API Gatewayによる統合実行
- API GatewayからAWSサービス統合を使用しワークフローをAPI化