Volba služby Azure Event Hubs

Dokončeno

Existují určité aplikace, které vytvářejí velké množství událostí z podobně obrovského počtu zdrojů. V těchto situacích často slýcháme termín „Big Data“ a tyto velké objemy dat vyžadují specifickou infrastrukturu, která je zvládne zpracovat.

Představte si, že pracujete pro firmu Contoso Aircraft Engines. Letecké motory, které vaše firma vyrábí, mají stovky senzorů. Než letadlo každé ráno vzlétne, je třeba motory připojit k testovacímu systému a pečlivě vyzkoušet jejich funkci. Kromě toho se v době, kdy je letadlo připojené k pozemnímu systému, streamují i nashromážděná letová data.

Chcete použít historická data ze senzorů k vyhledání vzorů v naměřených hodnotách, které mohou ukazovat na možné selhání v blízké budoucnosti. Také chcete porovnat hodnoty získané v reálném čase s historickými údaji o těchto vzorech naznačujících poruchu. Pak budete moct varovat uživatele téměř v reálném čase, že jejich motor vykazuje znepokojivé známky blížící se poruchy.

Co je služba Azure Event Hubs?

Služba Event Hubs zprostředkovává komunikační vzor založený na principu publikování a odběru. Na rozdíl od služby Event Grid je ale optimalizovaná pro extrémně vysokou propustnost, velký počet vydavatelů, zabezpečení a odolnost.

Zatímco Event Grid dokonale zapadá do vzoru publikování a odběru v tom, že jednoduše spravuje odběry a směruje komunikaci s těmito odběrateli, Služba Event Hubs provádí poměrně několik dalších služeb. Díky těmto dalším službám vypadá spíše jako service bus nebo fronta zpráv než jednoduchý vysílání událostí.

Oddíly

Když služba Event Hubs přijme nějakou komunikaci, rozdělí ji do oddílů. Oddíly jsou vyrovnávací paměti, do kterých se komunikace ukládají. Vzhledem k vyrovnávacím pamětím událostí nejsou události dočasné a událost není zmeškaná jenom proto, že odběratel je zaneprázdněný nebo dokonce offline. Odběratel může vždy použít vyrovnávací paměť k "zachycení". Ve výchozím nastavení zůstanou události ve vyrovnávací paměti po dobu 24 hodin, než automaticky vyprší jejich platnost. Vyrovnávací paměti se nazývají oddíly, protože se data mezi ně rozdělují. Každý oddíl má samostatnou sadu odběratelů.

Capture

Event Hubs může všechny události odesílat okamžitě do služby Azure Data Lake nebo Azure Blob Storage pro levné a trvalé uchovávání.

Authentication

Všichni vydavatelé jsou ověřováni a dostanou token. To znamená, že Služba Event Hubs může přijímat události z externích zařízení a mobilních aplikací, aniž by se museli obávat, že podvodná data od prankerů by mohla zničit vaši analýzu.

Použití Event Hubs

Centrum událostí obsahuje podporu pro kanálové odesílání proudů událostí do jiných služeb Azure. Propojení se službou Azure Stream Analytics například umožňuje komplexní analýzy dat téměř v reálném čase, korelaci více událostí a vyhledávání vzorů. V takovém případě se Stream Analytics bude považovat za odběratele.

Pro naše letecké motory vytvoříme architekturu tak, aby Centrum událostí ověřovalo komunikaci od našich motorů. Pak ho použijeme k uložení všech dat do Data Lake. Později můžeme všechna tato data použít k opětovnému natrénování a vylepšování našich modelů strojového učení. Nakonec odběratelé Stream Analytics vyzvednou naše streamy událostí. Stream Analytics používá náš model strojového učení k vyhledání vzorů v datech snímačů, které můžou značit problémy.

Protože máme několik oddílů a každý motor odesílá všechna svoje data jen do jednoho oddílu, každé instanci odběratele Stream Analytics stačí zabývat se jen podmnožinou všech dat. Nemusí filtrovat a korelovat nad všemi.

Kterou službu mám zvolit?

Stejně jako při výběru řešení pro fronty se může i volba mezi těmito dvěma službami doručování událostí zdát zpočátku složitá. Obě podporují alespoň jednu sémantiku.

Zvolte Event Hubs, pokud:

  • budete potřebovat podporu ověřování velkého počtu vydavatelů,
  • budete chtít uložit datový proud událostí do Data Lake nebo Blob Storage,
  • potřebujete agregaci nebo analýzu datového proudu událostí,
  • potřebujete spolehlivé zasílání zpráv nebo odolnost proti chybám.

Jinak pokud potřebujete jednoduchou infrastrukturu publikování a odběru událostí s důvěryhodnými vydavateli (například vlastní webový server), měli byste zvolit Event Grid.

Event Hubs vám umožní vytvořit kanál pro velký objem dat, který je schopný zpracovat miliony událostí za sekundu při nízké latenci. Dokáže zpracovávat data ze souběžných zdrojů a směrovat je do různých infrastruktur zpracování datových proudů a analytických služeb. Umožňuje zpracování v reálném řase a podporuje opětovné přehrání uložených nezpracovaných dat.