【发布时间】:2018-10-11 00:00:24
【问题描述】:
这个问题/答案 (How to nest records in an Avro schema?) 阐明了如何嵌套复杂类型(在这种情况下为记录)。但是,我想知道是否有人知道如何为记录类型设置默认值。在上面问题中显示的示例中,我收到错误,地址丢失,我希望 avro 将其默认为空字典或至少为空字符串 - 而不是我必须将其默认为前进。
【问题讨论】:
标签: avro
这个问题/答案 (How to nest records in an Avro schema?) 阐明了如何嵌套复杂类型(在这种情况下为记录)。但是,我想知道是否有人知道如何为记录类型设置默认值。在上面问题中显示的示例中,我收到错误,地址丢失,我希望 avro 将其默认为空字典或至少为空字符串 - 而不是我必须将其默认为前进。
【问题讨论】:
标签: avro
您只能将空值作为 AVRO 中嵌套对象的默认值。这就是默认 null 值的架构的样子
{
"name": "person",
"type": "record",
"fields": [
{"name": "firstname", "type": "string"},
{"name": "lastname", "type": "string"},
{
"name": "address",
"type": ["null" , {
"type" : "record",
"name" : "AddressUSRecord",
"fields" : [
{"name": "streetaddress", "type": "string"},
{"name": "city", "type": "string"}
]
}],
"default": null
}
]
}
【讨论】: