Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Azure IoT Einsatz bietet zwei Möglichkeiten zum Verarbeiten und Weiterleiten von Daten: datenflüsse und Datenflussdiagramme. Beide verwenden gemeinsame Infrastruktur wie Endpunkte, Profile sowie Quell- und Zielkonfiguration. Sie unterscheiden sich jedoch in der Form der Pipeline, den Transformationsfähigkeiten und der Unterstützung für Endpunkte.
Was sind Datenflüsse?
Ein Datenfluss ist eine einfache, lineare Pipeline, die Daten aus einer Quelle an ein Ziel mit optionalen Transformationen verschiebt. In der Transformationsphase werden drei Vorgänge in einer festen Reihenfolge ausgeführt: Anreichern, Filtern und anschließendes Zuordnen. Sie konfigurieren einen Datenfluss mithilfe der Web-Ui für Vorgänge, der Azure CLI oder Azure Resource Manager Vorlagen.
Datenflüsse sind allgemein verfügbar und unterstützen alle Endpunkttypen.
Was sind Datenflussdiagramme?
Ein Datenflussdiagramm ist eine komponierbare, graphbasierte Pipeline, die mehrere Transformationen in einer von Ihnen definierten Topologie verbindet. Sie können Verarbeitungsschritte verketten, verzweigen und zusammenführen. Jede Transformation ist eine vorgefertigte Verarbeitungseinheit, wie Map, Filter, Branch, Window, Throttle oder Enrichment, die du mit Regeln konfigurierst. Sie konfigurieren ein Datenflussdiagramm mithilfe der Web-UI für die Operations-Erfahrung, der Azure CLI oder Azure Resource Manager Vorlagen.
Datenflussdiagramme unterstützen MQTT-, Kafka- und OpenTelemetry-Endpunkte.
Vergleich
| Funktion | Datenflüsse | Datenflussdiagramme |
|---|---|---|
| Pipeline-Form | Behoben: Anreicherung, Filter, Karte | Flexibel: jede Diagrammtopologie |
| Transforms | Karte, Filter, Anreicherung | Abbildung, Filter, Verzweigungen, Verketten, Fenster (Aggregation), Anreichern |
| Verzweigung und Zusammenführung | Nicht unterstützt | Verzweigen bei Bedingung, zusammenführen und verketten |
| Zeitbasierte Aggregation | Nicht unterstützt | Tumbling-Fenster mit Durchschnitt, Minimum, Maximum, Anzahl |
| Endpunktunterstützung (Quelle) | MQTT, Kafka | MQTT, Kafka |
| Endpunktunterstützung (Ziel) | MQTT, Kafka, ADLS, Fabric, ADX, lokaler Speicher, OpenTelemetry | MQTT, Kafka, OpenTelemetry |
| Dynamische Zielthemen |
${inputTopic} (Quellthema Weiterleitung) |
$metadata.topic
+
${outputTopic} (inhaltsbasiertes Routing) |
| Schema | Über Quelle und Transformation | Bei Knotenverbindungen |
| Datenträgerpersistenz | Unterstützt | Unterstützt |
Gemeinsame Infrastruktur
Gemeinsamkeiten von Datenflüssen und Datenflussdiagrammen:
-
Endpunkte: Beide verwenden
DataflowEndpointRessourcen, um eine Verbindung mit MQTT-Brokern, Kafka, Speicher und anderen Diensten herzustellen. Siehe "Vorbereiten von Endpunkten". -
Profile: Beide verweisen auf eine
DataflowProfileSkalierungs- und Instanzkonfiguration. Siehe Verwalten von Datenflussprofilen. - Quellkonfiguration: Beide unterstützen die gleichen Quellendpunktoptionen (Standardbroker, Ressource, benutzerdefinierter Endpunkt) und Datenquellenkonfiguration (Thema). Siehe Konfigurieren einer Quelle.
- Zielkonfiguration: Sowohl statische als auch dynamische Zielthemen unterstützen. Siehe Konfigurieren eines Ziels.
-
Datenträgerpersistenz: Beide unterstützen
requestDiskPersistenceund überstehen dadurch Neustarts. Siehe Konfigurieren der Datenträgerpersistenz.
Wann man was verwenden sollte
Verwenden von Datenflüssen in folgenden Fällen:
- Du brauchst eine einfache Quell-zu-Ziel-Pipeline mit grundlegenden Transformationen.
- Du musst Daten an Speicher-Endpunkte senden (ADLS, Fabric, ADX, lokaler Speicher).
- Sie möchten eine allgemein verfügbare, produktionsreife Lösung.
Verwenden von Datenflussdiagrammen in folgenden Fällen:
- Du musst Nachrichten je nach Bedingungen auf verschiedene Verarbeitungspfade verzweigen.
- Sie benötigen eine zeitbasierte Aggregation (rollierende Fenster).
- Du brauchst mehrere verkettete Transformationen in einer benutzerdefinierten Topologie.
- Du arbeitest nur mit MQTT-, Kafka- oder OpenTelemetrie-Endpunkten.
Für neue Projekte, die unterstützte Endpunkttypen verwenden, verwenden Sie Datenflussgraphen. Datenflüsse werden für alle Szenarien vollständig unterstützt, und sie unterstützen die gesamte Bandbreite von Endpunkttypen.