溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Spark集群硬件配置推薦

發(fā)布時間:2020-07-14 16:03:02 來源:網(wǎng)絡(luò) 閱讀:1079 作者:無鋒劍 欄目:大數(shù)據(jù)

Spark集群硬件配置推薦

計算與存儲:

大多數(shù)Spark作業(yè)可能需要從外部存儲系統(tǒng)(例如 :Cassandra、Hadoop文件系統(tǒng)或HBase)讀取輸入數(shù)據(jù),所以要讓Spark計算引擎盡可能靠近數(shù)據(jù)持久層。
如果使用HDFS作為數(shù)據(jù)存儲集群,可以在相同的集群上部署Spark集群,并配置Spark和Hadoop的內(nèi)存和CPU使用率以避免干擾。我們的生產(chǎn)存儲使用的是Cassandra集群,spark master 服務(wù)單獨部署,其它節(jié)點同時部署:Cassandra + spark worker,保證spark worker 節(jié)點可以快速從本地讀取數(shù)據(jù)進行計算匯總。

磁盤:

雖然Spark可以在內(nèi)存中執(zhí)行大量的計算,但它仍然可能會使用本地磁盤來存儲不適用于RAM的數(shù)據(jù),建議每個節(jié)點配置4-8個磁盤,不需要配置RAID(磁盤陣列),磁盤成本越來越低,可以考慮配置ssd 硬盤,可以大幅提升性能。另外;在Linux中,使用noatime選項掛載磁盤,以減少不必要的寫入操作。 在Spark中,可以將spark.local.dir變量配置為多個本地磁盤的地址,多個地址之間以逗號分隔。

內(nèi)存

建議為Spark分配的內(nèi)存容量不大于機器總內(nèi)存容量的75%;確保為操作系統(tǒng)和緩沖區(qū)留下足夠的內(nèi)存。根據(jù)業(yè)務(wù)特點評估需要多少內(nèi)存。
請注意,當內(nèi)存容量超過200GB時Java 虛擬機的性能表現(xiàn)會不穩(wěn)定。如果您購買的RAM大于200G,則可以為每個節(jié)點運行多個worker JVM。在Spark的standalone模式下,您可以通過conf/spark-env.sh中的SPARK_WORKER_INSTANCES變量設(shè)置每個節(jié)點運行的worker進程數(shù),以及通過SPARK_WORKER_CORES變量設(shè)置每個worker可用的cpu核心數(shù)。

網(wǎng)絡(luò)

當數(shù)據(jù)已經(jīng)存儲在內(nèi)存中時,很多Spark應(yīng)用程序的性能瓶頸在于網(wǎng)絡(luò)的傳輸速率。推薦最低使用10G的網(wǎng)絡(luò)。

CPU

Spark運行匯總計算任務(wù)比較多,推薦配置更多的cpu核數(shù),性能提升還是比較明顯,推薦:每臺機器至少配置8-16個核??梢愿鶕?jù)Spark作業(yè)的CPU負載情況,進行配置調(diào)整。一旦數(shù)據(jù)已經(jīng)在內(nèi)存中,大多數(shù)應(yīng)用程序的性能瓶頸在于CPU和網(wǎng)絡(luò)。

參考文檔

http://spark.apache.org/docs/latest/hardware-provisioning.html

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI