首页 > 解决方案 > Scala Spark:将 DataFrame 写入 CSV 文件时的顺序更改

问题描述

我有两个数据框,我正在使用联合进行合并。执行联合后,使用 df.show() 打印最终数据帧,显示记录按预期顺序排列(顶部的第一个数据帧记录,然后是第二个数据帧记录)。但是当我将这个最终数据帧写入 csv 文件时,我希望位于 csv 文件顶部的第一个数据帧中的记录正在丢失它们的位置。第一个数据框的记录与第二个数据框的记录混合在一起。任何帮助,将不胜感激。

以下是代码示例:

val intVar = 1

val myList = List(("hello",intVar))

val firstDf = myList.toDF()

val secondDf: DataFrame = testRdd.toDF()

val finalDF = firstDf.union(secondDf)

finalDF.show() // prints the dataframe with firstDf records on the top followed by the secondDf records

val outputfilePath = "/home/out.csv"

finalDF.coalesce(1).write.csv(outputFilePath) //the first Df records are getting mixed with the second Df records.

标签: scalaapache-spark

解决方案


推荐阅读