Výběr technologie přijímání zpráv v reálném čase v Azure
Zpracování v reálném čase zpracovává proudy dat zaznamenaných v reálném čase a jsou zpracovávány s minimální latencí. Mnoho řešení pro zpracování v reálném čase potřebuje úložiště příjmu zpráv, které se bude chovat jako vyrovnávací paměť pro zprávy, a podporuje zpracování škálování, spolehlivé doručování a další sémantiku služby Řízení front zpráv.
Jaké jsou vaše možnosti pro přijímání zpráv v reálném čase?
Azure Event Hubs
Azure Event Hubs je vysoce škálovatelná platforma pro streamování dat a služba pro příjem událostí, která dokáže přijímat a zpracovávat miliony událostí za sekundu. Služba Event Hubs dokáže zpracovávat a ukládat události, data nebo telemetrické údaje produkované distribuovaným softwarem a zařízeními. Data odeslaná do centra událostí je možné transformovat a uložit pomocí libovolného poskytovatele analýz v reálném čase nebo adaptérů pro dávkové zpracování a ukládání. Event Hubs poskytuje možnosti pro publikování a odběr s nízkou latencí ve velkém měřítku, které je vhodné pro scénáře s velkými objemy dat.
Azure IoT Hub
Azure IoT Hub je spravovaná služba, která umožňuje spolehlivou a zabezpečenou obousměrnou komunikaci mezi miliony zařízení IoT a cloudovým back-endu.
Funkce IoT Hub zahrnuje:
- Několik možností pro komunikaci zařízení-Cloud a Cloud-zařízení. Mezi tyto možnosti patří jednosměrné zasílání zpráv, přenos souborů a metody požadavek-odpověď.
- Směrování zpráv do dalších služeb Azure.
- Queryable Store pro metadata zařízení a informace o synchronizovaných stavech.
- Zabezpečená komunikace a řízení přístupu pomocí klíčů zabezpečení pro zařízení nebo certifikátů X. 509.
- Monitorování událostí připojení zařízení a správy identit zařízení.
V souvislosti s přijímáním zpráv je IoT Hub podobná Event Hubs. Je však navržena speciálně pro správu připojení zařízení IoT, nejen pro příjem zpráv. Další informace najdete v tématu porovnání služby azure IoT Hub a azure Event Hubs.
Kafka v HDInsightu
Apache Kafka je open source platforma pro distribuované streamování, která se dá použít k sestavení datových kanálů v reálném čase a aplikací streamování. Kafka také poskytuje funkci pro zprostředkování zpráv podobnou frontě zpráv, ve které můžete publikovat pojmenované datové proudy a přihlásit se k jejich odběru. Je horizontálně škálovatelná, odolná proti chybám a velmi rychlá. Kafka v HDInsight poskytuje Kafka jako spravovanou, vysoce škálovatelnou a vysoce dostupnou službu v Azure.
Mezi běžné případy použití pro Kafka patří:
- Zasílání zpráv. Vzhledem k tomu, že podporuje vzor zprávy pro publikování a odběr, se Kafka často používá jako zprostředkovatel zpráv.
- Sledování aktivity. Vzhledem k tomu, že Kafka poskytuje protokolování záznamů v pořadí, lze je použít ke sledování a opětovnému vytvoření aktivit, jako jsou například akce uživatelů na webu.
- Agregace. Pomocí zpracování datových proudů můžete agregovat informace z různých datových proudů, abyste je mohli kombinovat a centralizovat s provozními daty.
- Transformace. Pomocí zpracování datových proudů můžete kombinovat a rozšiřovat data z více vstupních témat do jednoho nebo více témat s výstupem.
Kritéria výběru klíče
Pokud chcete zúžit možnosti, začněte tím, že odpovíte na tyto otázky:
Potřebujete obousměrnou komunikaci mezi zařízeními IoT a Azure? Pokud ano, vyberte IoT Hub.
Potřebujete spravovat přístup k jednotlivým zařízením a budete moct odvolat přístup k určitému zařízení? Pokud ano, vyberte IoT Hub.
Matice schopností
V následujících tabulkách jsou shrnuté klíčové rozdíly ve funkcích.
| Schopnost | IoT Hub | Event Hubs | Kafka v HDInsightu |
|---|---|---|---|
| Komunikace z cloudu na zařízení | Yes | No | No |
| Nahrání souboru inicializovaného zařízením | Yes | No | No |
| Informace o stavu zařízení | Vlákna zařízení | No | No |
| Podpora protokolu | MQTT, AMQP, HTTPS 1 | AMQP, HTTPS, Kafka protokol | Protokol Kafka |
| Zabezpečení | Identita vázaná na zařízení; řízení přístupu odvolatelné | Zásady sdíleného přístupu; omezené odvolání prostřednictvím zásad vydavatele. | Ověřování pomocí SASL; autorizace k připojení; integrace s podporou externích ověřovacích služeb. |
[1] bránu protokolu Azure IoT můžete použít také jako vlastní bránu k povolení přizpůsobení protokolu pro IoT Hub.
Další informace najdete v tématu porovnání služby azure IoT Hub a azure Event Hubs.