Azure Event Hubs: Platforma pro streamování dat v reálném čase s nativní podporou Apache Kafka

Azure Event Hubs je nativní služba streamování dat v cloudu, která může streamovat miliony událostí za sekundu s nízkou latencí z libovolného zdroje do libovolného cíle. Služba Event Hubs je kompatibilní s Apache Kafka. Umožňuje spouštět existující úlohy Kafka bez jakýchkoli změn kódu.

Firmy můžou službu Event Hubs používat k ingestování a ukládání streamovaných dat. Díky streamovaným datům můžou firmy získat cenné přehledy, řídit analýzy v reálném čase a reagovat na události, jak se to stane. Tato data můžou využít k vylepšení celkové efektivity a zkušeností zákazníků.

Diagram znázorňující, jak služba Azure Event Hubs zapadá do platformy streamování událostí

Event Hubs je upřednostňovaná vrstva příjmu událostí jakéhokoli řešení streamování událostí, které vytváříte nad Azure. Integruje se s datovými a analytickými službami uvnitř Azure a mimo ni za účelem vytvoření kompletního kanálu streamování dat, který bude sloužit následujícím případům použití:

Klíčové funkce

Seznamte se s klíčovými funkcemi služby Azure Event Hubs v následujících částech.

Apache Kafka ve službě Azure Event Hubs

Event Hubs je modul pro streamování událostí s více protokoly, který nativně podporuje protokoly AMQP (Advanced Message Queuing Protocol), Apache Kafka a HTTPS. Vzhledem k tomu, že podporuje Apache Kafka, můžete úlohy Kafka přenést do služby Event Hubs, aniž byste museli provádět změny kódu. Nemusíte nastavovat, konfigurovat ani spravovat vlastní clustery Kafka ani používat nabídku Kafka jako služby, která není nativní pro Azure.

Služba Event Hubs je vytvořená jako modul zprostředkovatele nativní pro cloud. Z tohoto důvodu můžete spouštět úlohy Kafka s lepším výkonem, lepší nákladovou efektivitou a žádnou provozní režií.

Další informace najdete v tématu Azure Event Hubs pro Apache Kafka.

Registr schématu ve službě Event Hubs

Azure Schema Registry ve službě Event Hubs poskytuje centralizované úložiště pro správu schémat aplikací streamování událostí. Registr schématu se dodává zdarma s každým oborem názvů služby Event Hubs. Integruje se s aplikacemi Kafka nebo aplikacemi založenými na sadě Event Hubs SDK.

Diagram znázorňující integraci registru schématu a služby Event Hubs

Registr schémat zajišťuje kompatibilitu a konzistenci dat mezi producenty událostí a příjemci. Umožňuje vývoj, ověřování a zásady správného řízení schématu a podporuje efektivní výměnu a interoperabilitu dat.

Registr schémat se integruje se stávajícími aplikacemi Kafka a podporuje několik formátů schémat, včetně schémat Avro a JSON.

Další informace najdete v tématu Azure Schema Registry ve službě Event Hubs.

Zpracování událostí streamování v reálném čase pomocí Stream Analytics

Služba Event Hubs se integruje se službou Azure Stream Analytics a umožňuje zpracování datových proudů v reálném čase. Pomocí integrovaného editoru bez kódu můžete úlohu Stream Analytics vyvíjet pomocí funkcí přetažení, aniž byste museli psát žádný kód.

Snímek obrazovky znázorňující stránku Zpracování dat s dlaždicí Povolit přehledy v reálném čase z dlaždice Události

Vývojáři můžou také použít dotazovací jazyk Stream Analytics založený na SQL k provádění zpracování datových proudů v reálném čase a využívat širokou škálu funkcí pro analýzu streamovaných dat.

Další informace najdete v článcích v části integrace Azure Stream Analytics v obsahu.

Prozkoumání streamovaných dat pomocí Azure Data Exploreru

Azure Data Explorer je plně spravovaná platforma pro analýzy velkých objemů dat, která poskytuje vysoký výkon a umožňuje analýzu velkých objemů dat téměř v reálném čase. Integrací služby Event Hubs s Azure Data Explorerem můžete provádět analýzy a zkoumání streamovaných dat téměř v reálném čase.

Diagram znázorňující dotaz a výstup Azure Data Exploreru

Další informace najdete v tématu Ingestování dat z centra událostí do Azure Data Exploreru.

Azure Functions, sady SDK a ekosystém Kafka

Pomocí služby Event Hubs můžete ingestovat, ukládat do vyrovnávací paměti, ukládat a zpracovávat stream v reálném čase, abyste získali užitečné přehledy. Event Hubs používá model dělených příjemců. Umožňuje více aplikacím zpracovávat stream souběžně a umožňuje řídit rychlost zpracování. Služba Event Hubs se také integruje se službou Azure Functions pro bezserverové architektury.

