AWS Step Functions
開発者ガイド

大きいペイロードを渡す代わりに ARN を使用する

状態間でデータの大きいペイロードを渡す実行を終了できます。状態間で渡すデータが 32 KB を超える場合、Amazon Simple Storage Service (Amazon S3) を使用してデータを保存し、raw データの代わりに Amazon リソースネーム (ARN) を渡します。または、実行時に小さいペイロードを渡すように実装を調整します。

たとえば、ステートマシンは以下の例のように入力を Lambda 関数に渡すことができます。

{ "StartAt":"Invoke Lambda function", "States":{ "Invoke Lambda function":{ "Type":"Task", "Resource":"arn:aws:states:::lambda:invoke", "Parameters":{ "FunctionName":"arn:aws:lambda:us-east-2:123456789012:function:MyFunctionName", "Payload":{ "Input.$":"$" } }, "End":true } } }

大量のデータを入力で渡すのではなく、そのデータを Amazon S3 バケットに保存し、そのバケットの Amazon リソースネーム を Payload パラメータで渡します。Lambda 関数はその ARN を使用してデータに直接アクセスできます。以下に示しているステートマシン実行の入力例では、データが Amazon S3 バケット内の data.json に保存されています。

{ "Data": "arn:aws:s3:::MyBucket/data.json" }

詳細については、以下のトピックを参照してください。