入門火花jobserver我瞭解到的數據幀可以flattend像Spark flattening out dataframes但仍不能滿足https://github.com/spark-jobserver/spark-jobserver#job-result-serialization火花jobserver serialzation格式
如果是這樣的結果,我從火花得到
Array([1364767200000,1.9517414004122625E15], [1380578400000,6.9480992806496976E16])
我怎麼能把它映射到一個合適的格式? (有用的序列化) 如何添加其他字段?
試圖玩像這樣的數組:Array([1,2], [3,4])
只會導致錯誤。
目前我得到基於Spark flattening out dataframes以下序列:
"result": "Map(1364767200000 -> 1.9517414004122625E15, 1380578400000 -> 6.9480992806496976E16)"
這顯然不是由喬布斯erver「解析」。
據我瞭解,嵌套數組(從collect
)不能正確序列化。但是,這張地圖應該是可序列化的。哪裏不對?
編輯
只有當我返回一個正確的類型列表Json編碼似乎工作。
case class Student(name: String, age: Int)
List(Student("Torcuato", 27), Student("Rosalinda", 34))
結果是:"result": [["Torcuato", 27], ["Rosalinda", 34]]
。已經爲
val dataFrame: DataFrame = sql.createDataFrame(sql.sparkContext.parallelize(List(Student("Torcuato", 27), Student("Rosalinda", 34))))
dataFrame.collect
我得到"result": ["[Torcuato,27]", "[Rosalinda,34]"]
這是一些奇怪的JSON。
據我瞭解的問題,我需要解析我的結果到一個自定義的類。我將如何實現這一目標?