ошибка spark-submit при отправке нескольких заданий параллельно - PullRequest
0 голосов
/ 28 февраля 2019

У меня есть приложение Spark, которое мне нужно применить к разным файлам и получить результат как можно быстрее, поэтому для этого у меня есть созданный модуль python, который подготовит файлы, а затем запустит другую искру.отправляет задания.

Прежде чем продолжить, я немного объясню, как spark-submit запускает задание.

Исходная библиотека запуска spark-submit создает временный текстовый файл в каталоге TEMP с командойвыполнить, для более подробной информации нажмите здесь .Путь к этому файлу имеет следующий синтаксис: ... / AppData / Local / Temp / spark-class-launcher-output- {RANDOM_VALUE} .txt, где RANDOM_VALUE представляется случайным числом.

Дело в том, что когда я запускаю несколько искровых заданий одновременно, у меня возникает коллизия RANDOM_VALUE, и поэтому распараллеливание вступает в конфликт, потому что разные искровые задания используют один и тот же искровой класс-launcher-output- {RANDOM_VALUE} .txt файл.

Так что простым решением для этого будет изменение каталога TEMP для каждого выполнения spark, что-то вроде этого ... / AppData / Local / Temp /my_temp_ N где N перейдет от нуля к числу параллельных заданий минус один.

И вот мой вопрос.как мы можем изменить каталог TEMP для экземпляра spark-submit?

1 Ответ

0 голосов
/ 05 марта 2019

Я пытался решить эту проблему, изменяя каталоги tmp, но id не работал.Проблема в том, что похоже, что spark пишет этот файл spark-class-launcher-file, прежде чем даже использовать каталоги tmp для своей обработки данных.Итак, наконец я добавил небольшую задержку между казнями ...

...