Реестр схем в Центры событий Azure

Реестр схем в Центры событий Azure предоставляет репозиторий для использования схем и управления ими в сценариях потоковой передачи событий на основе схемы.

Компоненты реестра схем

Пространство имен Центров событий может размещать группы схем вместе с центрами событий (или разделами Kafka). Он содержит реестр схем и может включать несколько групп схем. Помимо размещения в Центрах событий Azure реестр схем можно использовать глобально со всеми службами обмена сообщениями Azure и любым другим посредником для сообщений или событий. Каждая из этих групп схем является отдельно защищаемым репозиторием для набора схем. Группы можно согласовать с определенным приложением или подразделением.

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

Группы схем

Группа схем — это логическая группа похожих схем в соответствии с вашими бизнес-критериями. Группа схем может содержать несколько версий схемы. Параметр принудительного обеспечения совместимости в группе схем позволяет гарантировать обратную совместимость более новых версий схемы.

Граница безопасности, устанавливаемая механизмом группирования, помогает избежать непреднамеренной утечки коммерческих тайн посредством метаданных в ситуациях, когда пространство имен совместно используется несколькими участниками. Она также позволяет владельцам приложений управлять схемами независимо от других приложений, использующих то же пространство имен.

Схемы

Схемы определяют контракт между производителями и потребителями. Схема, определенная в реестре схем Центров событий, помогает управлять контрактом за пределами данных событий, избавляя от служебных данных в полезных данных. Схема имеет имя, тип (например, запись, массив и т. д.), режим совместимости (нет, прямая, обратная, полная) и тип сериализации (сейчас только в Avro). Можно создать несколько версий схемы, а затем получить и использовать определенную из них.

Форматы схемы

Форматы схем используются для определения способа структурирования и определения схемы с каждым форматом, определяющим конкретные рекомендации и синтаксис для определения структуры событий, которые будут использоваться для потоковой передачи событий.

Схема Avro

Avro — это популярная система сериализации данных, которая использует компактный двоичный формат и предоставляет возможности эволюции схемы.

Дополнительные сведения об использовании формата схемы Avro с реестром схем Центров событий см. в следующей статье:

Схема JSON (предварительная версия)

Схема JSON — это стандартизированный способ определения структуры и типов данных событий. Схема JSON обеспечивает уверенное и надежное использование формата данных JSON в потоковой передаче событий.

Дополнительные сведения об использовании формата схемы JSON с реестром схем Центров событий см. в следующей статье:

Развитие схемы

Схемы развиваются с учетом бизнес-требований производителей и получателей. Реестр схем Azure поддерживает возможность эволюции схем с помощью режимов совместимости на уровне групп схем. При создании группы схем можно указать режим совместимости включенных в нее схем. Любое изменение схемы должно соответствовать назначенному ей режиму совместимости; в случае такого соответствия создается новая версия схемы.

Примечание.

Эволюция схемы поддерживается только для формата схемы Avro.

Реестр схем Azure для Центров событий поддерживает перечисленные ниже режимы совместимости.

обратная совместимость

Режим обратной совместимости позволяет коду получателя использовать новую версию схемы, но в этом режиме также могут обрабатываться сообщения со старой версией схемы. В режиме обратной совместимости группы схем в схему из этой группы можно вносить указанные ниже изменения.

  • Удаление полей.
  • Добавлять необязательные поля

Прямая совместимость

В режиме прямой совместимости код получателя может использовать старую версию схемы, но также может считывать сообщения с использованием новой схемы. В режиме прямой совместимости в схему можно вносить указанные ниже изменения.

  • Добавьте поля
  • Удалять необязательные поля

Без совместимости

Если выбран режим совместимости None, реестр схем не проверяет совместимость при обновлении схем.

Клиентские пакеты SDK

Вы можете использовать одну из следующих библиотек, чтобы включить сериализатор Avro. Этот сериализатор можно применять для сериализации и десериализации полезных данных, содержащих идентификаторы схем в Реестре схем и данные в формате Avro.

Ограничения

Ограничения (например, количество групп схем в пространстве имен) центров событий см. в разделе "Квоты центров событий" и ограничения.

Управление доступом на основе ролей Azure

Чтобы получить доступ к реестру схем программным способом, выполните следующие действия.

  1. Регистрация приложения в идентификаторе Microsoft Entra
  2. Добавьте субъект безопасности приложения в одну из следующих ролей Управления доступом на основе ролей Azure (Azure RBAC) на уровне пространства имен.
Роль Описание
Ответственное лицо Чтение, запись и удаление групп и схем реестра схем.
Участник Чтение, запись и удаление групп и схем реестра схем.
Читатель реестра схем Чтение и перечисление групп и схем в реестре схем.
Участник реестра схем Чтение, запись и удаление групп и схем реестра схем.

Инструкции по созданию приложения с помощью портал Azure см. в разделе "Регистрация приложения с помощью идентификатора Microsoft Entra". Запишите идентификатор клиента (идентификатор приложения), идентификатор арендатора и секрет для использования их в коде.

Следующие шаги