Partager via


Comparer le routage des messages et Event Grid pour IoT Hub

Azure IoT Hub permet de diffuser des données à partir de vos appareils connectés et d’intégrer ces données dans vos applications métier. IoT Hub propose deux méthodes permettant d’intégrer les événements IoT dans d’autres services Azure ou applications métier. Cet article décrit les deux fonctions qui offrent cette fonctionnalité. Vous pourrez ainsi choisir l’option qui convient le mieux à votre scénario.

Remarque

Certaines des fonctionnalités mentionnées dans cet article, comme la messagerie cloud-à-appareil, les jumeaux d’appareil et la gestion des appareils, sont disponibles uniquement dans le niveau Standard d’IoT Hub. Pour plus d’informations sur les niveaux IoT Hub de base et standard/gratuit, consultez Choisir le niveau et la taille ioT Hub appropriés pour votre solution.

Routage des messages IoT Hub : cette fonctionnalité IoT Hub permet aux utilisateurs d’acheminer les messages appareil-à-cloud vers des points de terminaison de service, tels que des conteneurs de stockage Azure, des hubs d’événements, des files d’attente Service Bus et des rubriques Service Bus. Le routage fournit également une fonctionnalité de requête pour filtrer les données avant de les router vers les points de terminaison. En plus des données de télémétrie d’appareil, vous pouvez également router des événements non liés à la télémétrie et les utiliser pour déclencher des actions.

Intégration d’IoT Hub avec Event Grid : Azure Event Grid est un service de routage d’événement entièrement géré qui utilise le modèle Publication-Abonnement. IoT Hub et Event Grid collaborent afin d’intégrer les événements IoT Hub dans les services Azure et non-Azure, quasiment en temps réel. IoT Hub publie à la fois des événements d’appareil et des événements de télémétrie.

Différences

Le routage des messages et Event Grid permettent tous deux de configurer des alertes, mais il existe entre eux des différences clés. Pour plus dé détails, consultez le tableau suivant :

Fonctionnalité Routage des messages IoT Hub Intégration d’IoT Hub avec Event Grid
Messages et événements d’appareil Oui, le routage des messages prend en charge les données de télémétrie, les changements de jumeau d’appareil, les événements de cycle de vie des appareils, les événements de changement de jumeau numérique et les événements d’état de la connexion de l’appareil. Oui, Event Grid prend en charge les données de télémétrie et les événements d’appareil comme un appareil créé/supprimé/connecté/déconnecté. Toutefois, Event Grid ne prend pas en charge les événements de changement de jumeau d’appareil et les événements de changement de jumeau numérique.
Classement Oui, le routage des messages conserve l’ordre des événements. Non, Event Grid ne garantit pas l’ordre des événements.
Filtrage Filtrage avancé sur les propriétés d’application de messagerie, les propriétés de système de messages, le corps des messages, ainsi que les étiquettes et propriétés de jumeaux d’appareil. Le filtrage n’est pas appliqué aux événements de changement de jumeau numérique. Pour obtenir des exemples, consultez Syntaxe des requêtes de routage des messages. Filtrage basé sur le type d’événement, le type de sujet et les attributs de chaque événement. Pour des exemples, voir Comprendre les événements de filtrage dans les inscriptions à Event Grid. Lors de l’abonnement à des événements de télémétrie, vous pouvez appliquer des filtres sur les données afin de filtrer les propriétés de message, le corps du message et le jumeau numérique de l'appareil dans votre Hub IoT, avant de publier dans Event Grid. Voir Comment filtrer les événements.
Points de terminaison
  • Event Hubs
  • Stockage Blob Azure
  • Service Bus file d’attente
  • Rubriques Service Bus
  • Cosmos DB (base de données)

Les références SKU IoT Hub payantes (S1, S2 et S3) peuvent avoir 10 points de terminaison personnalisés et 100 routes par hub IoT.
  • Les fonctions Azure
  • Azure Automation
  • Event Hubs
  • Applications Logiques
  • Blob de stockage
  • Rubriques personnalisées
  • Stockage de files d'attente
  • Automatisation de la puissance
  • Services tiers par le biais de WebHooks

Event Grid prend en charge 500 points de terminaison par hub IoT. Pour obtenir la liste la plus récente des points de terminaison, consultez Gestionnaires d’événements Event Grid.
Coût Le routage des messages n’est pas facturé séparément. Seule l’entrée de télémétrie dans IoT Hub est facturée. Par exemple, si vous avez un message routé vers trois points de terminaison différents, un seul message vous est facturé. Aucun frais n'est facturé par l'IoT Hub. Avec Event Grid, les 100 000 premières opérations par mois sont gratuites. Ensuite, le coût est de 0,60 $ par million d’opérations par la suite.

