我有一个包含许多文件的输入文件夹。我想对它们进行批量操作,比如复制/移动到新的路径。
我想用Spark做这件事。
请帮助/建议如何继续这样做。
答案 0 :(得分:3)
如果它是本地目录,您可以使用val myfile = sc.textFile("file://file-path")
阅读它并使用myfile.saveAsTexFile("new-location")
保存它们。
火花的作用是读取所有文件,同时将它们保存到新位置并制作一批这些文件并将它们存储在新位置(HDFS /本地)。
确保您在spark群集的每个工作节点中都有相同的目录
答案 1 :(得分:0)
在大写字母中,您必须拥有本地文件'每个工作节点上的路径。
如果你想摆脱它,你可以使用像hadoop文件系统(hdfs)这样的分布式文件系统。
在这种情况下,您必须提供如下路径:
hdfs://nodename-or-ip:port/path-to-directory