spark引數配置如下:
Spark引數總結
1、num-executors引數該引數設定Spark作業總共需要多少個Executor程序來執行。Driver向YARN申請資源時,YARN管理器會按照你設定的,在各個WorkNode上啟動相應的Executor程序
註釋:Executor為JVM程序,用於執行和處理Task(分割槽資料)
2、executor-memory引數該引數用於設定每個Executor程序的記憶體。
3、executor-cores該引數用於Executor程序的CPU core數量,決定了Executor並行執行Task行程能力。每個CPU core同時只能執行一個Task行程,越多效能越好。
4、driver-memory該引數用於設定Driver程序記憶體。
Driver:我這裡個人理解為 spark 程式入口,負責對spark中SparkContext(sc)物件進行建立
5、spark.default.parallelism該引數用於設定每個stage的預設task數量如果不設定這個引數, Spark自己根據底層HDFS的block數量來設定task的數量,預設是一個HDFS block對應一個task
6、spark.storage.memoryFraction該引數用於設定RDD持久化資料在Executor記憶體中能佔的比例,預設是0.6。預設佔用Executor 60%記憶體,可以儲存持久化的RDD資料。
7、spark.shuffle.memoryFraction該引數用於設定shuffle過程一個task拉取上個stage的task輸出後,進行聚合操作所用到的Executor記憶體佔比,預設0.2(20%)。
spark引數配置如下:
Spark引數總結
1、num-executors引數該引數設定Spark作業總共需要多少個Executor程序來執行。Driver向YARN申請資源時,YARN管理器會按照你設定的,在各個WorkNode上啟動相應的Executor程序
註釋:Executor為JVM程序,用於執行和處理Task(分割槽資料)
2、executor-memory引數該引數用於設定每個Executor程序的記憶體。
3、executor-cores該引數用於Executor程序的CPU core數量,決定了Executor並行執行Task行程能力。每個CPU core同時只能執行一個Task行程,越多效能越好。
4、driver-memory該引數用於設定Driver程序記憶體。
Driver:我這裡個人理解為 spark 程式入口,負責對spark中SparkContext(sc)物件進行建立
5、spark.default.parallelism該引數用於設定每個stage的預設task數量如果不設定這個引數, Spark自己根據底層HDFS的block數量來設定task的數量,預設是一個HDFS block對應一個task
6、spark.storage.memoryFraction該引數用於設定RDD持久化資料在Executor記憶體中能佔的比例,預設是0.6。預設佔用Executor 60%記憶體,可以儲存持久化的RDD資料。
7、spark.shuffle.memoryFraction該引數用於設定shuffle過程一個task拉取上個stage的task輸出後,進行聚合操作所用到的Executor記憶體佔比,預設0.2(20%)。