Similitudes

Le routage des messages IoT Hub et Event Grid offrent aussi quelques similitudes, dont certaines sont détaillées dans le tableau suivant :

Fonctionnalité Routage des messages IoT Hub Intégration d’IoT Hub avec Event Grid
Taille de message maximale 256 Ko, appareil-à-cloud 256 Ko, appareil-à-cloud
Fiabilité Élevée : remet chaque message au point de terminaison au moins une fois pour chaque itinéraire. Provoque l’expiration de tous les messages qui ne sont pas remis dans l’heure. Élevée : remet chaque message au webhook au moins une fois pour chaque abonnement. Fait expirer tous les événements qui ne sont pas transmis dans les 24 heures.
Extensibilité Élevée : optimisé pour prendre en charge des millions d’appareils connectés simultanément et envoyant plusieurs millions de messages. Élevée : capable d’acheminer 10 000 000 d’événements par seconde et par région.
Latence Faible : en quasi-temps réel. Faible : en quasi-temps réel.
Envoi à plusieurs points de terminaison Oui, envoi d’un message unique à plusieurs points de terminaison. Oui, envoi d’un message unique à plusieurs points de terminaison.
Sécurité IoT Hub fournit une identité par appareil et un contrôle d’accès révocable. Pour plus d’informations, consultez Contrôle d’accès IoT Hub. Event Grid offre une validation à trois étapes : abonnements aux événements, diffusion d’événements et transmission d’événements par webhook. Pour en savoir plus, consultez la page Sécurité et authentification pour Event Grid.

Comment choisir

Le routage des messages IoT Hub et l’intégration d’IoT Hub avec Event Grid effectuent différentes actions pour parvenir à des résultats similaires. Tous deux prennent des informations à partir de votre solution IoT Hub et les transmettent afin que d’autres services puissent réagir. Comment choisir entre les deux ? Posez-vous les questions suivantes quand vous prenez votre décision :

  • Quel type de données envoyez-vous aux points de terminaison ?

    Utilisez le routage des messages IoT Hub quand vous devez envoyer des données de télémétrie à d’autres services. Le routage des messages permet également d’interroger les propriétés d’application et de système de messages, le corps des messages, ainsi que les étiquettes et propriétés de jumeaux d’appareil.

    L’intégration d’IoT Hub avec Event Grid fonctionne avec les événements qui se produisent dans le service IoT Hub. Ces événements IoT Hub incluent les données de télémétrie, les appareils créés, supprimés, connectés et déconnectés. Lorsque vous vous abonnez à des événements de télémétrie, vous pouvez appliquer des filtres supplémentaires sur les données pour filtrer les propriétés du message, le corps du message et le jumeau d’appareil dans votre IoT Hub, avant la publication dans Event Grid. Voir Comment filtrer les événements.

  • Quels points de terminaison doivent recevoir ces informations ?

    Le routage des messages IoT Hub prend en charge un nombre limité de points de terminaison uniques et de types de points de terminaison, mais vous pouvez créer des connecteurs pour réacheminer les données et les événements vers des points de terminaison supplémentaires. Pour obtenir une liste complète des points de terminaison pris en charge, consultez le tableau dans la section précédente.

    L’intégration d’IoT Hub avec Event Grid prend en charge 500 points de terminaison pour chaque instance IoT Hub, ainsi qu’un éventail plus large de types de point de terminaison. Il s’intègre nativement avec les Azure Functions, Logic Apps, les files d’attente de stockage et Service Bus, et fonctionne également avec des webhooks pour étendre l’envoi de données en dehors de l’écosystème de services Azure et dans des applications métier tierces.

  • Est-il important que vos données arrivent dans l’ordre ?

    Le routage des messages IoT Hub conserve l’ordre dans lequel les messages sont envoyés. Ainsi, l’ordre d’arrivée est le même.

    Event Grid ne garantit pas que les points de terminaison reçoivent les événements dans l’ordre dans lequel ils se sont produits. Dans les scénarios où le respect de l’ordre absolu des messages est important et/ou dans lesquels un consommateur a besoin de suivre les messages avec un identificateur unique fiable, nous vous recommandons d’utiliser le routage de messages.

Étapes suivantes