Настройка spark.app.name для ядра PySpark с помощью Jupyter Notebook - PullRequest
0 голосов
/ 07 мая 2018

Я использую сервер Jupyter Notebook с PySpark (как объяснено здесь ) в кластере Hadoop с YARN. Я заметил, что каждое приложение Spark, запускаемое с помощью новой записной книжки, отображается в веб-интерфейсе Spark как приложение с именем «PySparkShell» (что соответствует конфигурации «spark.app.name»).

Моя проблема в том, что у меня иногда есть много записных книжек, работающих в Jupyter, но все они появляются в веб-интерфейсе Spark с тем же общим именем «PySparkShell». Я знаю, что могу изменить имя по умолчанию на другое, и я также знаю, что не могу изменить имя приложения после создания SparkContext. У меня вопрос: можно ли сделать так, чтобы каждому приложению было присвоено другое имя при запуске ядра? (желательно что-то, что поможет мне связать имя записной книжки, то есть «Untitled.ipynb», с именем или идентификатором приложения Spark)

ОБНОВЛЕНИЕ: добавлен фрагмент кода моей команды запуска для ноутбука

export DAEMON_PORT=8880
ANACONDA_PATH=/opt/cloudera/parcels/Anaconda/bin
export PATH=$ANACONDA_PATH:$PATH
export PYSPARK_DRIVER_PYTHON=$ANACONDA_PATH/jupyter
export PYSPARK_DRIVER_PYTHON_OPTS="notebook --NotebookApp.open_browser=False --NotebookApp.ip='*' --NotebookApp.port=$DAEMON_PORT"
pyspark2 \
--executor-memory 5g \
--executor-cores 4 \
--driver-memory 20g \
--conf spark.shuffle.service.enabled=true \
--conf spark.dynamicAllocation.enabled=true \
--conf spark.dynamicAllocation.minExecutors=0 \
--conf spark.dynamicAllocation.maxExecutors=40

1 Ответ

0 голосов
/ 07 мая 2018

В первых нескольких строках, где вы указываете SparkContext(), вы можете включить объект конфигурации. Вы можете использовать объект конфигурации для установки различных настроек, но при этом цепочка set('property_name', 'property_value')

Я продемонстрирую, установив память исполнителя

from pyspark import SparkConf, SparkContext
conf = SparkConf().setAppName('Your_Project_name').set("spark.executor.memory", "5g")
sc = SparkContext(conf)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...