您的位置:首页 > 数据库

spark-sql性能测试

2016-06-06 16:02 323 查看
一,测试环境
1) 硬件环境完全相同:
包括:cpu/内存/网络/磁盘Io/机器数量等
2)软件环境:
相同数据
相同测试用例
3) 不同计算框架,其中spark-sql 都是基于yarn的
4)spark-sql executor内存总量不大于 hive使用内存峰值
二,不同框架在两个测试用例下的性能对比
1)bu_出租车需求数计算.sql

orcorc (split 110M)parquet +snappyparquet +gzip
spark-sql 1.42mins, 7sec1mins,40secParquet does not support decimalParquet does not support decimal
spark-sql 1.61mins, 30sec大概1mins,4sec大概1mins,4sec大概1mins,4sec
hive20mins18.5mins大概20mins大概20mins
所占空间(raw倍数)111.61


2)专快播单,接单情况.sql

spark-sql 1.6保持分配600G的内存不变,在不同数据量下进行测试:

200G
550G
1.1T
spark-sql 1.411-12mins
spark-sql 1.67-8mins22mins51mins
hive15mins50mins将近5T内存,就没测试


3) 听单

time
spark-sql 1.6190s
hive1117s




4)

三,总结

1)spark-sql 1.6 相对于spark-sql 1.4 提高30%的性能;
2)不同应用spark-sql相对于hive性能提升幅度不同,但是都会提高很多
3)不同存储+压缩格式,存储空间不同
4)hive的stage-1的mr个数与数据存储空间大小成正比;
注:mr 的个数与block大小有关,所以在split切分设为110M以后,资源占用大概两倍;
5)在数据量接近或远大于分配内存资源的情况下,spark-sql速度比下降,但相对于hive,仍就很快(并且hive资源占用过多);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: