【转】Spark性能测试报告

RDD可以很好地适用于支持数据并行的批量分析应用,包括数据挖掘,机器学习,图算法等,因为这些程序通常都会在很多记录上执行相同的操作。RDD不太适合那些异步更新共享状态的应用,例如并行web爬行器。因此,我们的目标是为大多数分析型应用提供有效的编程模型,而其他类型的应用交给专门的系统。

关于RDD详见:

弹性分布式数据集:一种基于内存的集群计算的容(二):弹性分布式数据集(RDD)

硬件环境:

开发机器是 3台 Intel(R) Xeon(R) CPU E5440 @ 2.83GHz双核 2.8G 4G内存

操作系统:

Red Hat Enterprise Linux Server release 5.7 (Tikanga)

Spark配置:

三节点,每个节点2G内存,14 个维度,100个类别,10次迭代,使用不同大小样例文件分析。

结论1:定义0.8(数据量/2048/3)作为三节点的阈值,当运行数据在阈值内时性能成单调递增,当超过该阈值时,,性能急剧下降,当超过阈值2%时性能下降53.11937%,当超过34.01326%,性能下降70.80896%

以下是测试数据:

序号数据文件大小(M)记录条数耗时数据文件/耗时数据/内存数据/内存/节点数

033.33147,106103.3333440.0162740.005425

1100441,319137.6923170.0488280.016276

2166.67735,5331511.111180.0813820.027127

3233.331,029,7462011.666520.1139310.037977

4341.331,506,3712314.84060.1666650.055555

55122,259,5573017.066660.250.083333

6682.673,012,7434216.254020.3333350.111112

7853.333,765,9294518.962910.4166650.138888

81,024.004,519,1155717.964940.50.166667

91,194.675,272,3016518.379530.5833350.194445

101,365.336,025,4877318.703160.6666650.222222

111,536.006,778,6738019.200010.750.25

121,706.677,531,8599517.964910.8333350.277778

131,877.338,285,04414712.770970.9166650.305555

142,048.009,038,23010419.692310.333333

152,218.669,791,41611319.634171.083330.36111

162,389.3310,544,60212419.268811.1666650.388888

172,560.0111,297,78817514.628611.2500050.416668

182,730.6612,050,97418414.840561.333330.444443

192,901.3412,804,16016417.691091.416670.472223

203,072.0013,557,34615519.819341.50.5

213,242.6714,310,53216220.016471.5833350.527778

223,413.3415,063,71816620.562311.666670.555557

233,754.6816,570,08917920.975851.833340.611113

244,266.6818,829,64618922.575012.083340.694447

254,500.0119,859,39220921.531142.1972710.732424

264,666.6820,594,92520223.102352.2786520.759551

274,766.6821,036,24420223.59742.327480.775827

284,866.6821,477,56322621.533962.3763090.792103

294,966.6821,918,88222022.57582.4251370.808379

305,066.6822,360,20145811.062612.4739650.824655

315,120.0122,595,57746311.058342.5000050.833335

326,656.0129,374,25010106.590113.2500051.083335

性能趋势图:

Spark配置:

一节点, 2G内存,14 个维度,100个类别,10次迭代。

结论2:定义0.9(数据量/2048)作为三节点的阈值,当运行数据在阈值内时性能成单调递增,当超过该阈值时,性能急剧下降,当超过阈值8.3334961%时性能下降57.61797318%,当超过18.18167291%,性能下降66.4701143%

当超过36.36441116%,性能下降94.14757913%

序号数据文件大小(M)记录条数耗时数据文件/耗时数据/内存

033.33147,106103.3333440.016274

1100.00441,319205.0000060.048828

2166.67735,533276.172880.081382

3233.331,029,746346.8626570.113931

4341.331,506,371457.5851970.166665

5512.002,259,557647.9999970.25

6682.673,012,743858.0314010.333335

7853.333,765,9291028.3659890.416665

81,024.004,519,1151188.677980.5

91,194.675,272,3011378.7202160.583335

101,365.336,025,4871538.9237290.666665

111,536.006,778,6731768.7272790.75

121,706.677,531,8591938.842830.833335

131,877.338,285,0442238.418530.916665

142,048.009,038,2305743.5679441

152,218.669,791,4167862.8227241.08333

162,389.3310,544,60211342.1069951.166665

172,560.0111,297,78851960.4926881.250005

性能趋势图:

总论:在执行Spark程序的时候需预估所需的内存,当超过一定阈值后,性能将急剧下降。如有不对或不足的地方请指正。

版权声明:原创作品,转载请保持文章完整性,转载时请务必以超链接形式标明文章原始出版、作者信息和本声明。否则将追究法律责任。

博客地址:

微博地址:

这一秒不放弃,下一秒就会有希望。

【转】Spark性能测试报告

相关文章:

你感兴趣的文章:

标签云: