Bearbeiten

Freigeben über


IoT-Ereignisrouting

Azure IoT
Azure IoT Hub

Bei einer IoT-Lösung (Internet der Dinge, Internet of Things) senden IoT-Geräte Ereignisse (Benachrichtigungen, Bestätigungen, Telemetrie) an Anwendungen, um Erkenntnisse zu erhalten. Anwendungen erfordern möglicherweise spezifische Teilmengen von Ereignissen für die Verarbeitung oder den Speicher an verschiedenen Endpunkten. Diese Ereignisse müssen möglicherweise auch zur weiteren Verarbeitung an verschiedene Dienste weitergeleitet werden. Mit der Aufskalierung der IoT-Lösung können die Anzahl der Geräte, die Menge der Ereignisse, die verschiedenen Arten von Ereignissen und unterschiedliche Dienste ebenfalls variieren. Eine flexible, skalierbare, konsistente und zuverlässige Methode für das Routing von Ereignissen ist für dieses Muster erforderlich.

Mögliche Anwendungsfälle

Ein Einzelhandelsgeschäft überwacht die Gefrierschränke des Abteils für Tiefkühlkost:

  • Eine Warnung wird gesendet, wenn die Temperatur der Gefrierschränke einen vorab festgelegten Schwellenwert überschreitet. Eine Routingregel kann mit der Schwellenwertregel erstellt werden, um diese spezifischen Ereignisse an ein Warnungssystem zu senden.
  • Das Data Science-Team erstellt ein Modell zur Anomalieerkennung, um Probleme bei den Gefrierschränken zu identifizieren, bevor sie vollständig ausfallen. Eine Nachrichtenroutingregel kann alle unformatierten Telemetriedaten an ein Speicherkonto senden, das vom Data Science-Team speziell für das Training und die Modellierung verwendet wird.

Dieses Szenario gilt für den Einzelhandel, die Energiebranche und den Umweltsektor.

Aufbau

Architecture diagram illustrating use of rules to route events to different Azure services.

Laden Sie eine Visio-Datei dieser Architektur herunter.

Auf einer IoT-Plattform können Regeln für präzises Routing von Ereignissen erstellt werden. Es können mehrere Regeln auf der IoT-Plattform konfiguriert werden. Die Regeln werden auf Eingangsereignisse angewendet und an die spezifischen Endpunkte weitergeleitet.

Merkmale

Im Folgenden werden einige Aspekte aufgeführt, die bei Verwendung dieses Musters beachtet werden sollten:

  • Durchsatz von Endpunkten: Endpunkte, die Ereignisse empfangen, müssen dazu in der Lage sein, den Eingang von Ereignissen zu verarbeiten, die über das Routing gesendet werden. Stellen Sie sicher, dass die Endpunktdienste über die erforderliche Kapazität verfügen, um die Daten zu erfassen und zu speichern, bis sie verwendet werden.

  • Format von Ereignissen: Damit das Routing skalierbar und flexibel ist, sollten die Ereignisse ein einheitliches Format aufweisen, um die Interoperabilität zwischen Protokollen sicherzustellen.

  • Ereignisbehandlung: Wenn ein Ereignis mehreren Routen entspricht, die auf den gleichen Endpunkt verweisen, sollte nur eine Übermittlung an diesen Endpunkt erfolgen. In solchen Situationen ist es außerdem wichtig, dass die Nachrichtenreihenfolge gewährleistet wird.

  • Ereignisduplizierung: Zum Verarbeiten von Nachrichtenduplikaten empfiehlt es sich, einen eindeutigen Bezeichner in den Anwendungseigenschaften der Nachricht am Ursprung zu stempeln, bei dem es sich normalerweise um ein Gerät oder ein Modul handelt. Der Dienst zur Verarbeitung der Nachrichten kann mithilfe dieses Bezeichners doppelte Nachrichten verarbeiten.

  • Fallbackroute: Für Ereignisse, die keinen Regeln entsprechen, sollte eine Fallbackroute eingerichtet werden, damit diese ordnungsgemäß verarbeitet werden können und nicht verloren gehen.

  • Nicht telemetriebezogene Ereignisse: IoT-Lösungen umfassen verschiedene Arten von Ereignissen wie Gerätestatusänderungen und Gerätelebenszyklus-Ereignisse. Die Ereignisroute sollte dazu in der Lage sein, solche nicht telemetriebezogene Ereignisse zu erfassen und Regeln auf diese anzuwenden, um die Automatisierung und Überwachung zu ermöglichen.

Wann dieses Muster verwendet werden sollte:

  • Zum Senden von Gerätetelemetrienachrichten, Gerätelebenszyklus-Ereignissen oder Ereignissen bezüglich Gerätezwillingsänderungen an spezifische Endpunkte, die mithilfe von Regeln festgelegt werden

  • Zum Filtern von Ereignissen durch Anwenden spezifischer Regeln

Dieses Muster wird in folgenden Fällen nicht empfohlen:

  • Für Routing auf Grundlage komplexer Echtzeitdatenanalyse von Zeitreihendaten – z. B. für Vergleiche durchschnittlicher Telemetriedaten der letzten 15 Minuten. Wenn die Echtzeitdatenanalyse erforderlich ist, sollten Sie einen Echtzeitanalysedienst für Daten des langsamsten Pfads verwenden.

Nächste Schritte