Hive 拼花地板:空,还是零长度数组?

Hive 拼花地板:空,还是零长度数组?,hive,avro,parquet,Hive,Avro,Parquet,我正在Avro中设计一个模式,它最终将成为Hive查询拼花地板文件的模式 有几个实例中,我将嵌套列作为类型数组,父记录可能有零个或多个。举一个更具体的例子,假设我有一个Person记录,其中有一个Children字段。一个人可以有零个或多个孩子 关于子字段应该是一个可以包含零项的数组,还是应该定义为[null,array]的并集,是否有任何有说服力的论据 也就是说,如果子元素为零,我应该使用NULL还是应该使用零长度数组 在我学习曲线的早期,这似乎是一个哲学上的选择。但我不知道我不知道的是什么,

我正在Avro中设计一个模式,它最终将成为Hive查询拼花地板文件的模式

有几个实例中,我将嵌套列作为类型数组,父记录可能有零个或多个。举一个更具体的例子,假设我有一个Person记录,其中有一个Children字段。一个人可以有零个或多个孩子

关于子字段应该是一个可以包含零项的数组,还是应该定义为[null,array]的并集,是否有任何有说服力的论据

也就是说,如果子元素为零,我应该使用NULL还是应该使用零长度数组

在我学习曲线的早期,这似乎是一个哲学上的选择。但我不知道我不知道的是什么,因此我希望社区能够分享他们基于我没有的经验的见解:这应该是一个可为null的列,还是一个可以包含零元素的数组