我將一個Array[String]
保存到Spark的Parquet文件中。從Spark中讀取字符串數組
要閱讀它,我用:
row.getAs[Array[String]]("result")
但得到:
java.lang.ClassCastException: scala.collection.mutable.WrappedArray$ofRef cannot be cast to [Ljava.lang.String;
這裏是printSchema()
結果:
root
|-- result: array (nullable = true)
| |-- element: string (containsNull = true)
應如何getAs()
修改?
'row.getAs [Seq [String]](「result」)'工作嗎? – Reactormonk
或'row.getAs [scala.collection.mutable.WrappedArray [String]](「result」)''。 @Reactormonk我認爲你應該讓它成爲一個答案。 – zero323
@ zero323'Seq'和'WrappedArray'工作。你有沒有看到任何理由使用其中一個?對性能比對使用更感興趣。 – BAR