Porównanie routingu komunikatów i usługi Event Grid dla usługi IoT Hub

Usługa Azure IoT Hub umożliwia przesyłanie strumieniowe danych z połączonych urządzeń i integrowanie tych danych z aplikacjami biznesowymi. Usługa IoT Hub oferuje dwie metody integrowania zdarzeń IoT z innymi usługami platformy Azure lub aplikacjami biznesowymi. W tym artykule omówiono dwie funkcje, które zapewniają tę możliwość, dzięki czemu można wybrać, która opcja jest najlepsza dla danego scenariusza.

Uwaga

Niektóre funkcje wymienione w tym artykule, takie jak obsługa komunikatów w chmurze, bliźniacze reprezentacje urządzeń i zarządzanie urządzeniami, są dostępne tylko w warstwie Standardowa usługi IoT Hub. Aby uzyskać więcej informacji na temat warstw podstawowej i standardowej/bezpłatnej usługi IoT Hub, zobacz Wybieranie odpowiedniej warstwy usługi IoT Hub dla rozwiązania.

Routing komunikatów usługi IoT Hub: ta funkcja usługi IoT Hub umożliwia użytkownikom kierowanie komunikatów z urządzenia do chmury do punktów końcowych usługi, takich jak kontenery usługi Azure Storage, event hubs, kolejki usługi Service Bus i tematy usługi Service Bus. Routing zapewnia również możliwość filtrowania danych przed routingiem do punktów końcowych. Oprócz danych telemetrycznych urządzenia można również kierować zdarzenia nie telemetryczne i używać ich do wyzwalania akcji.

Integracja usługi IoT Hub z usługą Event Grid: Usługa Azure Event Grid to w pełni zarządzana usługa routingu zdarzeń korzystająca z modelu publikowania-subskrybowania. Usługi IoT Hub i Event Grid współpracują ze sobą, aby zintegrować zdarzenia usługi IoT Hub z usługami platformy Azure i usługami spoza platformy Azure w czasie niemal rzeczywistym. Usługa IoT Hub publikuje zdarzenia urządzenia i zdarzenia telemetrii.

Differences

Chociaż zarówno routing komunikatów, jak i usługa Event Grid umożliwiają konfigurację alertów, istnieją pewne kluczowe różnice między nimi. Szczegółowe informacje można znaleźć w poniższej tabeli:

Funkcja Routing komunikatów usługi IoT Hub Integracja usługi IoT Hub z usługą Event Grid
Komunikaty i zdarzenia urządzenia Tak, routing komunikatów obsługuje dane telemetryczne, zmiany bliźniaczej reprezentacji urządzenia, zdarzenia cyklu życia urządzenia, zdarzenia zmiany cyfrowej reprezentacji bliźniaczej i zdarzenia stanu połączenia urządzenia. Tak, usługa Event Grid obsługuje dane telemetryczne i zdarzenia urządzenia, takie jak urządzenie utworzone/usunięte/połączone/rozłączone. Jednak usługa Event Grid nie obsługuje zdarzeń zmiany bliźniaczej reprezentacji urządzenia i zdarzeń zmiany cyfrowej reprezentacji bliźniaczej.
Szeregowanie Tak, routing komunikatów zachowuje kolejność zdarzeń. Nie, usługa Event Grid nie gwarantuje kolejności zdarzeń.
Filtrowanie Zaawansowane filtrowanie właściwości aplikacji komunikatów, właściwości systemu komunikatów, treści komunikatów, tagów bliźniaczych reprezentacji urządzenia i właściwości bliźniaczych reprezentacji urządzenia. Filtrowanie nie jest stosowane do zdarzeń zmiany cyfrowej reprezentacji bliźniaczej. Aby zapoznać się z przykładami, zobacz Składnia zapytania routingu komunikatów. Filtrowanie na podstawie typu zdarzenia, typu podmiotu i atrybutów w każdym zdarzeń. Aby zapoznać się z przykładami, zobacz Omówienie zdarzeń filtrowania w subskrypcjach usługi Event Grid. Podczas subskrybowania zdarzeń telemetrii można zastosować filtry danych w celu filtrowania właściwości komunikatów, treści komunikatu i bliźniaczej reprezentacji urządzenia w usłudze IoT Hub przed opublikowaniem w usłudze Event Grid. Zobacz , jak filtrować zdarzenia.
Punkty końcowe
  • Event Hubs
  • Azure Blob Storage
  • Kolejka usługi Service Bus
  • Tematy usługi Service Bus
  • Cosmos DB

Płatne jednostki SKU usługi IoT Hub (S1, S2 i S3) mogą mieć 10 niestandardowych punktów końcowych i 100 tras na usługę IoT Hub.
  • Azure Functions
  • Azure Automation
  • Event Hubs
  • Logic Apps
  • Storage Blob
  • Tematy niestandardowe
  • Queue Storage
  • Power Automate
  • Usługi innych firm za pośrednictwem elementów webhook

