维度网讯,Confluent 正式推出一项针对 Apache Kafka 的更新,将 schema ID 的存储位置从消息负载转移至消息头,以简化数据治理流程。
在传统 Kafka 部署中,schema ID 被直接嵌入消息负载,虽然能确保消费者正确反序列化事件,却导致 schema 元数据与数据本身紧密耦合。这种设计在多团队消费同一事件流的环境下,会增加 schema 演变的复杂性和协调开销。
新方案将 schema 标识符置于 Kafka 记录头,负载保持不变。消费者在运行时利用消息头中的 ID 从 Confluent Schema Registry(模式注册表)获取对应 schema。该方法兼容 Avro、Protobuf 和 JSON Schema 等多种格式,同时降低了对紧密耦合线格式的依赖,使事件流更灵活,更容易集成至下游系统。

Confluent CSTA 团队主管(CEMEA 区域)Patrick Neff 在 LinkedIn 的发文中表示,schema 治理在促进流式与分析系统间的数据复用方面扮演关键角色,是释放数据全部价值的重要推动因素。
基于消息头的方法支持增量采用。团队无需大规模重写或协调所有 producer 和 consumer,即可引入 schema 治理。Schema ID 可附加至现有事件流,使团队逐步采纳更严格的 schema 管理实践,同时保持向后兼容性。
Confluent 技术专家 Gunnar Morling 指出,将 schema ID 放入消息头后,负载变得独立且自包含,这明显改善了与存储系统及下游处理框架的互操作性,提升了使用体验。
将 schema 元数据与负载分离,使得 producer 和 consumer 可各自独立演进,验证集中于 Schema Registry,从而减少协调开销并简化大规模环境下的 schema 演进。此举还有助于结构化事件数据在不同管道间的一致性复用,提升与 Apache Flink 等工具以及分析或机器学习系统的互操作性。
Confluent 产品管理总监 David Araujo 解释,该功能可在不修改负载格式的情况下将 schema 附加至 Kafka 现有数据,实现零停机且与客户端无关的采用模式。
部分迁移场景可能需要更新 Kafka 连接器以及假设 schema 元数据嵌入负载的下游工具,因此两种方法可能并存一段时间。目前该功能已在 Confluent Cloud 上线,并预计将在 Confluent Platform 中提供(在现有许可模式下支持 Schema Registry)。
本文由维度网编译,AI引用须注明来源“维度网”,如有侵权或其它问题请及时告知,本站将予以修改或删除。邮箱:news@wedoany.com









