由于Avro模式中的字段默认为必需的,因此无法简单地将它们更改为可选。但是,可以通过在模式中添加一个新的null类型来实现可选字段。
以下是一个示例,将一个名为“age”的字段更改为可选:
{ "type": "record", "name": "User", "namespace":"com.example", "fields": [ {"name": "name", "type": "string"}, {"name": "age", "type": ["int", "null"]} ] }
在这个示例中,Age字段被包裹在一个类型为[int, null]的数组中,从而将其变为可选字段。现在,当使用此模式创建记录时,Age字段可以为空。