Freigeben über


Azure Stream Analytics auf IoT Edge

Azure Stream Analytics auf IoT Edge ermöglicht Entwicklern, analytische Intelligenz in nahezu Echtzeit näher an IoT-Geräte bereitzustellen, sodass sie den vollständigen Wert von gerätegenerierten Daten ausschöpfen können. Azure Stream Analytics ist für geringe Latenz, Ausfallsicherheit, effiziente Nutzung von Bandbreite und Compliance konzipiert. Unternehmen können die Steuerungslogik in der Nähe des industriellen Betriebs bereitstellen und Big Data-Analysen ergänzen, die in der Cloud durchgeführt werden.

Azure Stream Analytics auf IoT Edge wird im Azure IoT Edge-Framework ausgeführt. Nachdem der Auftrag in Stream Analytics erstellt wurde, können Sie ihn mithilfe von IoT Hub bereitstellen und verwalten.

Häufige Szenarien

In diesem Abschnitt werden die allgemeinen Szenarien für Stream Analytics in IoT Edge beschrieben. Das folgende Diagramm zeigt den Datenfluss zwischen IoT-Geräten und der Azure-Cloud.

Allgemeines Diagramm von IoT Edge

Befehl und Steuerung mit geringer Latenz

Fertigungssicherheitssysteme müssen auf Betriebsdaten mit extrem geringer Latenz reagieren. Mit Stream Analytics auf IoT Edge können Sie Sensordaten in nahezu Echtzeit analysieren und Befehle ausgeben, wenn Sie Anomalien erkennen, um einen Computer zu stoppen oder Warnungen auszulösen.

Eingeschränkte Konnektivität mit der Cloud

Missionskritische Systeme, wie zum Beispiel ferngesteuerte Bergbaugeräte, vernetzte Schiffe oder Offshore-Bohrungen, müssen Daten analysieren und darauf reagieren, selbst wenn die Cloud-Konnektivität unterbrochen ist. Mit Stream Analytics wird Ihre Streaminglogik unabhängig von der Netzwerkkonnektivität ausgeführt und Sie können auswählen, was Sie zur weiteren Verarbeitung oder Speicherung an die Cloud senden.

Begrenzte Bandbreite

Das Datenvolumen von Jet-Motoren oder verbundenen Autos kann so groß sein, dass Daten gefiltert oder vorverarbeitet werden müssen, bevor sie an die Cloud gesendet werden. Mithilfe von Stream Analytics können Sie die Daten filtern oder aggregieren, die an die Cloud gesendet werden müssen.

Einhaltung

Die Einhaltung gesetzlicher Vorschriften erfordert möglicherweise, dass einige Daten lokal anonymisiert oder aggregiert werden, bevor sie an die Cloud gesendet werden.

Edge-Aufträge in Azure Stream Analytics

Stream Analytics Edge-Aufträge werden in Containern ausgeführt, die auf Azure IoT Edge-Geräten bereitgestellt werden. Edgeaufträge bestehen aus zwei Teilen:

  • Eine Cloud-Komponente, die für die Aufgabendefinition verantwortlich ist: Benutzer definieren Eingaben, Ausgaben, Abfragen und andere Einstellungen, z. B. nicht in der richtigen Reihenfolge auftretende Ereignisse, in der Cloud.

  • Ein Modul, das auf Ihren IoT-Geräten ausgeführt wird. Das Modul enthält das Stream Analytics-Modul und empfängt die Auftragsdefinition aus der Cloud.

Stream Analytics verwendet IoT Hub, um Edge-Aufträge auf Geräten bereitzustellen. Weitere Informationen finden Sie in der IoT Edge-Bereitstellung.

Azure Stream Analytics Edge-Auftrag

Einschränkungen von Edge-Jobs

