当前位置: 首页 > 知识库问答 >
问题:

Avro架构定义中的警告

关项明
2023-03-14

我得到了一个定义字段的警告:

Ignored the logicalType property ("timestamp-millis"). It should probably be nested inside the "type" for the field.

{"name": "leaving", "type": ["null" ,"long"], "logicalType": "timestamp-millis", "default": null, "doc": "leaving timestamp"}

我试图将其更改为:

{"name": "leaving", "type": {"type": ["null" ,{"type": "long", "logicalType": "timestamp-millis"}]}, "doc": "leaving timestamp"}

现在它根本不起作用,因为模式无效。

错误:

InvocationTargetException: No type: {"type":["null",{"type":"long","logicalType":"timestamp-millis"}]} 

知道怎么解决吗?

共有1个答案

王弘和
2023-03-14

您有重复的类型。应该是这样的

{
  "name": "leaving",
  "type": ["null" , {"type": "long", "logicalType": "timestamp-millis"}],
  "doc": "leaving timestamp"
}
 类似资料:
  • 使用NiFi 1.7.1(使用Java Avro 1.8.1)和AvroSchemaRegistry,我试图定义一个模式,其中包含和位于顶层。根据Avro文档[1],我假设我可以像普通的一样定义全名,但我在:app中遇到了错误。确实,全名的名称部分不允许点,但根据文档:“如果指定的名称包含点,则假定它是全名…” 然后我尝试使用命名空间字段。使用以下模式: 我遇到了以下错误: 最终,我希望能够定义这

  • 我正在试图找出为什么我不能在<code>的“消息”: 当我试图解析模式时,我得到了以下错误: 线程“main” org.apache.avro.SchemaParseException中的异常:未定义的名称:“media_type”at org.apache.avro.Schema.parse(Schema.java:1162) at org.apache.avro.Schema.parse(Sc

  • 这实际上与我之前的问题相同,但使用Avro而不是JSON作为数据格式。 我正在使用一个Spark数据框架,它可以从几个不同的模式版本之一加载数据: 我正在使用Spark Avro加载数据。 它可能是版本一文件或版本二文件。但是我希望能够以相同的方式处理它,将未知值设置为“null”。我之前的问题中的建议是设置模式,但是我不想重复自己在文件中编写模式,也不想重复自己在和朋友中编写模式。如何将avro

  • 我有以下对象: Bu 有时我只是我正在尝试为此提出一个架构。但它似乎:(不起作用。 我尝试了以下两种: 但它失败了,线程“main”org.apache.avro中出现<code>异常。SchemaParseException:无类型: 我也尝试了同样的错误: 我真的不明白问题出在哪里,两者有什么区别。

  • 我想用这个avro shcema 要使用avro工具生成和编辑avro文件: 但我收到了以下错误信息: 线程“main”组织中出现异常。阿帕奇。阿夫罗。SchemaParseException:“记录”不是定义的名称。“customerContacts”字段的类型必须是已定义的名称或{“类型”:表示 有人能告诉我为什么记录没有被定义为一个名字吗?

  • 嘿,我想将ConFluent模式注册表与Avro Serializers一起使用:留档现在基本上是说:不要为多个不同的主题使用相同的模式 谁能解释一下原因吗?我重新搜索了源代码,它基本上将模式存储在Kafka主题中,如下所示(topicname,magicbytes,version- 因此,除了冗余之外,我看不到多次使用模式的问题?