什么是计算 Avro 模式哈希的好方法?
What will be a good way to compute a hash of an Avro schema?
考虑为开发、测试和生产等每个阶段设置单独的架构注册表。
那么相同的架构将在每个注册表中具有不同的全球唯一架构标识符。
我们的想法是在所有阶段(模式是registered/evolved)拥有模式的稳定不变标识符——模式内容的计算散列。
计算这种哈希值的好方法是什么?选择特定的哈希算法在这里不是问题——模式转换可能是问题:是否应该删除文档字符串等?
Avro 规范实际上在有关解析规范形式的部分中讨论了这一点:https://avro.apache.org/docs/current/spec.html#Parsing+Canonical+Form+for+Schemas
该表格确实表示应该删除像 doc
这样的字段,并指定属性的顺序和其他内容以使所有模式保持一致。
考虑为开发、测试和生产等每个阶段设置单独的架构注册表。
那么相同的架构将在每个注册表中具有不同的全球唯一架构标识符。
我们的想法是在所有阶段(模式是registered/evolved)拥有模式的稳定不变标识符——模式内容的计算散列。
计算这种哈希值的好方法是什么?选择特定的哈希算法在这里不是问题——模式转换可能是问题:是否应该删除文档字符串等?
Avro 规范实际上在有关解析规范形式的部分中讨论了这一点:https://avro.apache.org/docs/current/spec.html#Parsing+Canonical+Form+for+Schemas
该表格确实表示应该删除像 doc
这样的字段,并指定属性的顺序和其他内容以使所有模式保持一致。