Confrontare il routing dei messaggi e Griglia di eventi per l'hub IoT
L'hub IoT di Azure consente di trasmettere i dati dai dispositivi connessi e di integrare tali dati nelle applicazioni aziendali. L'hub IoT offre due metodi per integrare gli eventi IoT in altri servizi di Azure o applicazioni aziendali. Questo articolo illustra le due funzionalità che consentono questa integrazione, per poter scegliere l'opzione ideale a seconda dello scenario.
Nota
Alcune delle funzionalità indicate in questo articolo, come la messaggistica da cloud a dispositivo, i dispositivi gemelli e la gestione dei dispositivi, sono disponibili solo nel livello Standard dell'hub IoT. Per altre informazioni sui livelli di hub IoT basic e standard/gratuiti, vedere Scegliere il livello di hub IoT appropriato per la soluzione.
Routing dei messaggi dell'hub IoT: questa funzionalità dell'hub IoT consente agli utenti di instradare i messaggi da dispositivo a cloud agli endpoint di servizio, ad esempio i contenitori di archiviazione di Azure, Hub eventi, le code del bus di servizio e gli argomenti del bus di servizio. Il routing fornisce anche una funzionalità di query per filtrare i dati prima di indirizzarli agli endpoint. Oltre ai dati di telemetria dei dispositivi, è anche possibile instradare gli eventi non di telemetria e usarli per attivare le azioni.
Integrazione dell'hub IoT con Griglia di eventi: Griglia di eventi di Azure è un servizio di routing di eventi completamente gestito che usa un modello di pubblicazione-sottoscrizione. L'hub IoT e Griglia di eventi interagiscono per integrare gli eventi dell'hub IoT nei servizi di Azure e non di Azure, in tempo quasi reale. hub IoT pubblica gli eventi del dispositivo e gli eventi di telemetria.
Differenze
Sia il routing dei messaggi che Griglia di eventi consentono la configurazione di avvisi, ma presentano alcune importanti differenze. Consultare la tabella seguente per i dettagli:
Funzionalità | Routing dei messaggi dell'hub IoT | Integrazione dell'hub IoT con Griglia di eventi |
---|---|---|
Messaggi ed eventi del dispositivo | Sì, il routing dei messaggi supporta i dati di telemetria, gli eventi di modifica del dispositivo gemello, gli eventi relativi al ciclo di vita del dispositivo, eventi di modifica del gemello digitale e gli eventi dello stato della connessione del dispositivo. | Sì, Griglia di eventi supporta i dati di telemetria e gli eventi del dispositivo, ad esempio il dispositivo è stato creato/eliminato/connesso/disconnesso. Griglia di eventi, tuttavia, non supporta gli eventi di modifica del dispositivo gemello e gli eventi di modifica del gemello digitale. |
Ordinamento | Sì, il routing dei messaggi mantiene l'ordine degli eventi. | No, Griglia di eventi non garantisce l'ordine degli eventi. |
Filtri | Applicazione di filtri avanzati in proprietà di applicazione del messaggio, proprietà di sistema del messaggio, corpo del messaggio, tag del dispositivo gemello e proprietà del dispositivo gemello. Il filtro non viene applicato agli eventi di modifica del gemello digitale. Ad esempio, vedere Sintassi query per il routing dei messaggi di hub IoT. | Filtri in base al tipo di evento, al tipo di oggetto e agli attributi in ogni evento. Per esempi, vedere Informazioni sugli eventi di filtro nelle sottoscrizioni di Griglia di eventi. Quando si sottoscrivono eventi di telemetria, è possibile applicare filtri ai in base alle proprietà dei messaggi, al corpo del messaggio e al dispositivo gemello nell'hub IoT, prima della pubblicazione in Griglia di eventi. Vedere come filtrare gli eventi. |
Endpoint |
Gli SKU dell'hub IoT a pagamento (S1, S2 e S3) possono disporre di 10 endpoint personalizzati e 100 route per ogni hub IoT. |
Griglia di eventi supporta 500 endpoint per ogni hub IoT. Per l'elenco più aggiornato di endpoint, vedere Gestori eventi di Griglia di eventi. |
Costii | Non vengono addebitati costi separati per il routing dei messaggi. Vengono addebitati solo i dati di telemetria in ingresso nell'hub IoT. Ad esempio, se si indirizza un messaggio a tre endpoint diversi, viene addebitato un solo messaggio. | Non è previsto alcun addebito per l'hub IoT. Griglia di eventi offre gratuitamente le prime 100.000 operazioni al mese e quindi successivamente un costo di 0,60 dollari per milione di operazioni. |
Somiglianze
Il routing dei messaggi dell'hub IoT e Griglia di eventi presentano anche analogie, alcuni delle quali vengono illustrate in dettaglio nella tabella seguente:
Funzionalità | Routing dei messaggi dell'hub IoT | Integrazione dell'hub IoT con Griglia di eventi |
---|---|---|
Dimensioni massime del messaggio | 256 KB, da dispositivo a cloud | 256 KB, da dispositivo a cloud |
Affidabilità | Elevata: ogni messaggio viene recapitato all'endpoint almeno una volta per ogni route. Elimina tutti i messaggi che non vengono recapitati entro un'ora. | Elevata: ogni messaggio viene recapitato al webhook almeno una volta per ogni sottoscrizione. Elimina tutti i messaggi che non vengono recapitati entro 24 ore. |
Scalabilità | Elevata: è ottimizzato per supportare milioni di dispositivi connessi simultaneamente che inviano miliardi di messaggi. | Elevata: consente il routing di 10.000.000 di eventi al secondo per ogni area. |
Latenza | Bassa: in tempo quasi reale. | Bassa: in tempo quasi reale. |
Invio a più endpoint | Sì, invia un singolo messaggio a più endpoint. | Sì, invia un singolo messaggio a più endpoint. |
Sicurezza | L'hub IoT fornisce l'identità per ogni dispositivo e il controllo di accesso revocabile. Per altre informazioni, vedere Controllo dell'accesso all'hub IoT. | Griglia di eventi fornisce la convalida in tre punti: sottoscrizioni di eventi, pubblicazione di eventi e recapito di eventi al webhook. Per altre informazioni, vedere Event Grid security and authentication (Sicurezza e autenticazione di Griglia di eventi). |
Come scegliere
Il routing dei messaggi dell'hub IoT e l'integrazione dell'hub IoT con Griglia di eventi ottengono risultati simili con azioni diverse. Entrambi acquisiscono le informazioni dalla soluzione hub IoT e le passano in modo che altri servizi possano rispondere. Per decidere quale usare, Considerare le seguenti domande come guida per prendere la decisione:
Quale tipo di dati si invierà agli endpoint?
Usare il routing dei messaggi dell'hub IoT quando è necessario inviare dati di telemetria ad altri servizi. Il routing dei messaggi consente anche di eseguire query sulle proprietà di applicazione e di sistema del messaggio, sul corpo del messaggio, sui tag del dispositivo gemello e sulle proprietà del dispositivo gemello.
L'integrazione dell'hub IoT con Griglia di eventi è indicata per gli eventi che si verificano nel servizio hub IoT. Questi eventi dell'hub IoT includono dati di telemetria, dispositivi creati, eliminati, connessi e disconnessi. Quando si sottoscrive gli eventi di telemetria, è possibile applicare filtri aggiuntivi sui dati per filtrare le proprietà dei messaggi, il corpo del messaggio e il dispositivo gemello nel hub IoT, prima di eseguire la pubblicazione in Griglia di eventi. Vedere come filtrare gli eventi.
Quali endpoint devono ricevere queste informazioni?
hub IoT routing dei messaggi supporta un numero limitato di endpoint e tipi di endpoint univoci, ma è possibile creare connettori per reindirizzare i dati e gli eventi a endpoint aggiuntivi. Per un elenco completo degli endpoint supportati, vedere la tabella nella sezione precedente.
L'integrazione dell'hub IoT con Griglia di eventi supporta 500 endpoint per hub IoT e una gamma più ampia di tipi di endpoint. Si integra in modo nativo con Funzioni di Azure, App per la logica, Archiviazione e code del bus di servizio ed è anche compatibile con i webhook per estendere l'invio dei dati al di fuori dell'ecosistema di servizi di Azure e in applicazioni aziendali di terze parti.
È importante che i dati arrivino in ordine?
Il routing dei messaggi dell'hub IoT mantiene l'ordine di invio dei messaggi, in modo che arrivino nello stesso ordine.
Griglia di eventi non garantisce che gli endpoint ricevano eventi nello stesso ordine in cui si sono verificati. Per i casi in cui l'ordine assoluto dei messaggi è significativo e/o in cui un consumer necessita di un identificatore univoco attendibile per i messaggi, è consigliabile usare il routing di messaggi.
Passaggi successivi
- Altre informazioni sul routing dei messaggi dell'hub IoT e sugli endpoint dell'hub IoT.
- Provare l'integrazione di Griglia di eventi inviando notifiche tramite posta elettronica sugli eventi hub IoT di Azure tramite App per la logica.