首页 > 解决方案 > 分离头文件和合并部分文件

问题描述

我有一个巨大的数据框,它在 Scala 中使用选项 header="true" 保存在 HDFS 中

这会创建多个部分文件,每个文件都有标题,当我使用 合并时hadoop fs -getmerge,它会创建一个包含多个标题的单个文件。我可以使用 awk 并删除这些头文件,但这不是一个好习惯。

有没有办法将头文件写入一个单独的文件_header.csv,然后在同一个文件夹中写入没有头文件的数据帧,然后使用合并所有内容hadoop fs -getmerge

我想过使用创建一个单独的制表符分隔的标题,sc.parallelize(Seq(<dataframe>.columns.mkString(“\t"))).saveAsTextFile(<filename>)但这也创建了一个需要移动到另一个文件夹的部分文件,然后我将所有文件合并在一起

标签: scalaapache-sparkhadoopapache-spark-sql

解决方案


推荐阅读