Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
DynamoDB
Die Aktion DynamoDB (dynamoDB
) schreibt eine MQTT Nachricht ganz oder teilweise in eine Amazon DynamoDB-Tabelle.
Sie können einem Tutorial folgen, das Ihnen veranschaulicht, wie Sie eine Regel mit einer DynamoDB-Aktion erstellen und testen. Weitere Informationen finden Sie unter Tutorial: Gerätedaten in einer DynamoDB-Tabelle speichern.
Anmerkung
Diese Regel schreibt JSON Nichtdaten als Binärdaten in DynamoDB. Die DynamoDB-Konsole zeigt die Daten als Base64-codierten Text an.
Voraussetzungen
Diese Regelaktion hat die folgenden Anforderungen:
-
Eine IAM Rolle, die die Ausführung des
dynamodb:PutItem
Vorgangs übernehmen AWS IoT kann. Weitere Informationen finden Sie unter Gewähren Sie einer AWS IoT Regel den Zugriff, den sie benötigt.In der AWS IoT Konsole können Sie eine Rolle auswählen oder erstellen, um die Ausführung dieser Regelaktion AWS IoT zu ermöglichen.
-
Wenn Sie einen vom Kunden verwalteten AWS KMS key (KMSSchlüssel) verwenden, um ruhende Daten in DynamoDB zu verschlüsseln, muss der Dienst über die Berechtigung verfügen, den KMS Schlüssel im Namen des Anrufers zu verwenden. Weitere Informationen finden Sie unter Vom Kunden verwalteter KMS Schlüssel im Amazon DynamoDB DynamoDB-Handbuch „Erste Schritte“.
Parameter
Wenn Sie eine AWS IoT Regel mit dieser Aktion erstellen, müssen Sie die folgenden Informationen angeben:
tableName
-
Der Name der DynamoDB-Tabelle.
Unterstützt Substitutionsvorlagen: API und nur AWS CLI
hashKeyField
-
Der Name des Hash-Schlüssels (auch Partitionsschlüssel genannt)
Unterstützt Substitutionsvorlagen: API und nur AWS CLI
hashKeyType
-
(Optional) Der Datentyp des Hash-Schlüssels (auch Partitionsschlüssel genannt). Zulässige Werte:
STRING
,NUMBER
.Unterstützt Substitutionsvorlagen: API und nur AWS CLI
hashKeyValue
-
Der Wert des Hash-Schlüssels Erwägen Sie die Verwendung einer Ersatzvorlage wie
${topic()}
oder${timestamp()}
.Unterstützt Ersatzvorlagen: Ja
rangeKeyField
-
(Optional) Der Name des Bereichsschlüssels (auch Sortierschlüssel genannt).
Unterstützt Substitutionsvorlagen: API und nur AWS CLI
rangeKeyType
-
(Optional) Der Datentyp des Bereichsschlüssels (auch Sortierschlüssel genannt). Zulässige Werte:
STRING
,NUMBER
.Unterstützt Substitutionsvorlagen: API und nur AWS CLI
rangeKeyValue
-
(Optional) Der Wert des Bereichsschlüssels. Erwägen Sie die Verwendung einer Ersatzvorlage wie
${topic()}
oder${timestamp()}
.Unterstützt Ersatzvorlagen: Ja
payloadField
-
(Optional) Der Name der Spalte, in die die Nutzlast geschrieben wird. Wenn Sie diesen Wert weglassen, wird die Nutzlast in die Spalte mit dem Namen
payload
geschrieben.Unterstützt Ersatzvorlagen: Ja
operation
-
(Optional) Der Typ des auszuführenden Vorgangs. Zulässige Werte:
INSERT
,UPDATE
,DELETE
.Unterstützt Ersatzvorlagen: Ja
roleARN
-
Die IAM Rolle, die den Zugriff auf die DynamoDB-Tabelle ermöglicht. Weitere Informationen finden Sie unter Voraussetzungen.
Unterstützt Ersatzvorlagen: Nein
Die in die DynamoDB-Tabelle geschriebenen Daten sind das Ergebnis der SQL Anweisung der Regel.
Beispiele
Das folgende JSON Beispiel definiert eine DynamoDB-Aktion in einer AWS IoT Regel.
{ "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" } } ] } }
Weitere Informationen finden Sie auch unter
-
Was ist Amazon DynamoDB? im Amazon DynamoDB Entwicklerhandbuch
-
Erste Schritte mit DynamoDB im Amazon DynamoDB Entwicklerhandbuch