我在Avro中设计一个架构,最终将成为Hive要查询的Parquet文件的架构。
有几个实例我将嵌套列作为类型数组,父记录可能有零或更多。为了使用更具体的例子,让我们说我有一个Person记录,带有Children字段。一个人可以有零个或多个孩子。
对于Children字段是否应该是一个可以包含零项的数组,或者应该定义为[null,array]的并集,是否存在任何有说服力的论据?
也就是说,如果没有子节点,我应该使用NULL,还是应该使用零长度数组?
在我的学习曲线的早期,它似乎是一种哲学选择。但是我不知道自己不知道什么,所以我希望社区可以根据我没有的经验分享他们的见解:这应该是一个可用的列,或者只是一个可能包含零元素的数组?