我面临的问题是在Map缩小avro文件,其中既有字符串和数组值。
`Describe hdfs:/test/test.avro
number STRING
totalProductFee STRING
productID STRING
otherPartyId STRING
module STRING
client STRING
Event_DA ARRAY
Event_DA.recType STRING
Event_DA.AccountID STRING
Event_DA.Identifier STRING
Event_DA.ValueBefore STRING
Event_DA.ValueAfter STRING
Event_DA.Change STRING
Event_DA.ExpiryDate STRING
但是,当我尝试运行作业以获取记录值的数组[event_da]时,会出现以下异常:
org.apache.avro.avrotypeexception:在org.apache.avro.io.resolvingdecoder.doaction(resolvingdecoder)找到事件\ da,应为事件\ da。java:231)
在组合字符串类型和记录数组时,问题似乎出在输入模式文件上。
请为您提供这些类型的avro文件的示例模式文件的宝贵建议。
1条答案
按热度按时间wz1wpwve1#
根据您的模式定义,event\ uda将是“record”类型,而不是“array”类型。您的avro架构如下所示: