可以尝试使用Avro中的fixed类型代替byte类型,同时在schema中指定逻辑类型。例如,将以下schema:
{"name": "byteField", "type": "bytes", "logicalType": "decimal", "precision": 8, "scale": 3}
改为:
{"name": "byteField", "type": {"type": "fixed", "name": "byteField", "size": 1}, "logicalType": "decimal", "precision": 8, "scale": 3}
这样就可以解决Avro模式解析器忽略byte类型的逻辑类型的问题。
上一篇:Avro模式和数组