我正在使用pyspark shell开发Spark应用程序。
我使用以下命令启动了iPython笔记本服务,请参阅here我是如何创建个人资料的:
IPYTHON_OPTS="notebook --port 8889 --profile pyspark" pyspark
根据文档,我已经为我创建了一个sc
spark上下文对象,其中包含一些默认配置。
"在PySpark shell中,一个特殊的解释器感知SparkContext 已经为你创建了一个名为sc的变量。制作自己的 SparkContext不起作用。"
我基本上有两个问题:
(1)如何获取默认sc
对象的配置摘要?
我想知道已经分配了多少内存,我可以使用多少内核......等等。但是,我只是从pyspark API找到了一个名为getLocalProperty
的方法,它不知道我应该调用的关键参数是什么。
(2)是否可以修改使用iPythonnotebook的sparkcontext。如果在启动iPython笔记本后无法修改配置,是否有某个文件可以在某处配置sc?
我对Spark来说相当新,你可以提供的信息(资源)越多,它就越好。谢谢!
答案 0 :(得分:0)
不需要使用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 #copy to conf / spark-env.sh然后修改val对你有用
例如。您可以自定义的一些值:
# 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