第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

Spark On Yarn 如何提高CPU利用率

標(biāo)簽:
Spark

问题描述:       

Spark on Yarn是利用yarn进行资源调度,这两天我写的一个程序处理大概100W行文本,文本格式是txt,数据大小为50M左右。我将Scala写的代码打包扔到集群上执行,这么点数据量都需要执行3个小时,都说Spark是大数据处理的利器,但是哪里出问题了呢?带着这个问题,我查看了4个Slave节点(24核,60G内存)的CPU利用率如下图:

webp

cpu利用率

很明显,Job没有充分利用CPU。

解决方案:

首先我探索了spark-submit里的各个参数,主要关注了:number-executors和executor-cores,改了各种配置,他们都对提高CPU的利用率不起作用。

webp

spark-submit参数

由于我的代码核心就是对一个RDD做map操作如下,其中调用了BLAS库做矩阵运算:

webp

核心代码

我考虑了是不是需要将hadoop里的map/reduce vcore设置大一些,即mapreduce.map.cpu.vcores 和 mapreduce.reduce.cpu.vcores设置大些,可是依然不起作用。

最后,发现问题的关键了,我输入数据源为一个txt文件,数据并没有分片,所以导致单机单核可以执行,并没有利用到Hadoop/Spark的并行处理的优势。下面我就将数据源分片:

split -l 20000 xxx.txt -d -a 4 xxx.txt._

其实也可以这样来使得数据分片,这样的效果没有验证。

val distFile = sc.textFile("data.txt",num_of_partition)

这个命令将数据源(100W行)分成了 50份,这样的话集群就对此文件并行执行了。下面是执行结果:

webp

spark-submit

webp

yarn占用资源

webp

cpu利用率

感觉速度快了很多,这次任务执行大概20min。如果有说的不对的地方,请大家多多指教,欢迎交流。



作者:_雷雷_
链接:https://www.jianshu.com/p/52a3ceedadc5


點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開(kāi)微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消