合并多个数据框的结果:在Scala中合并文件

时间:2019-05-23 03:49:05

标签: scala apache-spark

我需要将HDFS中3个不同数据帧写入的文件合并到一个文件中,最后将它们放到本地文件系统中。

此任务是Unix shell上普通Hadoop命令中的儿童游戏。对我来说,使用Python要容易得多。但是我需要在Scala中完成;到目前为止,我还是新手。需要一些提示。

以下是到目前为止生成文件的步骤: 标头:

Seq(header).toDS.write.format("text").save(s"/path/to/header")

它将创建一个标题文件夹和一个包含标题详细信息的文件。

数据:

dataDF.map(c => c.mkString("|")).coalesce(1).write.format("text").save(s"/path/to/main/file")

这将在另一个路径中创建1个数据文件。

预告片:

Seq(trailer).toDS.write.format("text").save(s"/path/to/trailer")

标头和标尾都各占一行。合并到一个文件中的计划是header + data + trailer。然后将文件放到本地。

任何提示,要在scala中完成此操作?如果不是,则是否有人可以共享如何在getMerge中调用Hadoop特定的Unix方法,例如scala等。那也可以做。

0 个答案:

没有答案