Kafka 模式演化
Kafka schema evolution
当我们更改模式的命名空间并演化它时,模式是否向后兼容? Landoop UI 说它向后兼容,当我们将命名空间更改为一个新的但在 Avro 的 rules
中找不到它时
例如:
旧模式
"namespace":"com.xxx.yyy.zzz.a"
进化模式
"namespace":"com.abc.xxx.yyy.zzz.a"
"Namespace"类似于"doc",是一个可选的字符串,用来限定名称;
因此,根据规范,我推测它的用法主要是 decorative/descriptive,并且随着描述字段(即 'doc' 字段)的变化,演变规则是可以的。
它确实会影响某些事情,即如果您使用模式生成 类,命名空间将受到影响,但对于旧的或未来的消费者而言,它不应该真正影响他们。以上不准确请指正
当我们更改模式的命名空间并演化它时,模式是否向后兼容? Landoop UI 说它向后兼容,当我们将命名空间更改为一个新的但在 Avro 的 rules
中找不到它时例如: 旧模式 "namespace":"com.xxx.yyy.zzz.a" 进化模式 "namespace":"com.abc.xxx.yyy.zzz.a"
"Namespace"类似于"doc",是一个可选的字符串,用来限定名称;
因此,根据规范,我推测它的用法主要是 decorative/descriptive,并且随着描述字段(即 'doc' 字段)的变化,演变规则是可以的。
它确实会影响某些事情,即如果您使用模式生成 类,命名空间将受到影响,但对于旧的或未来的消费者而言,它不应该真正影响他们。以上不准确请指正