真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

spark-一些參數(shù)優(yōu)化-創(chuàng)新互聯(lián)

Spark程序優(yōu)化所需要關(guān)注的幾個(gè)關(guān)鍵點(diǎn)——最主要的是數(shù)據(jù)序列化和內(nèi)存優(yōu)化

目前創(chuàng)新互聯(lián)公司已為上1000+的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)絡(luò)空間、網(wǎng)站運(yùn)營、企業(yè)網(wǎng)站設(shè)計(jì)、隆堯網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

spark 設(shè)置相關(guān)參數(shù)
問題1:reduce task數(shù)目不合適
解決方法:需根據(jù)實(shí)際情況調(diào)節(jié)默認(rèn)配置,調(diào)整方式是修改參數(shù)spark.default.parallelism。通常,reduce數(shù)目設(shè)置為core數(shù)目的2到3倍。數(shù)量太大,造成很多小任務(wù),增加啟動(dòng)任務(wù)的開銷;數(shù)目太少,任務(wù)運(yùn)行緩慢。
如果你想了解大數(shù)據(jù)的學(xué)習(xí)路線,想學(xué)習(xí)大數(shù)據(jù)知識(shí)以及需要免費(fèi)的學(xué)習(xí)資料可以加群:784789432.歡迎你的加入。每天下午三點(diǎn)開直播分享基礎(chǔ)知識(shí),晚上20:00都會(huì)開直播給大家分享大數(shù)據(jù)項(xiàng)目實(shí)戰(zhàn)。

問題2:shuffle磁盤IO時(shí)間長(zhǎng)
解決方法:設(shè)置spark.local.dir為多個(gè)磁盤,并設(shè)置磁盤為IO速度快的磁盤,通過增加IO來優(yōu)化shuffle性能;

問題3:map|reduce數(shù)量大,造成shuffle小文件數(shù)目多
解決方法:默認(rèn)情況下shuffle文件數(shù)目為map tasks * reduce tasks. 通過設(shè)置spark.shuffle.consolidateFiles為true,來合并shuffle中間文件,此時(shí)文件數(shù)為reduce tasks數(shù)目;

問題4:序列化時(shí)間長(zhǎng)、結(jié)果大
解決方法:Spark默認(rèn)使.用JDK.自帶的ObjectOutputStream,這種方式產(chǎn)生的結(jié)果大、CPU處理時(shí)間長(zhǎng),可以通過設(shè)置spark.serializer為org.apache.spark.serializer.KryoSerializer。另外如果結(jié)果已經(jīng)很大,可以使用廣播變量;

問題5:?jiǎn)螚l記錄消耗大
解決方法:使用mapPartition替換map,mapPartition是對(duì)每個(gè)Partition進(jìn)行計(jì)算,而map是對(duì)partition中的每條記錄進(jìn)行計(jì)算;

問題6:collect輸出大量結(jié)果時(shí)速度慢
解決方式:collect源碼中是把所有的結(jié)果以一個(gè)Array的方式放在內(nèi)存中,可以直接輸出到分布式?文件系統(tǒng),然后查看文件系統(tǒng)中的內(nèi)容;

問題7:任務(wù)執(zhí)行速度傾斜
解決方式:如果是數(shù)據(jù)傾斜,一般是partition key取的不好,可以考慮其它的并行處理方式 ,并在中間加上aggregation操作;如果是Worker傾斜,例如在某些worker上的executor執(zhí)行緩慢,可以通過設(shè)置spark.speculation=true 把那些持續(xù)慢的節(jié)點(diǎn)去掉;

問題8:通過多步驟的RDD操作后有很多空任務(wù)或者小任務(wù)產(chǎn)生
解決方式:使用coalesce或repartition去減少RDD中partition數(shù)量;

問題9:Spark Streaming吞吐量不高
解決方式:可以設(shè)置spark.streaming.concurrentJobs

schedule調(diào)度相關(guān)參數(shù)
spark.cores.max
CPU計(jì)算資源的數(shù)量,spark.cores.max 這個(gè)參數(shù)決定了在Standalone和Mesos模式下,一個(gè)Spark應(yīng)用程序所能申請(qǐng)的CPU Core的數(shù)量
這個(gè)參數(shù)需要注意的是,這個(gè)參數(shù)對(duì)Yarn模式不起作用,YARN模式下,資源由Yarn統(tǒng)一調(diào)度管理
CPU資源的數(shù)量由另外兩個(gè)直接配置Executor的數(shù)量和每個(gè)Executor中core數(shù)量的參數(shù)決定。

spark.scheduler.mode
單個(gè)Spark應(yīng)用內(nèi)部調(diào)度的時(shí)候使用FIFO模式還是Fair模式

spark.speculation
spark.speculation(推測(cè)機(jī)制開關(guān))以及spark.speculation.interval(),spark.speculation.quantile, spark.speculation.multiplier等參數(shù)調(diào)整Speculation行為的具體細(xì)節(jié)

spark.executor.memory xxG 設(shè)置內(nèi)存
spark.executor.cores x 設(shè)置每個(gè)excutor核數(shù)
spark.cores.max xx 設(shè)置大核使用數(shù)量

若如出現(xiàn)各種timeout,executor lost ,task lost
spark.network.timeout 根據(jù)情況改成300(5min)或更高。,默認(rèn)為 120(120s),配置所有網(wǎng)絡(luò)傳輸?shù)难訒r(shí),如果沒有主動(dòng)設(shè)置以下參數(shù),默認(rèn)覆蓋其屬性

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


網(wǎng)頁標(biāo)題:spark-一些參數(shù)優(yōu)化-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://weahome.cn/article/ddsdoj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部