DynamoDB - AWS IoT Core

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