从Spark读取String数组

BAR*_*BAR 10 scala apache-spark

Array[String]从Spark中保存了一个Parquet文件.

为了阅读它,我使用:

row.getAs[Array[String]]("result")
Run Code Online (Sandbox Code Playgroud)

但得到:

java.lang.ClassCastException: scala.collection.mutable.WrappedArray$ofRef cannot be cast to [Ljava.lang.String;
Run Code Online (Sandbox Code Playgroud)

结果如下printSchema():

root                                                                            
 |-- result: array (nullable = true)
 |    |-- element: string (containsNull = true)
Run Code Online (Sandbox Code Playgroud)

应该如何getAs()修改?

Rea*_*onk 22

有用row.getAs[Seq[String]]("result")吗?

  • 似乎Spark可以使用隐含的情况.如果我有机会检查出来并提交PR. (2认同)