Поделиться через


Центры событий Azure: платформа потоковой передачи данных в режиме реального времени с собственной поддержкой Apache Kafka

Центры событий Azure — это собственная служба потоковой передачи данных в облаке, которая может передавать миллионы событий в секунду с низкой задержкой из любого источника в любое место назначения. Центры событий совместимы с Apache Kafka. Он позволяет запускать существующие рабочие нагрузки Kafka без каких-либо изменений кода.

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

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

Центры событий — это предпочтительный уровень приема событий любого решения потоковой передачи событий, построенного на основе Azure. Он интегрируется с службами данных и аналитики внутри и за пределами Azure для создания полного конвейера потоковой передачи данных для обслуживания следующих вариантов использования:

Основные возможности

Узнайте о ключевых возможностях Центры событий Azure в следующих разделах.

Apache Kafka на Центры событий Azure

Центры событий — это подсистема потоковой передачи событий с несколькими протоколами, которая изначально поддерживает расширенный протокол очереди сообщений (AMQP), Apache Kafka и протоколы HTTPS. Так как он поддерживает Apache Kafka, вы можете перенести рабочие нагрузки Kafka в Центры событий без внесения изменений в код. Вам не нужно настраивать, настраивать или управлять собственными кластерами Kafka или использовать предложение Kafka как услуга, которое не является собственным для Azure.

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

Дополнительные сведения см. в Центры событий Azure для Apache Kafka.

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

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

Схема, на которую показана интеграция реестра схем и Центров событий.

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

Реестр схем интегрируется с существующими приложениями Kafka и поддерживает несколько форматов схем, включая схемы Avro и JSON.

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

Обработка событий потоковой передачи в режиме реального времени с помощью Stream Analytics

Центры событий интегрируются с Azure Stream Analytics, чтобы включить потоковую обработку в режиме реального времени. С помощью встроенного редактора без кода можно разрабатывать задание Stream Analytics с помощью функции перетаскивания без написания кода.

Снимок экрана: страница

Кроме того, разработчики могут использовать язык запросов Stream Analytics на основе SQL, чтобы выполнять обработку потоков в режиме реального времени и использовать широкий спектр функций для анализа потоковых данных.

Дополнительные сведения см. в статьях в разделе интеграции Azure Stream Analytics с оглавлением.

Изучение потоковых данных с помощью Azure Data Explorer

Azure Data Explorer — это полностью управляемая платформа для аналитики больших данных, которая обеспечивает высокую производительность и позволяет анализировать большие объемы данных практически в реальном времени. Интеграция Центров событий с Azure Data Explorer позволяет выполнять практически аналитику в режиме реального времени и просматривать потоковые данные.

Схема, на которую показаны запросы и выходные данные Azure Data Explorer.

Дополнительные сведения см. в разделе приема данных из концентратора событий в Azure Data Explorer.

Функции Azure, пакеты SDK и экосистема Kafka

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

Широкая экосистема доступна для стандартного протокола AMQP 1.0. Пакеты SDK доступны на таких языках, как .NET, Java, Python и JavaScript, чтобы начать обработку потоков из Центров событий. Все поддерживаемые языки клиентов реализуют низкоуровневую интеграцию.

Экосистема также позволяет интегрироваться с Функции Azure, Azure Spring Apps, Соединителями Kafka и другими платформами и технологиями аналитики данных, такими как Apache Spark и Apache Flink.

Поддержка локальной разработки с помощью эмулятора Центров событий

Центры событий Azure эмулятор предлагает локальный интерфейс разработки для Центров событий. Эмулятор можно использовать для разработки и тестирования кода для службы в изоляции без вмешательства в облако. Дополнительные сведения см. в эмуляторе Центров событий

Гибкая и эффективная потоковая передача событий

Вы можете выполнять гибкую и эффективную потоковую передачу событий через уровни "Стандартный", "Премиум" или "Выделенный" для Центров событий. Эти параметры требуют потоковой передачи данных в диапазоне от нескольких МБ/с до нескольких ГБ/с. Вы можете выбрать соответствие, соответствующее вашим требованиям.

Масштабируемость

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

Поддерживает потоковую передачу больших сообщений

В большинстве сценариев потоковой передачи данные характеризуются упрощенным, как правило, менее 1 МБ и высокой пропускной способностью. Существуют также экземпляры, в которых сообщения не могут быть разделены на небольшие сегменты. Центры событий могут размещать события до 20 МБ с масштабируемыми выделенными кластерами без дополнительной платы. Эта возможность позволяет центрам событий обрабатывать широкий диапазон размеров сообщений, чтобы обеспечить непрерывные бизнес-операции. Дополнительные сведения см. в статье "Отправка и получение больших сообщений с помощью Центры событий Azure".

Сбор потоковых данных для долгосрочного хранения и пакетной аналитики

Захватить данные практически в режиме реального времени в Хранилище BLOB-объектов Azure или Azure Data Lake Storage для долгосрочного хранения или микропакетной обработки. Это поведение можно достичь в том же потоке, который используется для анализа в режиме реального времени. Настройка сбора данных события выполняется быстро.

Схема, показывая запись данных Центров событий в служба хранилища Azure или Azure Data Lake Storage с помощью управляемого удостоверения.

Принцип работы

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

На следующей схеме показаны основные компоненты архитектуры Центров событий.

Схема с основными компонентами Центров событий.

К ключевым функциональным компонентам Центров событий относятся:

  • Приложения-производители: эти приложения могут получать данные в концентратор событий с помощью пакетов SDK для Центров событий или любого клиента производителя Kafka.
  • Пространство имен: контейнер управления для одного или нескольких центров событий или разделов Kafka. Задачи управления, такие как выделение емкости потоковой передачи, настройка сетевой безопасности и включение геокатастерного восстановления, обрабатываются на уровне пространства имен.
  • Разделы "Центры событий"/Kafka: в Центрах событий можно упорядочить события в концентратор событий или раздел Kafka. Это распределенный журнал только для добавления, который может содержать одну или несколько секций.
  • Секции: они используются для масштабирования концентратора событий. Они похожи на полосы в автостраде. Если требуется дополнительная пропускная способность потоковой передачи, можно добавить дополнительные секции.
  • Приложения-потребители: эти приложения могут использовать данные, запрашивая журнал событий и сохраняя смещение потребителей. Потребители могут быть клиентами потребителей Kafka или клиентами пакета SDK Центров событий.
  • Группа потребителей: эта логическая группа экземпляров потребителей считывает данные из концентратора событий или раздела Kafka. Это позволяет нескольким потребителям считывать одни и те же потоковые данные в концентраторе событий независимо по своему темпу и с собственными смещениями.

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

Потоковая передача данных с помощью пакета SDK центров событий (AMQP)

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

Потоковая передача данных с помощью Apache Kafka

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

Проверка схемы с помощью реестра схем

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