Step Functions を使用して DynamoDB CRUDオペレーションを実行する - AWS Step Functions

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Step Functions を使用して DynamoDB CRUDオペレーションを実行する

Step Functions を DynamoDB と統合して、DynamoDB テーブルでCRUDオペレーションを実行できます。このページでは、サポートされている DynamoDB を一覧表示APIsし、DynamoDB から項目を取得するためのTask状態の例を示します。 DynamoDB

との統合について学ぶには AWS Step Functions の サービスについては、 サービスとの統合「」および「」を参照してくださいStep Functions APIのサービスへのパラメータの受け渡し

最適化 DynamoDB 統合の主な機能

DynamoDB からメッセージを取得する Task 状態を以下に示します。

"Read Next Message from DynamoDB": { "Type": "Task", "Resource": "arn:aws:states:::dynamodb:getItem", "Parameters": { "TableName": "TransferDataRecords-DDBTable-3I41R5L5EAGT", "Key": { "MessageId": {"S.$": "$.List[0]"} } }, "ResultPath": "$.DynamoDB", "Next": "Send Message to SQS" },

この状態を実例で確認するには、でデータレコードを転送する Lambda, DynamoDB および Amazon SQS サンプルプロジェクトを参照してください。

注記

Step Functions のタスクには入力データまたは結果データの最大サイズにはクォータがあります。これにより、別のサービスとの間でデータを送受信するときに、UTF-8 でエンコードされた文字列として 256 KB のデータに制限されます。「ステートマシンの実行に関連するクォータ」を参照してください。

サポートされている DynamoDB APIs

のパラメータ Step Functions は で表されます。 PascalCase

API アクション camelCaseなどのネイティブサービスAPIが にある場合でもstartSyncExecution、 などのパラメータを で指定します PascalCaseStateMachineArn

IAM DynamoDB を呼び出すための ポリシー

次のサンプルテンプレートは、 AWS Step Functions は、ステートマシン定義のリソースに基づいてIAMポリシーを生成します。詳細については、「Step Functions が統合サービスのIAMポリシーを生成する方法」および「Step Functions でサービス統合パターンを検出する」を参照してください。

静的リソース

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:GetItem", "dynamodb:PutItem", "dynamodb:UpdateItem", "dynamodb:DeleteItem" ], "Resource": [ "arn:aws:dynamodb:[[region]]:[[accountId]]:table/[[tableName]]" ] } ] }

動的リソース

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:GetItem", "dynamodb:PutItem", "dynamodb:UpdateItem", "dynamodb:DeleteItem" ], "Resource": "*" } ] }

すべての DynamoDB APIアクションのIAMポリシーの詳細については、「Amazon IAMDynamoDB デベロッパーガイド」の「DynamoDB を使用したポリシー」を参照してください。 DynamoDB さらに、DynamoDB 用 PartiQL のIAMポリシーの詳細については、「Amazon DynamoDB デベロッパーガイド」のIAMDynamoDB 用 PartiQL のポリシー」を参照してください。 DynamoDB DynamoDB