翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Step Functions を使用して DynamoDB CRUDオペレーションを実行する
Step Functions を DynamoDB と統合して、DynamoDB テーブルでCRUDオペレーションを実行できます。このページでは、サポートされている DynamoDB を一覧表示APIsし、DynamoDB から項目を取得するためのTask
状態の例を示します。 DynamoDB
Step Functions は、 Amazon ステートメント言語 () から直接特定の AWS サービスを制御できますASL。詳細については、「他のサービスの統合」および「Step Functions APIのサービスへのパラメータの受け渡し」を参照してください。
注記
Step Functions のタスクには入力データまたは結果データの最大サイズにはクォータがあります。これにより、別のサービスとの間でデータを送受信するときに、UTF-8 でエンコードされた文字列として 256 KB のデータに制限されます。「ステートマシンの実行に関連するクォータ」を参照してください。
最適化 DynamoDB 統合と DynamoDB AWS SDK 統合の違い
-
レスポンスのリクエスト 統合パターンの最適化はありません。
-
タスクトークンのコールバックまで待機する 統合パターンはサポートされていません。
-
最適化された統合では
PutItem
、GetItem
、UpdateItem
、、およびDeleteItem
APIアクションのみを使用できます。などの他のAPIアクションCreateTable
は、DynamoDB AWS SDK 統合を使用して使用できます。
サポートされている Amazon DynamoDB APIsと構文:
のパラメータStep Functionsは で表されます。 PascalCase
API アクション camelCaseなどのネイティブサービスAPIが にある場合でもstartSyncExecution
、 には PascalCaseなどのパラメータを指定しますStateMachineArn
。
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 サンプルプロジェクトを参照してください。
を他の AWS サービスStep Functionsで使用するときにIAMアクセス許可を設定する方法については、「」を参照してくださいStep Functions が統合サービスのIAMポリシーを生成する方法。