Чтение конфигурации приложения из объекта Sparkcontext

Я разрабатываю приложение Spark с использованием оболочки pyspark.

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

IPYTHON_OPTS="notebook --port 8889 --profile pyspark" pyspark

На основании документации, есть sc объект контекста spark уже создан для меня с некоторыми настройками по умолчанию.

"В оболочке PySpark для вас уже создан специальный SparkContext с поддержкой интерпретатора в переменной sc. Создание собственного SparkContext не будет работать".

У меня есть два вопроса:

(1) Как я могу получить сводную информацию о конфигурации по умолчанию sc объект? Я хочу знать, сколько памяти было выделено, сколько ядер я могу использовать... и т. Д. Однако я нашел только метод getLocalProperty для объекта sc из API pyspark, не зная, какой ключевой аргумент я должен вызвать.

(2) Можно ли изменить spark context, работая с iPythonnotebook. Если вы не можете изменить конфигурации после запуска записной книжки iPython, есть ли где-нибудь файл для настройки sc где-нибудь?

Я довольно новичок в Spark, чем больше информации (ресурса) вы можете предоставить, тем лучше. Спасибо!

1 ответ

Не обязательно использовать pyspark: вы можете импортировать классы pyspark, а затем создать экземпляр SparkContext самостоятельно

from pyspark import SparkContext, SparkConf

Настройте свою пользовательскую конфигурацию:

conf = SparkConf().setAppName(appName).setMaster(master)
# set values into conf here ..
sc = SparkContext(conf=conf)

Вы также можете посмотреть на общий spark-env.sh

conf/spark-env.sh.template # скопируйте в conf/spark-env.sh и затем измените vals так, как вам удобно

например. некоторые из значений, которые вы можете настроить:

# Options read when launching programs locally with
# ./bin/run-example or ./bin/spark-submit
# - HADOOP_CONF_DIR, to point Spark towards Hadoop configuration files
# - SPARK_LOCAL_IP, to set the IP address Spark binds to on this node
# - SPARK_PUBLIC_DNS, to set the public dns name of the driver program
# - SPARK_CLASSPATH, default classpath entries to append
Другие вопросы по тегам