并行提交多个工作时,spark-submit失败

问题描述 投票:0回答:1

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

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

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

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

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

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

apache-spark parallel-processing spark-submit
1个回答
0
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.