Pro standardní protokol AMQP 1.0 je k dispozici široký ekosystém. Sady SDK jsou dostupné v jazycích, jako jsou .NET, Java, Python a JavaScript, takže můžete začít zpracovávat streamy ze služby Event Hubs. Všechny podporované jazyky klientů poskytují integraci na nízké úrovni.

Ekosystém také umožňuje integraci se službami Azure Functions, Azure Spring Apps, konektory Kafka a dalšími platformami a technologiemi pro analýzu dat, jako jsou Apache Spark a Apache Flink.

Flexibilní a nákladově efektivní streamování událostí

Můžete si projít flexibilní a nákladově efektivní streamování událostí prostřednictvím úrovní Standard, Premium nebo Dedicated pro službu Event Hubs. Tyto možnosti vyhovují potřebám streamování dat v rozsahu od několika MB/s až po několik GB/s. Můžete zvolit shodu, která je vhodná pro vaše požadavky.

Škálovatelné

Se službou Event Hubs můžete začít s datovými proudy v megabajtech a růst až na gigabajty nebo terabajty. Funkce automatického nafouknutí je jednou z dostupných možností škálování počtu jednotek propustnosti nebo jednotek zpracování podle vašich potřeb využití.

Podporuje streamování velkých zpráv.

Ve většině scénářů streamování jsou data charakterizována jednoduchým, obvykle méně než 1 MB a vysokou propustností. Existují také případy, kdy se zprávy nedají rozdělit do menších segmentů. Služba Event Hubs může za příplatek pojmout události až 20 MB pomocí samoobslužných škálovatelných vyhrazených clusterů . Tato funkce umožňuje službě Event Hubs zpracovávat širokou škálu velikostí zpráv, aby se zajistily nepřerušované obchodní operace. Další informace najdete v tématu Odesílání a přijímání velkých zpráv pomocí služby Azure Event Hubs.

Zachytávání streamovaných dat pro dlouhodobé uchovávání a dávkové analýzy

Zachytávání dat téměř v reálném čase ve službě Azure Blob Storage nebo Azure Data Lake Storage pro dlouhodobé uchovávání nebo mikrodávkové zpracování Toto chování můžete dosáhnout u stejného datového proudu, který používáte k odvození analýz v reálném čase. Nastavení zachytávání dat událostí je rychlé.

Diagram znázorňující zachytávání dat služby Event Hubs do služby Azure Storage nebo Azure Data Lake Storage pomocí spravované identity

Jak to funguje

Event Hubs poskytuje jednotnou platformu streamování událostí s vyrovnávací pamětí pro uchovávání času, která odděluje producenty událostí od příjemců událostí. Aplikace producenta a příjemce můžou provádět rozsáhlé ingestování dat prostřednictvím více protokolů.

Následující diagram znázorňuje hlavní komponenty architektury služby Event Hubs.

Diagram znázorňující hlavní komponenty služby Event Hubs

Mezi klíčové funkční komponenty služby Event Hubs patří:

  • Aplikace pro producenty: Tyto aplikace můžou ingestovat data do centra událostí pomocí sad SDK služby Event Hubs nebo libovolného klienta producenta Kafka.
  • Obor názvů: Kontejner pro správu jednoho nebo více center událostí nebo témat Kafka. Úlohy správy, jako je přidělování kapacity streamování, konfigurace zabezpečení sítě a povolení geografického zotavení po havárii, se zpracovávají na úrovni oboru názvů.
  • Téma Event Hubs/Kafka: Ve službě Event Hubs můžete události uspořádat do centra událostí nebo do tématu Kafka. Jedná se o distribuovaný protokol jen pro připojení, který může obsahovat jeden nebo více oddílů.
  • Oddíly: Slouží ke škálování centra událostí. Jsou jako pruhy na volné cestě. Pokud potřebujete větší propustnost streamování, můžete přidat další oddíly.
  • Spotřebitelské aplikace: Tyto aplikace mohou využívat data hledáním v protokolu událostí a udržováním posunu příjemce. Příjemci můžou být klienti Kafka consumer nebo klienti sady Event Hubs SDK.
  • Skupina příjemců: Tato logická skupina instancí příjemců čte data z centra událostí nebo tématu Kafka. Umožňuje více příjemcům číst stejná streamovaná data v centru událostí nezávisle na sobě vlastním tempem a s vlastními posuny.

Pokud chcete začít používat službu Event Hubs, podívejte se na následující rychlé starty.

Streamování dat pomocí sady Event Hubs SDK (AMQP)

Pomocí libovolné z následujících ukázek můžete streamovat data do služby Event Hubs pomocí sad SDK.

Streamování dat pomocí Apache Kafka

Pomocí následujících ukázek můžete streamovat data z aplikací Kafka do služby Event Hubs.

Ověřování schématu pomocí registru schématu

Registr schématu služby Event Hubs můžete použít k ověření schématu pro aplikace streamování událostí.