spark 2自定义数据源 - 如何将数组列设置为null?

时间:2017-09-16 01:04:06

标签: apache-spark-sql spark-dataframe

我有一个自定义spark数据源,其中包含从java库提供的数据。某些字段是ArrayType,偶尔为NULL。我已经尝试将数组字段设置为None,null,lit(null),Option(null)以及可能的其他几个变体,并且在尝试解析数组字段时催化剂会抛出NPE。

尽管我已经知道,Catalyst并没有在ArrayConverter的toCatalystImpl()方法中检查null(来自CatalystTypeConverters.scala)。这是一个Catalyst错误,还是对数据框ArrayType字段有其他一些空编码?

1 个答案:

答案 0 :(得分:0)

我的不好,我找到了问题(黑客攻错了一段代码)。最终的答案似乎是" Option(null)"。我尝试了None并点燃了(null :),但两者都抛出异常。