Spark中各個角色的JVM參數設置


 總結一下Spark中各個角色的JVM參數設置:   
(1)Driver的JVM參數:
-Xmx,-Xms,如果是yarn-client模式,則默認讀取 spark-env文件中的SPARK_DRIVER_MEMORY值,-Xmx,-Xms值一樣大小;如果是yarn-cluster模式,則讀取的是spark-default.conf文件中的spark.driver.extraJavaOptions對應的JVM參數值。
PermSize,如果是yarn-client模式,則是默認讀取 spark-class文件中的JAVA_OPTS="-XX:MaxPermSize=256m $OUR_JAVA_OPTS"值;如果是yarn-cluster模式,讀取的是spark-default.conf文件中的spark.driver.extraJavaOptions對應的JVM參數值。
GC方式,如果是yarn-client模式,默認讀取的是spark-class文件中的JAVA_OPTS;如果是yarn-cluster模式,則讀取的是spark-default.conf文件中的spark.driver.extraJavaOptions對應的參數值。
以上值最后均可被spark-submit工具中的--driver-java-options參數覆蓋。

 

(2)Executor的JVM參數:
-Xmx,-Xms,如果是yarn-client模式,則默認讀取spark-env文件中的SPARK_EXECUTOR_MEMORY值,-Xmx,-Xms值一樣大小;如果是yarn-cluster模式,則讀取的是spark-default.conf文件中的spark.executor.extraJavaOptions對應的JVM參數值。
PermSize,兩種模式都是讀取的是 spark-default.conf文件中的spark.executor.extraJavaOptions對應的JVM參數值。
GC方式,兩種模式都是讀取的是spark-default.conf文件中的spark.executor.extraJavaOptions對應的JVM參數值。

 

(3)Executor數目及所占CPU個數
如果是yarn-client模式,Executor數目由spark-env中的SPARK_EXECUTOR_INSTANCES指定,每個實例的數目由SPARK_EXECUTOR_CORES指定;如果是yarn-cluster模式,Executor的數目由spark-submit工具的--num-executors參數指定,默認是2個實例,而每個Executor使用的CPU數目由--executor-cores指定,默認為1核。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM