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'MQTTun message 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 de plus amples informations, veuillez consulter Tutoriel : Stockage des données de l'appareil dans une table DynamoDB.
Note
Cette règle écrit des données autres que des JSON données dans DynamoDB sous forme de 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 :
-
IAMRôle qui AWS IoT peut assumer la réalisation de l'
dynamodb:PutItem
opération. Pour de plus amples informations, veuillez consulter 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 KMS clé 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é au nom de KMS l'appelant. Pour plus d'informations, consultez la section KMSClé gérée par le client dans le guide de démarrage d'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 : Oui
roleARN
-
IAMRôle qui autorise l'accès à la table DynamoDB. Pour de plus amples informations, veuillez consulter 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'énoncé de SQL la règle.
Exemples
L'JSONexemple 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
-
Qu'est-ce qu'Amazon DynamoDB ? dans le Manuel du développeur Amazon DynamoDB
-
Commencer à utiliser DynamoDB dans le manuel du développeur Amazon DynamoDB
-
Tutoriel : Stockage des données de l'appareil dans une table DynamoDB