Spark配置引數調優

2021-09-29 03:19:20 字數 721 閱讀 9633

cpu各核負載量很不均勻,記憶體也沒有用滿,系統的資源沒有得到充分利用,該如何利用?

(1)spark的rdd的partition個數建立task的個數是對應的;

(2)partition的個數在hadoop的rdd中由block的個數決定的。

記憶體:系統總記憶體數 = work記憶體大小 * work數 = spark_worker_memory * spark_worker_instances

cpu: 系統總的task數 = work數 * work所佔的cores數 = spark_worker_instances * spark_worker_cores

下面舉個例子:

例子:cpu(12core)  mem(48g)計算task並行度,記憶體分配情況,調優引數:

### standalone 模式

# 乙個work占用cpu數

export spark_worker_cores=3

# 乙個work占用記憶體

export spark_worker_memory=2g

# 乙個伺服器啟用多少個work

export spark_worker_instances=3

如果沒有在spark-env.sh配置檔案中配置以上引數,那麼spark執行預設是系統所有的資源,如下圖:

spark引數調優

了解完了spark作業執行的基本原理之後,對資源相關的引數就容易理解了。所謂的spark資源引數調優,其實主要就是對spark執行過程中各個使用資源的地方,通過調節各種引數,來優化資源使用的效率,從而提公升spark作業的執行效能。以下引數就是spark中主要的資源引數,每個引數都對應著作業執行原理...

spark 資源引數調優

了解完了spark作業執行的基本原理之後,對資源相關的引數就容易理解了。所謂的spark資源引數調優,其實主要就是對spark執行過程中各個使用資源的地方,通過調節各種引數,來優化資源使用的效率,從而提公升spark作業的執行效能。以下引數就是spark中主要的資源引數,每個引數都對應著作業執行原理...

spark常用調優引數

引數說明 該引數用於設定每個stage的預設task數量。這個引數極為重要,如果不設定可能會直接影響你的spark作業效能。引數調優建議 spark作業的預設task數量為500 1000個較為合適。很多同學常犯的乙個錯誤就是不去設定這個引數,那麼此時就會導致spark自己根據底層hdfs的bloc...