As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
É possível integrar o Step Functions ao DynamoDB para realizar operações CRUD em uma tabela do DynamoDB. Esta página lista o APIs DynamoDB compatível e fornece um Task
exemplo de estado para recuperar um item do DynamoDB.
Para saber mais sobre a integração com AWS serviços no Step Functions, consulte Integração de produtos da e. Transmitir parâmetros a uma API de serviço no Step Functions
Principais recursos da integração otimizada ao DynamoDB
-
Não há otimização para o padrão de integração Resposta de solicitação.
-
O padrão de integração Aguardar um retorno de chamada com um token de tarefa não é compatível.
-
Somente as ações
GetItem
,PutItem
,UpdateItem
eDeleteItem
da API estão disponíveis por meio de integração otimizada. Outras ações de API, como as queCreateTable
estão disponíveis usando a integração do AWS DynamoDB SDK.
O seguinte é um estado Task
que recupera uma mensagem do 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 esse estado em um exemplo funcional, consulte o projeto de amostra Transferir registros de dados com Lambda, DynamoDB e Amazon SQS.
nota
Há uma cota para o tamanho máximo de dados de entrada ou resultado para uma tarefa no Step Functions. Isso restringe você a 256 KiB de dados como uma string codificada em UTF-8 quando você envia ou recebe dados de outro serviço. Consulte Cotas relacionadas a execuções de máquina de estado.
DynamoDB otimizado APIs
Parâmetros em Step Functions são expressos em PascalCase
Mesmo que a API de serviço nativa esteja no CamelCase, por exemplo, a startSyncExecution
ação da API, você especifica parâmetros PascalCase em, como:. StateMachineArn
Políticas do IAM para chamar o DynamoDB
Os modelos de exemplo a seguir mostram como AWS Step Functions gera políticas do IAM com base nos recursos na definição da sua máquina de estado. Para ter mais informações, consulte Como o Step Functions gera políticas do IAM para serviços integrados e Descobrir padrões de integração de serviços no 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 ver mais informações sobre as políticas do IAM para todas as ações de API do DynamoDB, consulte políticas do IAM com o DynamoDB no Guia do desenvolvedor do Amazon DynamoDB. Para ver mais informações sobre as políticas do IAM para o PartiQL for DynamoDB, consulte políticas do IAM com o PartiQL for DynamoDB no Guia do desenvolvedor do Amazon DynamoDB.