DynamoDB - AWS IoT Core

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

DynamoDB

L'action DynamoDB dynamoDB () écrit tout ou partie d'un message MQTT dans une table Amazon DynamoDB.

Vous pouvez suivre un didacticiel qui explique comment créer et tester une règle avec une action DynamoDB. Pour plus d’informations, consultez Tutoriel : Stockage des données de l'appareil dans une table DynamoDB.

Note

Cette règle écrit des données non JSON dans DynamoDB en tant que données binaires. La console DynamoDB affiche les données sous la forme de texte base64-encode.

Prérequis

Cette action réglementaire est assortie des exigences suivantes :

  • Rôle IAM qui AWS IoT peut assumer la réalisation de l'dynamodb:PutItemopération. Pour plus d’informations, consultez Accorder à une AWS IoT règle l'accès dont elle a besoin.

    Dans la AWS IoT console, vous pouvez choisir ou créer un rôle pour autoriser l'exécution AWS IoT de cette action de règle.

  • Si vous utilisez une clé KMS gérée par AWS KMS key le client pour chiffrer des données inactives dans DynamoDB, le service doit être autorisé à utiliser la clé KMS au nom de l'appelant. Pour plus d'informations, consultez la section Clé KMS gérée par le client dans le guide de démarrage Amazon DynamoDB.

Paramètres

Lorsque vous créez une AWS IoT règle avec cette action, vous devez spécifier les informations suivantes :

tableName

Le nom de la table DynamoDB.

Supporte les modèles de substitution : API et AWS CLI uniquement

hashKeyField

Nom de la clé de hachage (également appelée clé de partition).

Supporte les modèles de substitution : API et AWS CLI uniquement

hashKeyType

Type de données de la clé de hachage (également appelée clé de partition). Valeurs valides : STRING, NUMBER.

Supporte les modèles de substitution : API et AWS CLI uniquement

hashKeyValue

Valeur de la clé de hachage. Envisagez d'utiliser un modèle de substitution tel que ${topic()} ou${timestamp()}.

Prend en charge les modèles de substitution : Oui

rangeKeyField

(Facultatif) Nom de la clé de plage (également appelée clé de tri).

Supporte les modèles de substitution : API et AWS CLI uniquement

rangeKeyType

(Facultatif) Type de données de la clé de plage (également appelée clé de tri). Valeurs valides : STRING, NUMBER.

Supporte les modèles de substitution : API et AWS CLI uniquement

rangeKeyValue

(Facultatif) Valeur de la clé de plage. Envisagez d'utiliser un modèle de substitution tel que ${topic()} ou${timestamp()}.

Prend en charge les modèles de substitution : Oui

payloadField

(Facultatif) Nom du champ où la charge utile est écrite. Si vous omettez cette valeur, la charge utile est écrite dans la colonne nommée payload.

Prend en charge les modèles de substitution : Non

operation

(Facultatif) Type d'opération à effectuer. Valeurs valides : INSERT, UPDATE, DELETE.

Prend en charge les modèles de substitution : Non

roleARN

Rôle IAM qui autorise l'accès à la table DynamoDB. Pour plus d’informations, consultez Prérequis.

Prend en charge les modèles de substitution : Non

Les données écrites dans la table DynamoDB sont le résultat de l'instruction SQL de la règle.

Exemples

L'exemple JSON suivant définit une action DynamoDB dans une règle. 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" } } ] } }

Consultez aussi