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á.
Execute operações do CRUD DynamoDB com Step Functions
Você pode integrar o Step Functions ao DynamoDB para CRUD realizar operações 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 em Step Functions, consulte e. Integração de produtos da Passando parâmetros para um serviço API em Step Functions
Principais recursos da integração otimizada com o DynamoDB
-
Não há otimização para o padrão de integração Resposta de solicitação.
-
O padrão de integração Aguarde um retorno de chamada com o token de tarefa não é compatível.
-
Somente
DeleteItem
APIaçõesGetItem
,PutItem
UpdateItem
, e estão disponíveis por meio de integração otimizada. Outras API ações, como asCreateTable
disponíveis usando o DynamoDB AWS SDKintegração.
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 KB 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 compatível APIs
Parâmetros em Step Functions são expressos em PascalCase
Mesmo se o serviço nativo API estiver ativadocamelCase, por exemplo, a API açãostartSyncExecution
, você especifica parâmetros em PascalCase, como:StateMachineArn
.
IAMpolíticas para chamar o DynamoDB
Os modelos de exemplo a seguir mostram como AWS Step Functions gera IAM políticas com base nos recursos em sua definição de máquina de estado. Para ter mais informações, consulte Como o Step Functions gera IAM políticas para serviços integrados e Descubra padrões de integração de serviços em 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 obter mais informações sobre IAM as políticas para todas as ações do API DynamoDB, consulte IAMpolíticas com o DynamoDB no Amazon DynamoDB Developer Guide. Além disso, para obter informações sobre IAM as políticas do PartiQL for DynamoDB, consulte as políticas com IAM o PartiQL for DynamoDB no Amazon DynamoDB Developer Guide.