DynamoDBv2 - 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á.

DynamoDBv2

A ação DynamoDBv2(dynamoDBv2) grava toda ou parte de uma mensagem MQTT em uma tabela do Amazon DynamoDB. Cada atributo na carga útil é gravado em uma coluna separada no banco de dados DynamoDB.

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.

  • A carga útil da mensagem MQTT deve conter uma chave de nível raiz que corresponda à chave de partição primária da tabela e uma chave de nível raiz que corresponda à chave de classificação primária da tabela, se alguma estiver definida.

  • 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:

putItem

Um objeto que especifica a tabela do DynamoDB na qual os dados da mensagem serão gravados. Este objeto deve conter as seguintes informações:

tableName

O nome da tabela do DynamoDB.

Suporta modelos de substituição: API e somente AWS CLI

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 DynamoDBV2 em uma regra. AWS IoT

{ "topicRulePayload": { "sql": "SELECT * AS message FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "dynamoDBv2": { "putItem": { "tableName": "my_ddb_table" }, "roleArn": "arn:aws:iam::123456789012:role/aws_iot_dynamoDBv2", } } ] } }

O exemplo de JSON a seguir define uma ação do DynamoDB com modelos de substituição em uma regra. AWS IoT

{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2015-10-08", "actions": [ { "dynamoDBv2": { "putItem": { "tableName": "${topic()}" }, "roleArn": "arn:aws:iam::123456789012:role/aws_iot_dynamoDBv2" } } ] } }

Consulte também