【问题标题】:Writing file to unix directory using spark cluster mode使用 Spark 集群模式将文件写入 unix 目录
【发布时间】:2017-08-23 11:09:04
【问题描述】:

我有一个 spark 应用程序,它当前在本地模式下运行,并将输出写入本地 UNIX 目录中的文件。

现在,我想在纱线集群模式下运行相同的作业,但仍想写入那个 UNIX 文件夹。

我可以使用相同的 saveAsTextFile(path) 吗?

【问题讨论】:

    标签: apache-spark


    【解决方案1】:

    是的,你可以。但这不是最好的做法。 spark 本身可以独立运行,也可以在分布式文件系统上运行。我们使用分布式文件系统的原因是数据量很大,预期的输出可能很大。

    因此,如果您完全确定输出将适合您的本地文件系统,请选择它,或者您可以使用以下命令将其保存到本地存储中。

    bin/hadoop fs -copyToLocal /hdfs/source/path /localfs/destination/path
    

    【讨论】:

    • 谢谢迪帕克。我假设这是一个将文件从 hdfs 复制到本地目录的 hadoop 命令。但是,如何使用 spark 应用程序/程序写入 UNIX 目录中的文件。
    • 是的。写入文件是什么意思?您是在询问像读取、附加和写入这样的文件的真正写入吗?
    • 是的,就我而言,我想使用 spark 应用程序附加到文件中。
    • 无论你在 spark 上执行什么操作,它都必须在 RDD 上工作。因此,它需要将文件加载到 RDD 中,然后执行您需要的操作,在您的情况下查看并行化的工作原理。它执行转换,然后使用 saveAsTextFile(path) 保存 RDD。
    猜你喜欢
    • 1970-01-01
    • 2020-10-22
    • 2018-11-13
    • 2019-02-04
    • 2019-11-25
    • 2015-12-23
    • 2017-03-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多