Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Effectuez des opérations CRUD DynamoDB avec Step Functions
Vous pouvez intégrer Step Functions à DynamoDB pour CRUD effectuer des opérations sur une table DynamoDB. Cette page répertorie les DynamoDB pris en charge et fournit un Task
exemple d'état permettant de récupérer un élément depuis APIs DynamoDB.
Pour en savoir plus sur l'intégration avec AWS services dans Step Functions, voir Intégration des services et. Transmission de paramètres à un service API dans Step Functions
Principales fonctionnalités de l'intégration optimisée de DynamoDB
-
Il n'y a aucune optimisation pour le modèle Réponse à la requête d'intégration.
-
Le modèle Attendre un rappel avec un jeton de tâche d'intégration n'est pas pris en charge.
-
Seuls
GetItem
,PutItem
UpdateItem
, et lesDeleteItem
APIactions sont disponibles grâce à une intégration optimisée. D'autres API actions, telles que cellesCreateTable
disponibles à l'aide de DynamoDB AWS SDKintégration.
L'Task
état suivant permet de récupérer un message depuis DynamoDB.
"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"
},
Pour voir cet état dans un exemple pratique, consultez l'exemple de projet Transférez des enregistrements de données avec Lambda, DynamoDB, et Amazon SQS.
Note
Il existe un quota pour la taille maximale des données d'entrée ou de résultat pour une tâche dans Step Functions. Cela vous limite à 256 Ko de données sous forme de chaîne codée en UTF -8 lorsque vous envoyez ou recevez des données d'un autre service. Consultez Quotas liés aux exécutions par les machines de l'État.
DynamoDB pris en charge APIs
-
-
Paramètres pris en charge :
Paramètres dans Step Functions sont exprimés en PascalCase
Même si le service natif API est activécamelCase, par exemple l'APIactionstartSyncExecution
, vous spécifiez des paramètres dans PascalCase, tels que :StateMachineArn
.
IAMpolitiques d'appel de DynamoDB
Les exemples de modèles suivants montrent comment AWS Step Functions génère IAM des politiques basées sur les ressources contenues dans la définition de votre machine à états. Pour plus d’informations, consultez Comment Step Functions génère IAM des politiques pour les services intégrés et Découvrez les modèles d'intégration des services dans Step Functions.
Ressources statiques
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"dynamodb:GetItem",
"dynamodb:PutItem",
"dynamodb:UpdateItem",
"dynamodb:DeleteItem"
],
"Resource": [
"arn:aws:dynamodb:[[region]]
:[[accountId]]
:table/[[tableName]]
"
]
}
]
}
Ressources dynamiques
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"dynamodb:GetItem",
"dynamodb:PutItem",
"dynamodb:UpdateItem",
"dynamodb:DeleteItem"
],
"Resource": "*"
}
]
}
Pour plus d'informations sur les IAM politiques applicables à toutes les actions DynamoDB, API consultez les IAMpolitiques relatives à DynamoDB dans le manuel du développeur Amazon DynamoDB. En outre, pour plus d'informations sur les IAM politiques relatives à partiQL pour DynamoDB, consultez les politiques relatives à IAMpartiQL pour DynamoDB dans le manuel du développeur Amazon DynamoDB.