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á.
DynamoDB
A ação DynamoDB(dynamoDB
) grava toda ou parte de uma mensagem MQTT em uma tabela do Amazon DynamoDB.
Você pode seguir um tutorial que mostra como criar e testar uma regra com uma ação do DynamoDB. Para ter mais informações, consulte Tutorial: Armazenamento de dados do dispositivo em uma tabela do DynamoDB.
nota
Esta regra grava dados não JSON no DynamoDB como dados binários. O console do DynamoDB exibe os dados como texto codificado em Base64.
Requisitos
Esta ação de regra tem os seguintes requisitos:
-
Uma função do IAM que AWS IoT você pode assumir para realizar a
dynamodb:PutItem
operação. Para ter mais informações, consulte Conceder a uma AWS IoT regra o acesso necessário.No AWS IoT console, você pode escolher ou criar uma função para permitir AWS IoT a execução dessa ação de regra.
-
Se você usa uma chave gerenciada pelo cliente AWS KMS key (chave KMS) para criptografar dados em repouso no DynamoDB, o serviço deve ter permissão para usar a chave KMS em nome do chamador. Para obter mais informações, consulte a chave KMS gerenciada pelo cliente no Guia de conceitos básicos do Amazon DynamoDB.
Parâmetros
Ao criar uma AWS IoT regra com essa ação, você deve especificar as seguintes informações:
tableName
-
O nome da tabela do DynamoDB.
Suporta modelos de substituição: API e somente AWS CLI
hashKeyField
-
O nome da chave de hash (também chamada de chave de partição).
Suporta modelos de substituição: API e somente AWS CLI
hashKeyType
-
(Opcional) O tipo de dados da chave de hash (também chamada de chave de partição). Valores válidos:
STRING
,NUMBER
.Suporta modelos de substituição: API e somente AWS CLI
hashKeyValue
-
O valor da chave de hash. Considere usar um modelo de substituição, como
${topic()}
ou${timestamp()}
.Compatível com modelos de substituição: Sim
rangeKeyField
-
(Opcional) O nome da chave de intervalo (também chamada de chave de classificação).
Suporta modelos de substituição: API e somente AWS CLI
rangeKeyType
-
(Opcional) O tipo de dados da chave de intervalo (também chamada de chave de classificação). Valores válidos:
STRING
,NUMBER
.Suporta modelos de substituição: API e somente AWS CLI
rangeKeyValue
-
(Opcional) O valor da chave de intervalo. Considere usar um modelo de substituição, como
${topic()}
ou${timestamp()}
.Compatível com modelos de substituição: Sim
payloadField
-
(Opcional) O nome da coluna em que a carga útil é gravada. Se esse valor for omitido, a carga útil será gravada na coluna nomeada
payload
.Compatível com modelos de substituição: Sim
operation
-
(Opcional) O tipo de operação a executar. Valores válidos:
INSERT
,UPDATE
,DELETE
.Compatível com modelos de substituição: Sim
roleARN
-
O perfil do IAM que permite o acesso à tabela do DynamoDB. Para ter mais informações, consulte Requisitos.
Compatível com modelos de substituição: Não
Os dados gravados na tabela do DynamoDB são o resultado da instrução SQL da regra.
Exemplos
O exemplo de JSON a seguir define uma ação do DynamoDB em uma regra. AWS IoT
{ "topicRulePayload": { "sql": "SELECT * AS message FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "dynamoDB": { "tableName": "my_ddb_table", "hashKeyField": "key", "hashKeyValue": "${topic()}", "rangeKeyField": "timestamp", "rangeKeyValue": "${timestamp()}", "roleArn": "arn:aws:iam::123456789012:role/aws_iot_dynamoDB" } } ] } }
Consulte também
-
O que é o Amazon DynamoDB? no Guia do desenvolvedor do Amazon DynamoDB
-
Conceitos básicos do DynamoDB no Guia do desenvolvedor do Amazon DynamoDB
-
Tutorial: Armazenamento de dados do dispositivo em uma tabela do DynamoDB