Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Realice operaciones de CRUD DynamoDB con Step Functions
Puede integrar Step Functions con DynamoDB para CRUD realizar operaciones en una tabla de DynamoDB. En esta página se enumeran los DynamoDB compatibles y se proporciona un Task
ejemplo de estado para recuperar un elemento de APIs DynamoDB.
Para obtener información sobre la integración con AWS servicios en Step Functions, consulte Integración de los servicios de yPasar parámetros a un servicio API en Step Functions.
Características clave de la integración optimizada de DynamoDB
-
No hay ninguna optimización para el patrón de integración Respuesta de la solicitud.
-
No se admite el patrón de integración Espera a que te devuelvan la llamada con el token de tarea.
-
Solo las
DeleteItem
APIacciones yGetItem
PutItem
UpdateItem
, están disponibles a través de la integración optimizada. Otras API acciones, como las queCreateTable
están disponibles mediante DynamoDB AWS SDKintegración.
A continuación se muestra un estado Task
que recupera un mensaje de 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"
},
Para ver un ejemplo práctico de este estado, consulte el proyecto de muestra Transfiera registros de datos con Lambda, DynamoDB, y Amazon SQS.
nota
Hay una cuota para el tamaño máximo de los datos de entrada o resultado para una tarea en Step Functions. Esto le limita a 256 KB de datos en una cadena codificada en UTF -8 cuando envía o recibe datos de otro servicio. Consulte Cuotas relacionadas con ejecuciones de máquinas de estado.
DynamoDB compatible APIs
Parámetros en Step Functions se expresan en PascalCase
Incluso si el servicio nativo API está encamelCase, por ejemplo, la API acciónstartSyncExecution
, se especifican parámetros en PascalCase, como:StateMachineArn
.
IAMpolíticas para llamar a DynamoDB
Las siguientes plantillas de ejemplo muestran cómo AWS Step Functions genera IAM políticas en función de los recursos de la definición de su máquina de estados. Para obtener más información, consulte Cómo Step Functions genera IAM políticas para servicios integrados y Descubra los patrones de integración de servicios en Step Functions.
Recursos estáticos
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"dynamodb:GetItem",
"dynamodb:PutItem",
"dynamodb:UpdateItem",
"dynamodb:DeleteItem"
],
"Resource": [
"arn:aws:dynamodb:[[region]]
:[[accountId]]
:table/[[tableName]]
"
]
}
]
}
Recursos dinámicos
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"dynamodb:GetItem",
"dynamodb:PutItem",
"dynamodb:UpdateItem",
"dynamodb:DeleteItem"
],
"Resource": "*"
}
]
}
Para obtener más información sobre las IAM políticas de todas las acciones de DynamoDB, API consulte las IAMpolíticas con DynamoDB en la Guía para desarrolladores de Amazon DynamoDB. Además, para obtener información sobre las IAM políticas de PartiQL para DynamoDB, consulte las políticas con IAMPartiQL para DynamoDB en la Guía para desarrolladores de Amazon DynamoDB.