JSON有效载荷:
{
"BILLING_EVENT_RULE_MET_DT": "lsks",
"PlanType":"hhh"
}
AVRO模式:
{
"name": "Subscription",
"type":"record",
"doc": "Subscription details",
"fields":
[
{ "name": "BILLING_EVENT_RULE_MET_DT", "type":[ "null","string"],"default": null },
{"name": "PlanType",
"type":
{
"name":"PlanType",
"type": "fixed",
"size": 4
}
}
]
}
ERROR:
The value [hhh] for field [PlanType] should be [FixedType <size: 4, name: PlanType, namespace: None, aliases: None>].
在验证它给我以下错误时,我应该在JSON有效负载中为PlanType字段写什么? 实际上,这是我要探索的所有事情,因为我想为类似于XML模式的AVRO模式中的字段定义maxlength和minlength。
答案 0 :(得分:0)
如果“ PlanType”的字段大小不是常数,则不能使用“固定”类型。
如果数据是字符串,则可以使用“字符串”类型;如果数据类型是任何字节序列,则可以使用“字节”类型。
请注意,使用“字符串”或“字节”意味着它不能没有字符/零字节。
要启用空值,应使用并集类型(即'null'和'string'的并集或'null'和'bytes'的并集)。
没有办法将最小大小或最大大小作为avro模式的一部分。参见avro specification。