Kafka:不同avro文件的生产者和消费者

cczfrluj  于 2021-06-08  发布在  Kafka
关注(0)|答案(0)|浏览(210)

我正在处理2个不同的avro文件:
avroconsumer公司:

{"namespace": "autoGenerated.avro",
  "type": "record",
  "name": "UserConsumer",
  "fields": [
    {"name": "Name", "type": "string"},
    {"name": "Surname", "type":["null","string"],"default": null},
    {"name": "favorite_number",  "type": ["long", "null"]},
    {"name": "favorite_color", "type": ["string", "null"]}
  ]
}

生产商:

{"namespace": "autoGenerated.avro",
  "type": "record",
  "name": "UserProducer",
  "fields": [
    {"name": "name", "type": "string"},
    {"name": "favorite_number",  "type": ["int", "null"]},
    {"name": "favorite_color", "type": ["string", "null"]}
  ]
}

编译过程时发生反序列化错误,但我认为在使用者中定义“default”属性应该可以使其正常工作。
参考文献:http://avro.apache.org/docs/current/spec.html#schema+分辨率
如果读取器的记录架构有一个包含默认值的字段,而writer的架构没有同名的字段,那么读取器应该使用其字段中的默认值。
你有什么想法吗?我可以定义不同于生产者avro文件的消费者avro文件吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题