You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在AvroConverter注册Schema时指定subject-level兼容性配置

解决方法

你可以通过两种方式实现AvroConverter注册Schema时自动设置subject级兼容性:

  • 方案1:直接配置Kafka Connect AvroConverter参数
    Confluent 6.2.1版本对应的AvroConverter原生支持兼容性级别配置参数,你只需要在Kafka Connect worker配置或者单个Connector的配置中追加以下参数即可:
    针对Key的Converter:
    key.converter.compatibility.level = <你需要的兼容性级别>
    针对Value的Converter:
    value.converter.compatibility.level = <你需要的兼容性级别>
    可选的兼容性级别包括:BACKWARD、BACKWARD_TRANSITIVE、FORWARD、FORWARD_TRANSITIVE、FULL、FULL_TRANSITIVE、NONE,和Schema Registry支持的兼容性取值完全一致。配置后AvroConverter每次自动注册新Schema时,都会自动给对应subject设置你指定的兼容性级别。
  • 方案2:预先为目标subject设置兼容性
    如果你不想调整Kafka Connect配置,也可以提前通过Schema Registry的REST接口为所有需要用到的subject预先配置兼容性级别,执行请求:
    PUT /config/<your-subject-name>
    {
      "compatibility": "<你需要的兼容性级别>"
    }
    
    预先配置完成后,后续AvroConverter自动注册Schema时会直接沿用已有的subject级兼容性配置,不会出现未配置的报错。

注意:如果你的环境有全局兼容性配置,建议subject级的兼容性配置和全局配置保持一致,避免出现Schema注册校验失败的问题。

内容的提问来源于stack exchange,提问作者Mikhail Dubrovin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 06:24:02