DynamoDB - AWS IoT Core

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

DynamoDB

L'azione DynamoDB dynamoDB () scrive tutto o parte di MQTT un messaggio in una tabella Amazon DynamoDB.

È possibile seguire un tutorial che mostra come creare una regola con un'operazione Dynamo DB. Per ulteriori informazioni, consulta Tutorial: Archiviazione dei dati del dispositivo in una tabella DynamoDB.

Nota

Questa regola scrive non JSON dati in DynamoDB come dati binari. La console Dynamo DB mostra i dati come testo con codifica Base64.

Requisiti

Questa operazione della regola presenta i seguenti requisiti:

  • Un IAM ruolo che AWS IoT può assumere per eseguire l'dynamodb:PutItemoperazione. Per ulteriori informazioni, consulta Concedere a qualsiasi AWS IoT regola l'accesso richiesto.

    Nella AWS IoT console, è possibile scegliere o creare un ruolo per consentire l'esecuzione di questa azione relativa AWS IoT alla regola.

  • Se si utilizza una KMS chiave gestita AWS KMS key dal cliente per crittografare i dati inattivi in DynamoDB, il servizio deve disporre dell'autorizzazione a utilizzare la chiave per conto KMS del chiamante. Per ulteriori informazioni, consulta Customer Managed KMS key nella Amazon DynamoDB Getting Started Guide.

Parametri

Quando crei una AWS IoT regola con questa azione, devi specificare le seguenti informazioni:

tableName

Nome della tabella DynamoDB.

Supporta modelli sostitutivi: API e solo AWS CLI

hashKeyField

Nome della chiave hash (detta anche chiave di partizione).

Supporta modelli sostitutivi: e solo API AWS CLI

hashKeyType

(Facoltativo) Tipo di dati della chiave hash (detta anche chiave di partizione). Valori validi: STRING, NUMBER.

Supporta modelli sostitutivi: e solo API AWS CLI

hashKeyValue

Valore della chiave hash. Prendere in considerazione l'utilizzo di un modello di sostituzione come ${topic()} o ${timestamp()}.

Supporta modelli di sostituzione: sì

rangeKeyField

(Facoltativo) Nome della chiave di intervallo (detta anche chiave di ordinamento).

Supporta modelli sostitutivi: e solo API AWS CLI

rangeKeyType

(Facoltativo) Tipo di dati della chiave di intervallo (detta anche chiave di ordinamento). Valori validi: STRING, NUMBER.

Supporta modelli sostitutivi: e solo API AWS CLI

rangeKeyValue

(Facoltativo) Valore della chiave di intervallo. Prendere in considerazione l'utilizzo di un modello di sostituzione come ${topic()} o ${timestamp()}.

Supporta modelli di sostituzione: sì

payloadField

(Facoltativo) Nome del campo in cui viene scritto il payload. Se questo valore viene omesso, il payload viene scritto nella colonna denominata payload.

Supporta modelli di sostituzione: sì

operation

(Facoltativo) Tipo di operazione da eseguire. Valori validi: INSERT, UPDATE, DELETE.

Supporta modelli di sostituzione: sì

roleARN

Il IAM ruolo che consente l'accesso alla tabella DynamoDB. Per ulteriori informazioni, consulta Requisiti.

Supporta modelli di sostituzione: no

I dati scritti nella tabella DynamoDB sono il risultato dell'istruzione SQL della regola.

Esempi

L'JSONesempio seguente definisce un'azione DynamoDB in una regola. 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" } } ] } }

Consulta anche