直到最近,parquet
不支持null
值-这是一个值得质疑的前提。事实上,最近的版本终于添加了这种支持:
https://github.com/apache/parquet-format/blob/master/LogicalTypes.md
然而,要让spark
支持新的parquet
特性还需要很长时间-如果有可能的话。这里是相关的(已关闭 - 不会修复
)JIRA:
https://issues.apache.org/jira/browse/SPARK-10943
那么在写出dataframe
到parquet
时,人们如今对于空列值的处理方式是什么呢?我只能想到非常丑陋可怕的hack方法,例如写入空字符串和...好吧...我不知道该如何处理数值以指示null
- 除了放置一些标志性值并让我的代码进行检查(这很不方便且容易出错)。