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 DynamoDB CRUD avec Step Functions
Vous pouvez intégrer Step Functions à DynamoDB pour effectuer des opérations CRUD 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 aux AWS services dans Step Functions, reportez-vous Intégration des services aux sections etTransmission de paramètres à une API de service 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.
-
Seules
GetItem
les actionsPutItem
,UpdateItem
, etDeleteItem
d'API sont disponibles grâce à une intégration optimisée. D'autres actions d'API, telles que cellesCreateTable
disponibles à l'aide de l'intégration du SDK AWS DynamoDB.
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 KiB 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 optimisé APIs
-
-
Paramètres pris en charge :
Paramètres dans Step Functions sont exprimés en PascalCase
Même si l'API de service native se trouve dans CamelCase, par exemple l'startSyncExecution
action d'API, vous spécifiez des paramètres PascalCase dans, tels que :. StateMachineArn
Politiques IAM pour appeler DynamoDB
Les exemples de modèles suivants montrent comment AWS Step Functions générer des politiques IAM en fonction des ressources contenues dans la définition de votre machine d'état. Pour plus d’informations, consultez Comment Step Functions génère des politiques IAM 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 politiques IAM pour toutes les actions d'API DynamoDB, consultez la section Politiques IAM avec DynamoDB dans le manuel du développeur Amazon DynamoDB. En outre, pour plus d'informations sur les politiques IAM pour PartiQL pour DynamoDB, consultez la section Politiques IAM avec PartiQL pour DynamoDB dans le manuel du développeur Amazon DynamoDB.