Azure Event Hubs — platforma przesyłania strumieniowego danych w czasie rzeczywistym z natywną obsługą platformy Apache Kafka

Azure Event Hubs to natywna usługa przesyłania strumieniowego danych w chmurze, która może przesyłać strumieniowo miliony zdarzeń na sekundę, z dowolnego źródła do dowolnego miejsca docelowego. Usługa Event Hubs jest zgodna z platformą Apache Kafka i umożliwia uruchamianie istniejących obciążeń platformy Kafka bez żadnych zmian w kodzie.

Korzystając z usługi Event Hubs do pozyskiwania i przechowywania danych przesyłanych strumieniowo, firmy mogą wykorzystać możliwości danych przesyłanych strumieniowo, aby uzyskać cenne szczegółowe informacje, prowadzić analizę w czasie rzeczywistym i reagować na zdarzenia w miarę ich wystąpienia, zwiększając ogólną wydajność i środowisko klienta.

Diagram that shows how Azure Event Hubs fits in an event streaming platform.

Usługa Azure Event Hubs to preferowana warstwa pozyskiwania zdarzeń dowolnego rozwiązania do przesyłania strumieniowego zdarzeń, które tworzysz na platformie Azure. Bezproblemowo integruje się z usługami danych i analiz na platformie Azure i poza nią w celu utworzenia kompletnego potoku przesyłania strumieniowego danych w celu obsługi następujących przypadków użycia.

Najważniejsze możliwości

Platforma Apache Kafka w usłudze Azure Event Hubs

Usługa Azure Event Hubs to wielo protokołowy aparat przesyłania strumieniowego zdarzeń, który natywnie obsługuje protokoły AMQP, Apache Kafka i HTTPs. Ponieważ obsługuje platformę Apache Kafka, obciążenia platformy Kafka są obsługiwane w usłudze Azure Event Hubs bez konieczności wprowadzania żadnych zmian w kodzie. Nie musisz konfigurować, konfigurować i zarządzać własnymi klastrami platformy Kafka ani korzystać z oferty platformy Kafka jako usługa, która nie jest natywna dla platformy Azure.

Usługa Event Hubs jest zbudowana od podstaw jako natywny aparat brokera w chmurze. W związku z tym można uruchamiać obciążenia platformy Kafka z lepszą wydajnością, lepszą wydajnością kosztową i bez żadnych obciążeń operacyjnych.

Aby uzyskać więcej informacji, zobacz Usługa Azure Event Hubs dla platformy Apache Kafka.

Rejestr schematów w usłudze Azure Event Hubs

Rejestr schematów platformy Azure w usłudze Event Hubs udostępnia scentralizowane repozytorium do zarządzania schematami aplikacji przesyłania strumieniowego zdarzeń. Usługa Azure Schema Registry jest bezpłatna z każdą przestrzenią nazw usługi Event Hubs i bezproblemowo integruje się z aplikacjami platformy Kafka lub aplikacjami opartymi na zestawie SDK usługi Event Hubs.

Diagram that shows Schema Registry and Azure Event Hubs integration.

Zapewnia ona zgodność i spójność danych między producentami i konsumentami zdarzeń. Rejestr schematów umożliwia bezproblemową ewolucję schematu, walidację i ład oraz promowanie wydajnej wymiany i współdziałania danych.

Rejestr schematów bezproblemowo integruje się z istniejącymi aplikacjami platformy Kafka i obsługuje wiele formatów schematów, w tym avro i schematów JSON.

Aby uzyskać więcej informacji, zobacz Rejestr schematów platformy Azure w usłudze Event Hubs.

Przetwarzanie zdarzeń przesyłanych strumieniowo w czasie rzeczywistym za pomocą usługi Azure Stream Analytics

Usługa Event Hubs bezproblemowo integruje się z usługą Azure Stream Analytics, aby umożliwić przetwarzanie strumienia w czasie rzeczywistym. Za pomocą wbudowanego edytora bez kodu można bez wysiłku opracowywać zadanie usługi Stream Analytics przy użyciu funkcji przeciągania i upuszczania bez konieczności pisania kodu.

Screenshot showing the Process data page with Enable real time insights from events tile selected.

Alternatywnie deweloperzy mogą używać języka zapytań usługi Stream Analytics opartego na języku SQL do wykonywania przetwarzania strumienia w czasie rzeczywistym i korzystać z szerokiej gamy funkcji do analizowania danych przesyłanych strumieniowo.

Aby uzyskać więcej informacji, zobacz artykuły w sekcji integracji usługi Azure Stream Analytics spisu treści.

Eksplorowanie danych przesyłanych strumieniowo za pomocą usługi Azure Data Explorer

Azure Data Explorer to w pełni zarządzana platforma do analizy danych big data, która zapewnia wysoką wydajność i umożliwia analizę dużych ilości danych niemal w czasie rzeczywistym. Dzięki integracji usługi Event Hubs z usługą Azure Data Explorer można łatwo wykonywać analizy i eksplorowanie danych przesyłanych strumieniowo w czasie rzeczywistym.

Diagram that shows Azure Data explorer query and output.

Aby uzyskać więcej informacji, zobacz Pozyskiwanie danych z centrum zdarzeń do usługi Azure Data Explorer i artykuły w tej samej sekcji.

Bogaty ekosystem — funkcje platformy Azure, zestawy SDK i ekosystem platformy Kafka

