Spark:扩展核心数量时的性能数量不一致

我正在使用排序基准测试对Spark进行简单的扩展测试 - 从1核,最多8核。我注意到8个核心比1核心慢。


//run spark using 1 core

spark-submit --master local[1] --class john.sort sort.jar data_800MB.txt data_800MB_output


//run spark using 8 cores

spark-submit --master local[8] --class john.sort sort.jar data_800MB.txt data_800MB_output  

每种情况下的输入和输出目录都是HDFS。


1核:80秒


8个核心:160秒


我希望8核性能有x倍的加速。


猛跑小猪
浏览 777回答 2
2回答

慕容森

我想添加这些信息:由于Spark会尝试拆分文件,我们最终会遇到以下情况之一:要么Spark会启动多个线程来读取同一个文件,同时通过寻求I / O处罚跨输入文件,而不是线性读取。或者,Spark仍将大量读取文件,然后将其传播到同时工作中,并产生本地随机播放,这也会降低性能。再加上排序所需的shuffle,性能明显下降
打开App,查看更多内容
随时随地看视频慕课网APP