2017-01-20 88 views
0

我使用jupyter在Spark羣集上運行python腳本。我想更改驅動程序的默認堆棧大小。我在documentation,我可以使用spark.driver.extraJavaOptions發送給司機JVM的任何選項發現,但在文檔中的說明:更改從jupyter運行的火花驅動程序的默認堆棧大小?

注意:在客戶端模式,此配置不能通過 SparkConf直接設置在您的應用程序中,因爲驅動程序JVM在此時已經啓動了 。相反,請通過 --driver-java-options命令行選項或在您的默認屬性文件中進行設置。

問題是:如何從jupyter運行時更改默認的驅動程序參數?

回答

1

你可以通過spark.driver.extraJavaOptions的配置值到SparkConf,定製用於驅動程序的Java選項如:

from pyspark import SparkConf, SparkContext 
conf = (SparkConf() 
    .setMaster("spark://spark-master:7077") 
    .setAppName("MyApp") 
    .set("spark.driver.extraJavaOptions", "-Xss4M")) 
sc = SparkContext.getOrCreate(conf = conf) 

注意,在http://spark.apache.org/docs/latest/configuration.html它指出約spark.driver.extraJavaOptions :

注意:在客戶端模式下,不能通過應用程序中的SparkConf直接設置此配置,因爲此時驅動程序JVM已經啓動。相反,請通過--driver-java-options命令行選項或在您的默認屬性文件中進行設置。

但是這是在談論JVM SparkConf類。當它在PySpark Python SparkConf中設置時,它將它作爲命令行參數傳遞給spark-submit,然後在實例化JVM時使用它,以便Spark文檔中的註釋不適用。

相關問題