Możesz pozyskiwać, buforować, przechowywać i przetwarzać strumień danych w czasie rzeczywistym, aby uzyskiwać praktyczne informacje. W usłudze Event Hubs jest używany partycjonowany model odbiorców, umożliwiający wielu aplikacjom jednoczesne przetwarzanie strumienia danych, podczas gdy Ty kontrolujesz szybkość przetwarzania. Usługa Azure Event Hubs integruje się również z usługą Azure Functions na potrzeby architektur bezserwerowych.

Dzięki szerokiemu ekosystemowi dostępnemu dla standardowego protokołu AMQP 1.0 i zestawów SDK dostępnych w różnych językach: .NET, Java, Python, JavaScript, można łatwo rozpocząć przetwarzanie strumieni z usługi Event Hubs. Wszystkie obsługiwane języki klienta zapewniają integrację niskiego poziomu.

Ekosystem zapewnia również bezproblemową integrację z usługami Azure Functions, Azure Spring Apps, Kafka Połączenie or oraz innymi platformami i technologiami analizy danych, takimi jak Apache Spark i Apache Flink.

Elastyczne i ekonomiczne przesyłanie strumieniowe zdarzeń

Możesz korzystać z elastycznego i ekonomicznego przesyłania strumieniowego zdarzeń za pośrednictwem różnych warstw usługi Event Hubs — w tym warstw Standardowa, Premium i Dedicated. Te opcje zaspokajają potrzeby przesyłania strumieniowego danych w zakresie od kilku MB/s do kilku GB/s, co pozwala wybrać idealne dopasowanie do wymagań.

Skalowalny

Korzystając z usługi Event Hubs, możesz zacząć od strumieni danych liczonych w megabajtach i rozwijać je do rozmiaru gigabajtów, a nawet terabajtów. Funkcja automatycznego rozszerzania jest jedną z wielu opcji dostępnych do skalowania liczby jednostek przepływności lub jednostek przetwarzania w celu spełnienia wymagań dotyczących użycia.

Przechwytywanie danych przesyłanych strumieniowo na potrzeby długoterminowego przechowywania i analizy wsadowej

Przechwyć dane niemal w czasie rzeczywistym w usłudze Azure Blob Storage lub Azure Data Lake Storage w celu długoterminowego przechowywania lub przetwarzania mikrosadowego. Jest to możliwe w ramach tego samego strumienia, który jest używany do analizy w czasie rzeczywistym. Przechwytywanie danych zdarzeń można szybko skonfigurować.

Image showing capturing of Event Hubs data into Azure Storage or Azure Data Lake Storage using Managed Identity

Jak to działa

Usługa Event Hubs udostępnia ujednoliconą platformę przesyłania strumieniowego zdarzeń z buforem przechowywania czasu, co umożliwia oddzielenie producentów zdarzeń od odbiorców zdarzeń. Producenci i aplikacje konsumenckie mogą wykonywać pozyskiwanie danych na dużą skalę za pomocą wielu protokołów.

Na poniższej ilustracji przedstawiono kluczowe składniki architektury usługi Event Hubs:

Diagram that shows the main components of Event Hubs.

Najważniejsze składniki funkcjonalne usługi Event Hubs obejmują:

  • Aplikacje producenta mogą pozyskiwać dane do centrum zdarzeń przy użyciu zestawów SDK usługi Event Hubs lub dowolnego klienta producenta platformy Kafka.
  • Przestrzeń nazw to kontener zarządzania dla co najmniej jednego centrum zdarzeń lub tematów platformy Kafka. Zadania zarządzania, takie jak przydzielanie pojemności przesyłania strumieniowego, konfigurowanie zabezpieczeń sieci, włączanie odzyskiwania po awarii geograficznej itp., są obsługiwane na poziomie przestrzeni nazw.
  • Temat centrum zdarzeń/platformy Kafka: w usłudze Event Hubs można organizować zdarzenia w centrum zdarzeń lub temat platformy Kafka. Jest to tylko dziennik rozproszony dołączany, który może składać się z co najmniej jednej partycji.
  • Partycje są używane do skalowania centrum zdarzeń. Są jak pasy ruchu na autostradze. Jeśli potrzebujesz większej przepływności przesyłania strumieniowego, musisz dodać więcej partycji.
  • Aplikacje konsumenckie wykorzystują dane, wyszukując dane w dzienniku zdarzeń i utrzymując przesunięcie konsumentów. Konsumenci mogą być klientami konsumenckimi platformy Kafka lub klientami zestawu SDK usługi Event Hubs.
  • Grupa odbiorców to logiczna grupa wystąpień konsumentów, która odczytuje dane z centrum zdarzeń/tematu platformy Kafka. Umożliwia wielu użytkownikom odczytywanie tych samych danych przesyłanych strumieniowo w centrum zdarzeń niezależnie we własnym tempie i z własnymi przesunięciami.

Następne kroki

Aby rozpocząć korzystanie z usługi Event Hubs, zobacz następujące przewodniki Szybki start.

Przesyłanie strumieniowe danych przy użyciu zestawu SDK usługi Event Hubs (AMQP)

Korzystając z dowolnego z poniższych przykładów, możesz przesyłać strumieniowo dane do usługi Event Hubs przy użyciu zestawów SDK.

Przesyłanie strumieniowe danych przy użyciu platformy Apache Kafka

Poniższe przykłady umożliwiają przesyłanie strumieniowe danych z aplikacji platformy Kafka do usługi Event Hubs.

Sprawdzanie poprawności schematu za pomocą rejestru schematów

Rejestru schematów usługi Event Hubs można używać do przeprowadzania weryfikacji schematu dla aplikacji przesyłania strumieniowego zdarzeń.