我在不同的目录下有两个avsc文件-
1. com.company.model.AddressRecord.avsc
2. com.company.model.Customer.avsc这是地址文件
{
"type": "record",
"namespace": "com.company.model",
"name": "AddressRecord",
"fields": [
{
"name": "streetaddress",
"type": "string"
},
{
"name": "city",
"type": "string"
},
{
"name": "state",
"type": "string"
},
{
"name": "zip",
"type": "string"
}
]
}下面是客户文件,它是一个父(顶层)模式
{
"namespace": "com.company.model",
"type": "record",
"name": "Customer",
"fields": [
{
"name": "firstname",
"type": "string"
},
{
"name": "lastname",
"type": "string"
},
{
"name": "email",
"type": "string"
},
{
"name": "phone",
"type": "string"
},
{
"name": "address",
"type": {
"type": "array",
"items": "com.company.model.AddressRecord"
}
}
]
}当两个文件位于同一目录时,我可以使用fastavro加载这些文件
fastavro.schema.load_schema('com.company.model.Customer.avsc')但当两个avsc文件位于不同的目录时,它不起作用。如果两个avsc文件位于不同的目录中,我需要对文件进行哪些更改,以便fast avro可以加载架构
发布于 2020-09-04 06:56:03
documentation for load_schema说它只对同一目录中的文件起作用。目前还不能做你想做的事情。
https://stackoverflow.com/questions/63732097
复制相似问题