【问题标题】:spark-submit fails when submitting several jobs in parallel并行提交多个作业时 spark-submit 失败
【发布时间】:2019-02-28 15:12:08
【问题描述】:

我有一个 Spark 应用程序,我需要将它应用到不同的文件并尽快获得结果,所以为了做到这一点,我创建了一个 python 模块,它将准备文件然后启动不同的 spark-提交作业。

在继续之前,我将解释一下 spark-submit 如何启动作业。

本机 spark-submit 的启动库在 TEMP 目录中创建一个临时文本文件,其中包含要执行的命令,更多详细信息 click here。此文件的路径具有以下语法:.../AppData/Local/Temp/spark-class-launcher-output-{RANDOM_VALUE}.txt 其中 RANDOM_VALUE 似乎是一个随机数。

问题是,当我同时启动多个 spark-jobs 时,我遇到了 RANDOM_VALUE 的冲突,因此并行化会发生冲突,因为不同的 spark-jobs 使用相同的 spark-class-launcher-output-{RANDOM_VALUE}.txt 文件。

因此,一个简单的解决方案是为每次执行 spark 更改 TEMP 目录,例如 .../AppData/Local/Temp/my_temp_N 其中 N 将从零开始为并行作业数减一。

这是我的问题。我们如何更改 spark-submit 实例的 TEMP 目录?

【问题讨论】:

    标签: apache-spark parallel-processing spark-submit


    【解决方案1】:

    我试图通过修改 tmp 目录来解决这个问题,但 id 不起作用。问题是,spark 似乎在使用 tmp 目录进行数据处理之前就编写了这个 spark-class-launcher-file。所以最后我在执行之间添加了一个短暂的延迟......

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-12-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多