Запуск нескольких заданий в спарк - PullRequest
0 голосов
/ 25 января 2020

У меня есть скрипт (script1. sh), который запускает искровое задание, которое принимает два параметра a и b. Один и тот же скрипт обращается к разным ресурсам, если я изменю параметры на c и d. Этот сценарий используется для запуска задания в кластере искр.

В настоящее время задание выполняется в два раза rnet раз, 1-й - в 10:00, а второй - в 11:00:

     $ sh -x script1.sh a b
     $ sh -x script1.sh c d 

Я знаю, что мы можем запустить несколько сценариев одновременно, используя:

    $ sh -x script1.sh & sh -x script2.sh & sh -x script3.sh 

, но у меня нет нескольких сценариев.

На данный момент меня не слишком беспокоит производительность

Какой самый эффективный способ для меня запустить оба модуля одновременно? Могу ли я сделать:

      $ sh -x script1.sh a b & sh -x script1.sh c d 

Есть ли более эффективный способ? Должен ли я что-то изменить здесь? Вот текущие спецификации:

      --driver-memory 15G \
      --driver-cores 5 \
      --num-executors 30 \
      --executor-memory 20G \
      --executor-cores 5 \

PS: Я бы предпочел не редактировать скрипт оболочки.

1 Ответ

0 голосов
/ 25 января 2020

Да, ваша команда будет запускать обе команды sh одновременно. Вы можете проверить на простом примере, например, sleep.sh содержит sleep $1, а выполнение sh -x sleep.sh 2 & sh -x sleep.sh 3 приводит к тому, что обе команды заканчиваются примерно через 3 секунды.

Будет ли сценарий завершен в течение максимального времени, которое требуется Завершение одного из них зависит от ресурсов кластера.

...