Schnellstart: Exportieren von Daten aus einer IoT Central-Anwendung

In dieser Schnellstartanleitung konfigurieren Sie Ihre IoT Central-Anwendung zum Exportieren von Daten im Azure-Daten-Explorer. Mit Azure Data Explorer können Sie die Telemetriedaten von Geräten (etwa aus der IoT Plug & Play-Smartphone-App) speichern, abfragen und verarbeiten.

In dieser Schnellstartanleitung führen Sie die folgenden Schritte aus:

  • Sie verwenden das Datenexportfeature von IoT Central zum Exportieren der von der Smartphone-App gesendeten Telemetriedaten in eine Azure Data Explorer-Datenbank.
  • Sie verwenden Azure Data Explorer zum Ausführen von Abfragen für die Telemetriedaten.

Das Durcharbeiten dieses Schnellstarts führt zu geringen Kosten in Ihrem Azure-Konto für die Azure Data Explorer-Instanz. Die ersten beiden Geräte in Ihrer IoT Central-Anwendung sind kostenlos.

Voraussetzungen

  • Verwenden Sie die Bash-Umgebung in Azure Cloud Shell. Weitere Informationen finden Sie unter Schnellstart für Bash in Azure Cloud Shell.

  • Wenn Sie CLI-Referenzbefehle lieber lokal ausführen, installieren Sie die Azure CLI. Wenn Sie Windows oder macOS ausführen, sollten Sie die Azure CLI in einem Docker-Container ausführen. Weitere Informationen finden Sie unter Ausführen der Azure CLI in einem Docker-Container.

    • Wenn Sie eine lokale Installation verwenden, melden Sie sich mithilfe des Befehls az login bei der Azure CLI an. Führen Sie die in Ihrem Terminal angezeigten Schritte aus, um den Authentifizierungsprozess abzuschließen. Informationen zu anderen Anmeldeoptionen finden Sie unter Anmelden mit der Azure CLI.

    • Installieren Sie die Azure CLI-Erweiterung beim ersten Einsatz, wenn Sie dazu aufgefordert werden. Weitere Informationen zu Erweiterungen finden Sie unter Verwenden von Erweiterungen mit der Azure CLI.

    • Führen Sie az version aus, um die installierte Version und die abhängigen Bibliotheken zu ermitteln. Führen Sie az upgrade aus, um das Upgrade auf die aktuelle Version durchzuführen.

Installieren von Azure-Diensten

Damit Sie Daten aus Ihrer IoT Central-Anwendung exportieren können, benötigen Sie einen Azure Data Explorer-Cluster und eine Datenbank. In diesem Schnellstart führen Sie ein Bash-Skript in Azure Cloud Shell aus, um diese Komponenten zu erstellen und zu konfigurieren.

Das Skript führt die folgenden Schritte aus:

  • Es fordert Sie auf, sich bei Ihrem Azure-Abonnement anzumelden, damit es ein Bearertoken zum Authentifizieren der REST-API-Aufrufe generieren kann.
  • Es erstellt einen Azure Data Explorer-Cluster und eine Datenbank.
  • Es erstellt eine verwaltete Identität für Ihre IoT Central-Anwendung.
  • Es konfiguriert die verwaltete Identität mit der Berechtigung für den Zugriff auf die Azure Data Explorer-Datenbank.
  • Es fügt der Datenbank eine Tabelle zum Speichern der eingehenden Telemetriedaten aus IoT Central hinzu.

Führen Sie die folgenden Befehle aus, um das Skript in Ihre Azure Cloud Shell-Umgebung herunterzuladen:

wget https://raw.githubusercontent.com/Azure-Samples/iot-central-docs-samples/main/quickstart-cde/createADX.sh
chmod u+x createADX.sh

Verwenden Sie den folgenden Befehl, um das Skript auszuführen:

  • Ersetzen Sie CLUSTER_NAME durch einen eindeutigen Namen für Ihren Azure Data Explorer-Cluster. Der Clustername darf nur auf Kleinbuchstaben und Zahlen bestehen: Der Clustername muss zwischen 4 und 22 Zeichen lang sein.
  • Ersetzen Sie CENTRAL_URL_PREFIX durch das URL-Präfix, das Sie im ersten Schnellstart für Ihre IoT Central-Anwendung ausgewählt haben.
  • Wenn Sie dazu aufgefordert werden, folgen Sie den Anleitungen, um sich bei Ihrem Konto anzumelden. Das Skript muss sich unbedingt anmelden, weil es ein Bearertoken zum Authentifizieren eines REST-API-Aufrufs generiert.
./createADX.sh CLUSTER_NAME CENTRAL_URL_PREFIX

Wichtig

Die Ausführung dieses Skripts kann 20–30 Minuten dauern.

Notieren Sie sich die vom Skript ausgegebene Azure Data Explorer-URL. Dieser Wert wird später in der Schnellstartanleitung benötigt.

Konfigurieren des Datenexports

So konfigurieren Sie das Datenexportziel in IoT Central

  1. Navigieren Sie in Ihrer IoT Central-Anwendung zur Seite Datenexport.
  2. Wählen Sie die Registerkarte Ziele und dann Ziel hinzufügen aus.
  3. Geben Sie als Zielnamen Azure Data Explorer ein. Wählen Sie als Zieltyp Azure Data Explorer aus.
  4. Geben Sie unter Cluster-URL die zuvor notierte Azure Data Explorer-URL ein.
  5. Geben Sie unter Datenbankname den Namen phonedata ein.
  6. Geben Sie unter Tabellenname den Namen acceleration ein.
  7. Wählen Sie unter Autorisierung die Option Systemseitig zugewiesene verwaltete Identität aus.
  8. Wählen Sie Speichern aus.

