Rejestr schematów w usłudze Azure Event Hubs

Rejestr schematów w usłudze Azure Event Hubs udostępnia repozytorium do używania schematów i zarządzania nimi w scenariuszach przesyłania strumieniowego zdarzeń opartych na schemacie.

Składniki rejestru schematów

Przestrzeń nazw usługi Event Hubs może hostować grupy schematów obok centrów zdarzeń (lub tematów platformy Kafka). Hostuje rejestr schematów i może mieć wiele grup schematów. Pomimo hostowania w usłudze Azure Event Hubs rejestr schematów może być używany powszechnie ze wszystkimi usługami obsługi komunikatów platformy Azure i dowolnym innym brokerem komunikatów lub zdarzeń. Każda z tych grup schematów jest oddzielnie zabezpieczanym repozytorium dla zestawu schematów. Grupy można dopasować do określonej aplikacji lub jednostki organizacyjnej.

Diagram that shows the components of Schema Registry in Azure Event Hubs.

Grupy schematów

Grupa schematów jest logiczną grupą podobnych schematów na podstawie kryteriów biznesowych. Grupa schematów może przechowywać wiele wersji schematu. Ustawienie wymuszania zgodności w grupie schematów może pomóc w zapewnieniu, że nowsze wersje schematów są zgodne z poprzednimi wersjami.

Granica zabezpieczeń nałożona przez mechanizm grupowania pomaga zagwarantować, że tajemnice handlowe nie będą przypadkowo wyciekać przez metadane w sytuacjach, w których przestrzeń nazw jest współdzielona przez wielu partnerów. Umożliwia również właścicielom aplikacji zarządzanie schematami niezależnie od innych aplikacji, które współużytkuje tę samą przestrzeń nazw.

Schematy

Schematy definiują umowę między producentami a konsumentami. Schemat zdefiniowany w rejestrze schematów usługi Event Hubs pomaga zarządzać kontraktem poza danymi zdarzeń, co powoduje usunięcie obciążenia. Schemat ma nazwę, typ (na przykład: rekord, tablica itd.), tryb zgodności (brak, do przodu, do tyłu, pełny) i typ serializacji (tylko Avro na razie). Można utworzyć wiele wersji schematu i pobrać i użyć określonej wersji schematu.

Formaty schematu

Formaty schematu służą do określania sposobu, w jaki schemat jest ustrukturyzowany i zdefiniowany, przy czym każdy format określa określone wytyczne i składnię służącą do definiowania struktury zdarzeń, które będą używane do przesyłania strumieniowego zdarzeń.

Schemat Avro

Avro to popularny system serializacji danych, który korzysta z kompaktowego formatu binarnego i zapewnia możliwości ewolucji schematu.

Aby dowiedzieć się więcej na temat korzystania z formatu schematu Avro w rejestrze schematów usługi Event Hubs, zobacz:

Schemat JSON (wersja zapoznawcza)

Schemat JSON to ustandaryzowany sposób definiowania struktury i typów danych zdarzeń. Schemat JSON umożliwia niezawodne i niezawodne użycie formatu danych JSON w strumieniu zdarzeń.

Aby dowiedzieć się więcej na temat używania formatu schematu JSON z rejestrem schematów usługi Event Hubs, zobacz:

Ewolucja schematu

Schematy muszą ewoluować wraz z wymaganiami biznesowymi producentów i konsumentów. Usługa Azure Schema Registry obsługuje ewolucję schematu, wprowadzając tryby zgodności na poziomie grupy schematów. Podczas tworzenia grupy schematów można określić tryb zgodności schematów uwzględninych w tej grupie schematów. Po zaktualizowaniu schematu zmiana powinna być zgodna z przypisanym trybem zgodności, a następnie tworzy tylko nową wersję schematu.

Uwaga

Ewolucja schematu jest obsługiwana tylko w przypadku formatu schematu Avro.

Usługa Azure Schema Registry dla usługi Event Hubs obsługuje następujące tryby zgodności.

Zgodność ze starszymi wersjami

Tryb zgodności z poprzednimi wersjami umożliwia użytkownikowi używanie nowej wersji schematu, ale może przetwarzać komunikaty ze starą wersją schematu. W przypadku korzystania z trybu zgodności z poprzednimi wersjami w grupie schematów umożliwia wprowadzenie następujących zmian w schemacie.

  • Usuwanie pól.
  • Dodaj pola opcjonalne.

Zgodność z przekazywaniem

Zgodność z przekazywaniem umożliwia kodowi odbiorcy używanie starej wersji schematu, ale może odczytywać komunikaty przy użyciu nowego schematu. Tryb zgodności do przodu umożliwia wprowadzanie zmian w schemacie.

  • Dodaj pola
  • Usuwanie pól opcjonalnych

Brak zgodności

None Gdy jest używany tryb zgodności, rejestr schematów nie wykonuje żadnych testów zgodności podczas aktualizowania schematów.

Zestawy SDK klienta

Można użyć jednej z następujących bibliotek, aby dołączyć serializator Avro, którego można użyć do serializacji i deserializacji ładunków zawierających identyfikatory schematu rejestru schematów schematu i dane zakodowane w avro.

Limity

Aby uzyskać informacje o limitach (na przykład: liczbie grup schematów w przestrzeni nazw) usługi Event Hubs, zobacz Event Hubs quotas and limits (Limity i limity usługi Event Hubs).

Kontrola dostępu na podstawie ról na platformie Azure

Aby programowo uzyskać dostęp do rejestru schematów, wykonaj następujące kroki:

  1. Rejestrowanie aplikacji w identyfikatorze Entra firmy Microsoft
  2. Dodaj podmiot zabezpieczeń aplikacji do jednej z następujących ról kontroli dostępu na podstawie ról (RBAC) platformy Azure na poziomie przestrzeni nazw .
Rola Opis
Właściciel Odczytywanie, zapisywanie i usuwanie grup i schematów rejestru schematów.
Współautor Odczytywanie, zapisywanie i usuwanie grup i schematów rejestru schematów.
Czytelnik rejestru schematów Odczytywanie i wyświetlanie listy grup rejestru schematów i schematów.
Współautor rejestru schematów Odczytywanie, zapisywanie i usuwanie grup i schematów rejestru schematów.

Aby uzyskać instrukcje dotyczące tworzenia rejestracji aplikacji przy użyciu witryny Azure Portal, zobacz Rejestrowanie aplikacji przy użyciu identyfikatora Entra firmy Microsoft. Zanotuj identyfikator klienta (identyfikator aplikacji), identyfikator dzierżawy i wpis tajny do użycia w kodzie.

Następne kroki