问题导读: 1. Spark On Yarn 如何提高CPU利用率? 2. 在并行计算处理框架下(Spark或MapReduce),为什么需要将数据进行分片?
本文转自简书,作者:_雷雷
问题描述: Spark on Yarn是利用yarn进行资源调度,这两天我写的一个程序处理大概100W行文本,文本格式是txt,数据大小为50M左右。我将Scala写的代码打包扔到集群上执行,这么点数据量都需要执行3个小时,都说Spark是大数据处理的利器,但是哪里出问题了呢?带着这个问题,我查看了4个Slave节点(24核,60G内存)的CPU利用率如下图:
很明显,Job没有充分利用CPU。