首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何找出使用的avro版本?

如何找出使用的avro版本?
EN

Stack Overflow用户
提问于 2021-05-11 11:36:51
回答 1查看 356关注 0票数 0

我有不受我控制的汇合注册表,以及基于@kafkajs/confluent-schema-registry的生产者。有什么方法可以让我理解使用的是哪个版本的消息格式?

我可以得到编码的AVRO消息,但它只是字节流。有任何方法来理解它实际上是哪种版本的消息吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-11 11:44:08

我看你正在用汇合式谁有自己的版本的电线格式。

嵌入在前导字节中的架构ID可以用于从它们的模式注册表中获取模式:

https://docs.confluent.io/platform/current/schema-registry/serdes-develop/index.html#wire-format

我不知道如何操作Javascript中的字节,但是我们在Scala中做了什么:

  1. 删除第一个字节
  2. 读取接下来的4个字节,将其转换为整数
  3. 剩余的字节可以用从schema获取的架构反序列化。

/Side注意:真正烦人的是这是一种特定于供应商的格式,尽管Apache表示包含模式信息的单目标编码

此外,它似乎还似乎对支持Apache格式不感兴趣。https://github.com/confluentinc/schema-registry/issues/1294

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67485959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档