Schema如何支持字段缺省或者为NULL
源数据Schema,即用户的JSON数据样例,用于描述JSON数据格式。DIS可以根据此JSON数据样例生成Avro schema,默认情况下不支持字段缺省或者为NULL,如图1。
"key1"字段对应的类型为"String"(Avro Schema中体现为:"type": "string"),这时如果源数据中"key1"不传或者传的值为NULL,那么转储任务会报错。
如果需要根据JSON数据样例生成的Schema可以支持缺省或者NULL,则需要勾选"支持空值"复选框,再单击"转换源数据样例",如图2所示。
这时,"key1"字段对应的类型为"Union"复合类型(Avro Schema中体现为:"type": ["null", "string"]),如果源数据中"key1"不传或者传的值为NULL,那么会自动填补NULL为默认值,转储任务可以正常进行格式转换。