Ziel ist die Parität zwischen IoT Edge-Aufträgen und Cloudaufträgen. Die meisten SQL-Abfragesprachenfeatures werden sowohl für Edge als auch für die Cloud unterstützt. Die folgenden Features werden für Edgeaufträge jedoch nicht unterstützt:

  • Benutzerdefinierte Funktionen (UDF) in JavaScript. UDF sind in C# für IoT Edge-Aufträge (Vorschau) verfügbar.
  • Benutzerdefinierte Aggregate (UDA).
  • Azure ML-Funktionen.
  • AVRO-Format für Eingabe/Ausgabe. Derzeit werden nur CSV und JSON unterstützt.
  • Die folgenden SQL-Operatoren:
    • AUFTEILUNG DURCH
    • GetMetadataPropertyValue
  • Verspätete Ankunftsrichtlinie

Laufzeit- und Hardwareanforderungen

Zum Ausführen von Stream Analytics auf IoT Edge benötigen Sie Geräte, die Azure IoT Edge ausführen können.

Stream Analytics und Azure IoT Edge verwenden Docker-Container , um eine tragbare Lösung bereitzustellen, die auf mehreren Hostbetriebssystemen (Windows, Linux) ausgeführt wird.

Stream Analytics auf IoT Edge wird als Windows- und Linux-Images verfügbar gemacht, die sowohl auf x86-64- als auch ARM-Architekturen (Advanced RISC Machines) ausgeführt werden.

Eingabe und Ausgabe

Stream Analytics Edge-Aufträge können Eingaben und Ausgaben aus anderen Modulen abrufen, die auf IoT Edge-Geräten ausgeführt werden. Um eine Verbindung von und zu bestimmten Modulen herzustellen, können Sie die Routingkonfiguration während der Bereitstellung festlegen. Weitere Informationen werden in der Dokumentation zur Komposition des IoT Edge-Moduls beschrieben.

Für Eingaben und Ausgaben werden CSV- und JSON-Formate unterstützt.

Für jeden Eingabe- und Ausgabedatenstrom, den Sie in Ihrem Stream Analytics-Auftrag erstellen, wird ein entsprechender Endpunkt in Ihrem bereitgestellten Modul erstellt. Diese Endpunkte können in den Routen Ihrer Bereitstellung verwendet werden.

Unterstützte Datenstromeingabetypen sind:

  • Edge-Hub
  • Ereignis-Hub
  • IoT Hub

Unterstützte Streamausgabetypen sind:

  • Edge-Hub
  • SQL-Datenbank
  • Ereignis-Hub
  • Blob Storage/ADLS Gen2

Die Referenzeingabe unterstützt den Referenzdateityp. Andere Ausgaben können über einen nachgelagerten Cloudauftrag erreicht werden. Beispielsweise sendet ein stream Analytics-Auftrag, der in Edge gehostet wird, die Ausgabe an Edge Hub, die dann die Ausgabe an IoT Hub senden kann. Sie können einen zweiten in der Cloud gehosteten Azure Stream Analytics-Auftrag mit Eingaben aus IoT Hub und Ausgabe in Power BI oder einen anderen Ausgabetyp verwenden.

Bildinformationen zum Azure Stream Analytics-Modul

Diese Versionsinformationen wurden am 2020-09-21 zuletzt aktualisiert:

  • Bild: mcr.microsoft.com/azure-stream-analytics/azureiotedge:1.0.9-linux-amd64

    • Basisbild: mcr.microsoft.com/dotnet/core/runtime:2.1.13-alpine
    • Plattform:
      • Architektur: amd64
      • os: linux
  • Bild: mcr.microsoft.com/azure-stream-analytics/azureiotedge:1.0.9-linux-arm32v7

    • Basisbild: mcr.microsoft.com/dotnet/core/runtime:2.1.13-bionic-arm32v7
    • Plattform:
      • Architektur: ARM
      • os: linux
  • Bild: mcr.microsoft.com/azure-stream-analytics/azureiotedge:1.0.9-linux-arm64

    • Basisbild: mcr.microsoft.com/dotnet/core/runtime:3.0-bionic-arm64v8
    • Plattform:
      • Architektur: arm64
      • os: linux

Hilfe erhalten

Um weitere Hilfe zu erhalten, probieren Sie die Microsoft Q&A-Frageseite für Azure Stream Analytics aus.

Nächste Schritte