So konfigurieren Sie den Datenexport

  1. Wählen Sie auf der Seite Datenexport die Registerkarte Exporte und dann Export hinzufügen aus.

  2. Geben Sie als Exportnamen Phone accelerometer (Telefonbeschleunigungsmesser) ein.

  3. Wählen Sie als Typ der zu exportierenden Daten Telemetrie aus.

  4. Fügen Sie unter Verwendung der Informationen in der folgenden Tabelle zwei Filter hinzu:

    Name Operator Wert
    Gerätevorlage Equals IoT Plug and Play mobile
    Sensoren/Beschleunigung/X Exists

    Stellen Sie sicher, dass die Option festgelegt ist, die dafür sorgt, dass die Daten exportiert werden, wenn alle Bedingungen erfüllt sind.

  5. Fügen Sie Azure Data Explorer als Ziel hinzu.

  6. Fügen Sie dem Ziel eine Datentransformation hinzu. Fügen Sie die folgende Abfrage auf der Seite Datentransformation in das Feld 2. Build transformation query (2. Transformationsabfrage erstellen) ein:

    import "iotc" as iotc;
    {
        Device: .device.id,
        EnqueuedTime: .enqueuedTime,
        X: .telemetry | iotc::find(.name == "accelerometer").value.x,
        Y: .telemetry | iotc::find(.name == "accelerometer").value.y,
        Z: .telemetry | iotc::find(.name == "accelerometer").value.z
    }
    

    Screenshot that shows the data transformation query for the export.

    Um zu sehen, wie die Transformation funktioniert und mit der Abfrage zu experimentieren, fügen Sie die folgende Telemetriemeldung in 1 ein. Fügen Sie Ihre Eingabenachricht hinzu:

    {
      "messageProperties": {},
      "device": {
        "id": "8hltz8xa7n",
        "properties": {
          "reported": []
        },
        "approved": true,
        "types": [],
        "name": "8hltz8xa7n",
        "simulated": false,
        "provisioned": true,
        "modules": [],
        "templateId": "urn:modelDefinition:vlcd3zvzdm:y425jkkpqzeu",
        "templateName": "IoT Plug and Play mobile",
        "organizations": [],
        "cloudProperties": [],
        "blocked": false
      },
      "component": "sensors",
      "applicationId": "40a97c91-50cc-44f0-9f63-71386613facc",
      "messageSource": "telemetry",
      "telemetry": [
        {
          "id": "dtmi:azureiot:PhoneSensors:__accelerometer;1",
          "name": "accelerometer",
          "value": {
            "x": 0.09960123896598816,
            "y": 0.09541380405426025,
            "z": 9.907781600952148
          }
        }
      ],
      "enqueuedTime": "2021-11-12T10:01:30.588Z",
      "enrichments": {}
    }
    
  7. Speichern Sie die Transformation. Speichern Sie dann die Datenexportdefinition.

Warten Sie, bis der Exportstatus Fehlerfrei angezeigt wird:

Screenshot that shows a running data export with the healthy status.

Abfragen exportierter Daten

So fragen Sie die exportierten Telemetriedaten ab:

  1. Verwenden Sie die vom zuvor ausgeführten Skript ausgegebene Azure Data Explorer-URL, um zu Ihrer Azure Data Explorer-Umgebung zu navigieren.

  2. Erweitern Sie den Clusterknoten, und wählen Sie die Datenbank phonedata aus. Der Bereich des Abfragefensters ändert sich in Scope:yourclustername.eastus/phonedata.

  3. Öffnen Sie in Azure Data Explorer eine neue Registerkarte, fügen Sie die folgende Kusto-Abfrage ein, und wählen Sie dann Ausführen aus, um die Telemetriedaten des Beschleunigungsmessers zu zeichnen:

['acceleration'] 
    | project EnqueuedTime, Device, X, Y, Z
    | render timechart 

Unter Umständen müssen Sie einige Minuten warten, um genügend Daten zu sammeln. Ändern Sie die Ausrichtung Ihres Telefons, um zu sehen, wie sich die Telemetriewerte verändern:

Screenshot of the query results for the accelerometer telemetry.

Bereinigen von Ressourcen

Falls Sie keine weiteren IoT Central-Schnellstarts oder -Tutorials absolvieren möchten, können Sie die IoT Central-Anwendung löschen:

  1. Navigieren Sie in Ihrer IoT Central-Anwendung zu Anwendung > Verwaltung.
  2. Wählen Sie Löschen aus, und bestätigen Sie anschließend Ihre Aktion.

Um die Azure Data Explorer-Instanz zur Vermeidung unnötiger Kosten aus Ihrem Abonnement zu entfernen, löschen Sie die Ressourcengruppe IoTCentralExportData-rg aus dem Azure-Portal, oder führen Sie in Azure Cloud Shell den folgenden Befehl aus:

az group delete --name IoTCentralExportData-rg

Nächster Schritt

In diesem Schnellstart haben Sie erfahren, wie Sie Daten fortlaufend aus IoT Central in einen anderen Azure-Dienst exportieren.

Nachdem Sie nun wissen, wie Sie Ihre Daten exportieren, wird als Nächstes der folgende Schritt empfohlen: