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.
Verspätete Datenbenachrichtigungen über Amazon CloudWatch Events erhalten
Wenn Sie Datensatzinhalte mithilfe von Daten aus einem bestimmten Zeitraum erstellen, kommen einige Daten möglicherweise nicht rechtzeitig zur Verarbeitung an. Um eine Verzögerung zu vermeiden, können Sie einendeltaTime
Offset für den angeben,QueryFilter
wenn Sie einen Datensatz erstellen, indem Sie einequeryAction
(eine SQL-Abfrage) anwenden. AWS IoT Analyticsverarbeitet immer noch die Daten, die innerhalb der Deltazeit ankommen, und der Inhalt Ihres Datensatzes weist eine Zeitverzögerung auf. Die Funktion für verspätete DatenbenachrichtigungenAWS IoT Analytics ermöglicht das Senden von Benachrichtigungen über Amazon CloudWatch Events, wenn Daten nach der Deltazeit eintreffen.
Sie können dieAWS IoT Analytics Konsole, die API, AWS Command Line Interface(AWS CLI) oder das AWSSDK verwenden, um Regeln für verspätete Daten für einen Datensatz festzulegen.
In derAWS IoT Analytics API stellt dasLateDataRuleConfiguration
Objekt die Late-Data-Regeleinstellungen eines Datensatzes dar. Dieses Objekt ist Teil desDataset
Objekts, das mit denUpdateDataset
API-VorgängenCreateDataset
und verknüpft ist.
Parameter
Beim Erstellen einer Regel für verspätete Daten für einen Datensatz mitAWS IoT Analytics müssen Sie die folgenden Informationen angeben:
ruleConfiguration
(LateDataRuleConfiguration
)-
Eine Struktur, die die Konfigurationsinformationen einer Regel für verspätete Daten enthält.
deltaTimeSessionWindowConfiguration
-
Eine Struktur, die die Konfigurationsinformationen eines Deltazeitsitzungsfensters enthält.
DeltaTime gibt einen Zeitinterval an. Sie können
DeltaTime
verwenden, um Dataset-Inhalte mit Daten zu erstellen, die seit der letzten Ausführung im Datenspeicher eingetroffen sind. Ein Beispiel für finden Sie unter Erstellen eines SQL-Datensatzes mit einem Delta-Fenster (CLI).DeltaTime
timeoutInMinutes
-
Ein Zeitintervall. Sie können verwenden,
timeoutInMinutes
damit Benachrichtigungen zu verspäteten Daten zusammenfassenAWS IoT Analytics können, die seit der letzten Ausführung erzeugt wurden. AWS IoT Analyticssendet jeweils einen Stapel an Benachrichtigungen an CloudWatch Events.Typ: Ganzzahl
Gültiger Bereich: 1—1 000
ruleName
-
Name der Regel für verspätete Daten.
Typ: Zeichenfolge
Wichtig
Um anzugebenlateDataRules
, muss das Dataset denDeltaTime
Filter anwenden.
Regeln für verspätete Daten konfigurieren (Konsole)
Im folgenden Verfahren wird gezeigt, wie Sie die Regel für verspätete Daten eines Datensatzes in derAWS IoT Analytics Konsole konfigurieren.
So konfigurieren Sie Regeln für verspätete Daten
-
Melden Sie sich an der AWS IoT Analytics-Konsole
an. -
Wählen Sie im Navigationsbereich Datensätze aus.
-
Wählen Sie unter Datensätze den Zieldatensatz aus.
-
Wählen Sie im Navigationsbereich Details aus.
-
Wählen Sie im Bereich Delta-Fenster die Option Bearbeiten.
-
Führen Sie unter Configure data selection filter die folgenden Schritte aus:
-
Wählen Sie für das Datenauswahlfenster die Option Deltazeit aus.
-
Geben Sie für Offset einen Zeitraum ein, und wählen Sie dann eine Einheit aus.
-
Geben Sie für Timestamp-Ausdruck einen Ausdruck ein. Dies kann der Name eines Zeitstempelfeldes oder ein SQL-Ausdruck sein, der die Uhrzeit ableiten kann, z. B.
from_unixtime (time)
.Weitere Informationen zum Schreiben eines Zeitstempelausdrucks finden Sie unter Funktionen und Operatoren für Datum und Uhrzeit
in der Dokumentation zu Presto 0.172. -
Wählen Sie für Späte Datenbenachrichtigung die Option Aktiv aus.
-
Geben Sie für Delta-Zeit eine Ganzzahl ein. Der gültige Bereich liegt zwischen 1 und 60
-
Wählen Sie Speichern.
-
Regeln für späte Daten konfigurieren (CLI)
In derAWS IoT Analytics API stellt dasLateDataRuleConfiguration
Objekt die Late-Data-Regeleinstellungen eines Datensatzes dar. Dieses Objekt ist Teil desDataset
Objekts, das mitCreateDataset
und verknüpft istUpdateDataset
. Sie können die API oder das AWSSDK verwenden AWS CLI, um Regeln für späte Daten für einen Datensatz festzulegen. Das folgende Beispiel verwendet die AWS CLI.
Um Ihren Datensatz mit den angegebenen Regeln für verspätete Daten zu erstellen, führen Sie den folgenden Befehl aus. Der Befehl setzt voraus, dass sich diedataset.json
Datei im aktuellen Verzeichnis befindet.
Anmerkung
Sie können die UpdateDatasetAPI verwenden, um einen vorhandenen Datensatz zu aktualisieren.
aws iotanalytics create-dataset --cli-input-json file://dataset.json
Diedataset.json
Datei sollte Folgendes enthalten:
-
Ersetzen Sie
demo_dataset
durch den Namen des Zieldatensatzes. -
Ersetzen Sie
demo_datastore
durch den Namen des Zieldatenspeichers. -
Ersetzen Sie
from_unixtime (time)
durch den Namen eines Zeitstempelfeldes oder einen SQL-Ausdruck, der die Uhrzeit ableiten kann.Weitere Informationen zum Schreiben eines Zeitstempelausdrucks finden Sie unter Funktionen und Operatoren für Datum und Uhrzeit
in der Dokumentation zu Presto 0.172. -
Ersetzen
Sie das Timeout
durch eine Ganzzahl zwischen 1—60. -
Ersetzen Sie
demo_rule
durch einen beliebigen Namen.
{ "datasetName": "
demo_dataset
", "actions": [ { "actionName": "myDatasetAction
", "queryAction": { "filters": [ { "deltaTime": { "offsetSeconds":-180
, "timeExpression": "from_unixtime(time)
" } } ], "sqlQuery": "SELECT * FROMdemo_datastore
" } } ], "retentionPeriod": { "unlimited": false, "numberOfDays": 90 }, "lateDataRules": [ { "ruleConfiguration": { "deltaTimeSessionWindowConfiguration": { "timeoutInMinutes":timeout
} }, "ruleName": "demo_rule
" } ] }
Abonnieren von Benachrichtigungen zu verspäteten Daten
In CloudWatch Events können Sie Regeln erstellen, die festlegen, wie verspätete Datenbenachrichtigungen verarbeitet werden, die von gesendet wurdenAWS IoT Analytics. Wenn CloudWatch Events die Benachrichtigungen erhält, werden die in Ihren Regeln definierten Zielaktionen aufgerufen.
Voraussetzungen für das Erstellen von Regeln für CloudWatch Ereignisse
Führen Sie vor dem Erstellen einer CloudWatch Ereignisregel fürAWS IoT Analytics die die folgenden Schritte aus:
-
Machen Sie sich unter Ereignisse, Regeln und Ziele vertraut. CloudWatch
-
Erstellen und konfigurieren Sie die Ziele, die durch Ihre CloudWatch Events-Regeln aufgerufen werden. Regeln können viele Arten von Zielen aufrufen, z. B. die folgenden:
-
Amazon Kinesis Streams
-
AWS Lambda-Funktionen
-
Amazon Simple Notification Service (Amazon SNS)-Themen
-
Amazon Simple Queue Service (Amazon SQS)-Warteschlangen
Ihre CloudWatch Events-Regel und die zugehörigen Ziele müssen sich in derAWS Region befinden, in der Sie IhreAWS IoT Analytics Ressourcen erstellt haben. Weitere Informationen finden Sie unter Dienstendpunkte und Kontingente in der Allgemeine AWS-Referenz.
-
Weitere Informationen finden Sie unter Was sind CloudWatch Ereignisse? und Erste Schritte mit Amazon CloudWatch Events im Amazon CloudWatch Events-Benutzerhandbuch.
Ereignis mit verspäteter Datenbenachrichtigung
Das Ereignis für verspätete Datenbenachrichtigungen verwendet das folgende Format.
{ "version": "0", "id": "7f51dfa7-ffef-97a5-c625-abddbac5eadd", "detail-type": "IoT Analytics Dataset Lifecycle Notification", "source": "aws.iotanalytics", "account": "123456789012", "time": "2020-05-14T02:38:46Z", "region": "us-east-2", "resources": ["arn:aws:iotanalytics:us-east-2:123456789012:dataset/demo_dataset"], "detail": { "event-detail-version": "1.0", "dataset-name": "demo_dataset", "late-data-rule-name": "demo_rule", "version-ids": ["78244852-8737-4650-aa4d-3071a01338fa"], "message": null } }
Erstellen Sie eine CloudWatch Ereignisregel, um verspätete Datenbenachrichtigungen zu erhalten
Im folgenden Verfahren wird gezeigt, wie Sie eine Regel erstellen, die Benachrichtigungen zuAWS IoT Analytics verspäteten Daten an eine Amazon SQS SQS-Warteschlange sendet.
So erstellen Sie eine CloudWatch Ereignisregel
-
Melden Sie sich bei der CloudWatchAmazon-Konsole
an. -
Wählen Sie im Navigationsbereich unter Events (Ereignisse) die Option Rules (Regeln) aus.
-
Wählen Sie auf der Seite Regeln die Option Regel erstellen aus.
-
Wählen Sie unter Event Source die Option Event Pattern aus.
-
Führen Sie im Abschnitt Build event pattern to match events by service die folgenden Schritte aus:
-
Wählen Sie als Dienstname IoT Analytics
-
Wählen Sie als Ereignistyp die Option IoT Analytics Dataset Lifecycle Notification aus.
-
Wählen Sie Bestimmte Datensatznamen aus, und geben Sie dann den Namen des Zieldatensatzes ein.
-
-
Wählen Sie unter Ziele die Option Ziel hinzufügen*.
-
Wählen Sie SQS-Warteschlange, und gehen Sie dann wie folgt vor:
-
Wählen Sie für Queue* die Zielwarteschlange aus.
-
-
Wählen Sie Configure details.
-
Geben Sie auf der Seite Schritt 2: Regeldetails konfigurieren einen Namen und eine Beschreibung ein.
-
Wählen Sie Create rule (Regel erstellen).