Confluent的架构注册表定义了several compatiblity levels,比Avro provides的兼容性检查要丰富。
但是,尽管我了解每个兼容性级别的定义,但我不了解哪种模式序列可以“完全兼容”但不能“完全传递兼容”。
谁能提供符合该标准的一系列模式示例?
答案 0 :(得分:0)
transitive 的作用是它将检查所有以前的版本,而不是仅根据当前版本检查下一个插入的版本。
我不会说这是“更丰富”的说法(架构注册表仍在幕后使用相同的Avro兼容性方法),这是对如果您不重写该隐式传递性的一种改进。两个版本之间的配置。 (如果v2与v1兼容,则v3与v2兼容,那么您将假定v3与v1兼容)
我还没有使用FULL
,但是例如,您想完全破坏该架构。您可能具有默认兼容性BACKWARD
(模式v1),然后设置为NONE
并推送模式(v2),然后再次推送到BACKWARD
。现在,如果您推送一个新的架构(v3),则只会检查v2。
如果您在v3之前设置了传递设置,则v1和v2都将被检查。