Usługa Event Grid obsługuje 500 punktów końcowych na usługę IoT Hub. Aby uzyskać najbardziej aktualną listę punktów końcowych, zobacz Procedury obsługi zdarzeń usługi Event Grid.
Koszty Nie ma oddzielnych opłat za routing komunikatów. Opłaty są naliczane tylko za ruch przychodzący danych telemetrycznych do usługi IoT Hub. Jeśli na przykład masz komunikat kierowany do trzech różnych punktów końcowych, opłaty są naliczane tylko za jeden komunikat. Usługa IoT Hub nie pobiera opłat. Usługa Event Grid oferuje pierwsze 100 000 operacji miesięcznie za darmo, a następnie 0,60 USD za milion operacji później.

Podobieństwa

Routing komunikatów usługi IoT Hub i usługa Event Grid również mają podobieństwa, z których niektóre zostały szczegółowo opisane w poniższej tabeli:

Funkcja Routing komunikatów usługi IoT Hub Integracja usługi IoT Hub z usługą Event Grid
Maksymalny rozmiar komunikatu 256 KB, urządzenie do chmury 256 KB, urządzenie do chmury
Niezawodność Wysoki: dostarcza każdy komunikat do punktu końcowego co najmniej raz dla każdej trasy. Wygasa wszystkie komunikaty, które nie są dostarczane w ciągu jednej godziny. Wysoki: dostarcza każdy komunikat do elementu webhook co najmniej raz dla każdej subskrypcji. Wygasa wszystkie zdarzenia, które nie są dostarczane w ciągu 24 godzin.
Skalowalność Wysoki: Zoptymalizowano pod kątem obsługi milionów jednocześnie połączonych urządzeń wysyłających miliardy komunikatów. Wysoki: Możliwość routingu 10 000 000 zdarzeń na sekundę na region.
Opóźnienie Niski: Niemal w czasie rzeczywistym. Niski: Niemal w czasie rzeczywistym.
Wysyłanie do wielu punktów końcowych Tak, wyślij jeden komunikat do wielu punktów końcowych. Tak, wyślij jeden komunikat do wielu punktów końcowych.
Bezpieczeństwo Usługa Iot Hub zapewnia tożsamość poszczególnych urządzeń i odwołowywalną kontrolę dostępu. Aby uzyskać więcej informacji, zobacz kontrola dostępu do usługi IoT Hub. Usługa Event Grid zapewnia walidację w trzech punktach: subskrypcje zdarzeń, publikowanie zdarzeń i dostarczanie zdarzeń elementu webhook. Aby uzyskać więcej informacji, zobacz Zabezpieczenia i uwierzytelnianie usługi Event Grid.

jak wybrać

Routing komunikatów usługi IoT Hub i integracja usługi IoT Hub z usługą Event Grid wykonują różne akcje, aby osiągnąć podobne wyniki. Obie firmy przyjmują informacje z rozwiązania usługi IoT Hub i przekazują je, aby inne usługi mogły reagować. Jak więc zdecydować, którego z nich użyć? Rozważ następujące pytania, aby ułatwić podjęcie decyzji:

  • Jakiego rodzaju dane wysyłasz do punktów końcowych?

    Użyj routingu komunikatów usługi IoT Hub, jeśli musisz wysyłać dane telemetryczne do innych usług. Routing komunikatów umożliwia również wykonywanie zapytań dotyczących aplikacji komunikatów i właściwości systemu, treści komunikatów, tagów bliźniaczych reprezentacji urządzenia i właściwości bliźniaczych reprezentacji urządzenia.

    Integracja usługi IoT Hub z usługą Event Grid współdziała ze zdarzeniami występującymi w usłudze IoT Hub. Te zdarzenia usługi IoT Hub obejmują dane telemetryczne, utworzone urządzenie, usunięte, połączone i rozłączone. Podczas subskrybowania zdarzeń telemetrii można zastosować dodatkowe filtry danych w celu filtrowania właściwości komunikatów, treści komunikatu i bliźniaczej reprezentacji urządzenia w usłudze IoT Hub przed opublikowaniem w usłudze Event Grid. Zobacz , jak filtrować zdarzenia.

  • Jakie punkty końcowe muszą otrzymywać te informacje?

    Routing komunikatów usługi IoT Hub obsługuje ograniczoną liczbę unikatowych punktów końcowych i typów punktów końcowych, ale można tworzyć łączniki w celu przekierowania danych i zdarzeń do dodatkowych punktów końcowych. Aby uzyskać pełną listę obsługiwanych punktów końcowych, zobacz tabelę w poprzedniej sekcji.

    Integracja usługi IoT Hub z usługą Event Grid obsługuje 500 punktów końcowych na usługę IoT Hub i większą gamę typów punktów końcowych. Natywnie integruje się z kolejkami usług Azure Functions, Logic Apps, Storage i Service Bus, a także współpracuje z elementami webhook w celu rozszerzenia wysyłania danych poza ekosystem usługi platformy Azure i do aplikacji biznesowych innych firm.

  • Czy ma to znaczenie, czy dane są dostarczane w kolejności?

    Routing komunikatów usługi IoT Hub zachowuje kolejność wysyłania komunikatów, dzięki czemu docierają w ten sam sposób.

    Usługa Event Grid nie gwarantuje, że punkty końcowe odbierają zdarzenia w tej samej kolejności, w której wystąpiły. W takich przypadkach, w których bezwzględna kolejność komunikatów jest znacząca i/lub gdy konsument potrzebuje wiarygodnego unikatowego identyfikatora komunikatów, zalecamy użycie routingu komunikatów.

Następne kroki