Bewerken

Share via


IoT-gebeurtenisroutering

Azure IoT
Azure IoT Hub

In een IoT-oplossing (Internet of Things) verzenden IoT-apparaten gebeurtenissen (meldingen, bevestigingen, telemetrie) naar de toepassing om inzichten te verkrijgen. Toepassingen kunnen specifieke subsets van gebeurtenissen vereisen voor verwerking of opslag op verschillende eindpunten. Deze gebeurtenissen moeten mogelijk ook worden doorgestuurd naar verschillende services voor verdere verwerking. Naarmate de IoT-oplossing uitschaalt, varieert het aantal apparaten, het aantal gebeurtenissen, verschillende gebeurtenissen en verschillende services ook. Een flexibele, schaalbare, consistente en betrouwbare methode voor het routeren van gebeurtenissen is nodig om dit patroon te verwerken.

Potentiële gebruikscases

Een detailhandelskanaal bewaakt de koelkasten voor hun bevroren voedselsectie:

  • Er wordt een waarschuwing verzonden wanneer de temperatuur van de koelkasten voorbij een vooraf vastgestelde drempelwaarde gaat. Er kan een routeringsregel worden gemaakt met de drempelwaarderegel om deze specifieke gebeurtenissen naar een waarschuwingssysteem te verzenden.
  • Het data science-team bouwt een anomaliedetectiemodel om problemen met de koelkasten te identificeren voordat een van deze afbreekt. Met een regel voor berichtroutering kunnen alle onbewerkte telemetriegegevens worden verzonden naar een opslagaccount dat speciaal voor het data science-team kan worden gebruikt voor training en modellering.

Dit scenario is van toepassing op de detailhandel, energie en milieuindustrie.

Architectuur

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

Een Visio-bestand van deze architectuur downloaden.

In een IoT-platform kunnen regels worden gemaakt voor fijnmazige routering van gebeurtenissen. Een of meer regels kunnen worden geconfigureerd in het IoT-platform. De regels worden toegepast op de ingangsgebeurtenissen en worden doorgestuurd naar de specifieke eindpunten.

Kenmerken

Hier volgen enkele overwegingen bij het gebruik van dit patroon.

  • Doorvoer van eindpunten: eindpunten die gebeurtenissen ontvangen, moeten het inkomend verkeer van gebeurtenissen kunnen verwerken dat via routering wordt verzonden. Zorg ervoor dat de eindpuntservices de capaciteit hebben om de gegevens op te nemen en op te slaan totdat deze worden verbruikt.

  • Indeling van gebeurtenissen: voor de routering moet de routering schaalbaar en flexibel zijn, de gebeurtenissen een gemeenschappelijke indeling hebben om interoperabiliteit tussen protocollen te garanderen.

  • Gebeurtenisafhandeling: Als een gebeurtenis overeenkomt met meerdere routes die naar hetzelfde eindpunt verwijzen, moet deze slechts één keer aan dat eindpunt worden geleverd. Het is ook belangrijk om in dergelijke situaties berichtvolgorde te garanderen.

  • Duplicatie van gebeurtenissen: voor het afhandelen van berichtduplicatie raden we u aan een unieke id in de toepassingseigenschappen van het bericht op het punt van oorsprong te stempelen. Dit is meestal een apparaat of een module. De service die de berichten gebruikt, kan vervolgens dubbele berichten verwerken met behulp van deze id.

  • Terugvalroute: gebeurtenissen die niet overeenkomen met regels, moeten in een terugvalroute terechtkomen, zodat ze op de juiste manier kunnen worden aangepakt en dat er geen gebeurtenis verloren gaat.

  • Niet-telemetriegebeurtenissen: IoT-oplossingen hebben verschillende soorten gebeurtenissen, zoals wijzigingen in de status van het apparaat en gebeurtenissen voor de levenscyclus van apparaten. De gebeurtenissenroute moet regels kunnen vastleggen en toepassen op dergelijke niet-telemetriegebeurtenissen om automatisering en bewaking mogelijk te maken.

Wanneer gebruikt u dit patroon:

  • Het verzenden van telemetrieberichten van apparaten, gebeurtenissen voor de levenscyclus van apparaten of gebeurtenissen van apparaatdubbels wijzigen naar specifieke eindpunten die worden bepaald door regels.

  • Gebeurtenissen filteren door specifieke regels toe te passen.

Dit patroon wordt niet aanbevolen voor:

  • Routering op basis van complexe realtime gegevensanalyse van tijdreeksgegevens. Bijvoorbeeld wanneer u de gemiddelde telemetriegegevens van 15 minuten vergelijkt. Als realtime gegevensanalyse vereist is, gebruikt u een realtime analyseservice voor de hot path-gegevens.

Volgende stappen