Azure Event Hubs Schema Registry 中 JSON 架构支持在 Kafka 应用中的公开预览

Azure Event Hubs 新增 JSON Schema 支持

Microsoft 最近宣布,Azure Event Hubs 的 Schema Registry 新增了对 JSON Schema 的支持,目前处于公共预览阶段。这一功能为 Kafka 应用程序提供了一个集中的模式文档存储库,适用于以消息传递和事件驱动为核心的应用场景。

Azure Event Hubs 概述

Azure Event Hubs 是一个基于云的服务,能够从多种来源摄取、存储和处理大规模事件流,用于实时分析和数据集成。其 Schema Registry 功能为用户提供了一个存储库,用于在模式驱动的事件流场景中使用和管理模式。通过使用 Azure Schema Registry,生产者和消费者应用程序可以无缝交换数据,而无需手动处理和分发模式。

JSON Schema 支持的意义

Microsoft 进一步扩展了 Azure Schema Registry 的功能,增加了对 JSON Schema 的支持,以支持模式驱动的事件流。Azure Messaging 的高级产品经理 Kasun Indrasiri 在 Tech Community 博客文章中解释了为 Event Hubs Schema Registry 引入 JSON 支持的原因:

  • JSON Schema 用于定义和验证 JSON 数据的结构,确保数据的一致性、完整性和准确性。
  • 通过将 JSON Schema 验证集成到事件流应用程序中,开发者可以确保生产或消费的数据符合预定义的模式,从而避免字段缺失、数据类型错误和数据格式不一致等问题。

客户端模式验证用例

在客户端模式验证用例中,开发者可以使用 Azure Event Hubs Schema Registry 进行客户端应用程序事件的序列化和反序列化。对于 Kafka 应用程序,Kafka 生产者应用程序利用存储在 Azure Schema Registry 中的 JSON Schema 对事件进行序列化,然后将事件发布到 Azure Event Hubs 中的 Kafka 主题/事件中心。同时,Kafka 消费者使用事件的模式 ID 从 Azure Schema Registry 中检索 JSON Schema,以反序列化从 Event Hubs 消费的事件。

使用 JSON Schema 的步骤

开发者可以在 Azure Event Hubs Schema Registry 中创建一个新模式组,并使用 JSON Schema 作为模式格式。随后,他们可以在该模式组下创建用于模式验证的 JSON Schema。

其他云服务的模式管理

类似 Azure Event Hubs Schema Registry,Apache Kafka 有一个名为 Confluent Schema Registry 的模式注册表,允许用户定义和管理事件模式,确保数据兼容性和一致性。Amazon Managed Streaming for Apache Kafka (Amazon MSK) 是一个完全托管的服务,允许使用第三方工具(如 Confluent Schema Registry 或 AWS Glue Schema Registry)来管理模式。Google Cloud Pub/Sub 消息服务也提供了使用 Google Cloud Schema Registry 的模式管理功能。

JSON Schema 支持的优势

Microsoft 的 Azure SDKs 工程师 Jesse Squire 指出了 Azure Event Hubs Schema Registry 支持 JSON Schema 的一些优势:

  • 增强了 Event Hubs 与 Kafka 的互操作性,特别是在跨产品生产和消费场景中。
  • 提供了跨不同模式格式的一致开发者体验,减少了支持成本和特殊案例文档的需求。

更多信息

有关 Azure Event Hubs 的更多详细信息,请访问其文档页面。此外,定价和可用性信息可在定价页面找到。

阅读 23
0 条评论