我在不同的目录中有两个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可以加载模式
{a1}表示它只适用于同一目录中的文件。目前不可能做你想做的事
相关问题 更多 >
编程相关推荐