Spark的这些事<四>——SparkSQL功能测试结果

举报
数据社 发表于 2022/09/25 03:38:20 2022/09/25
【摘要】 一、Spark与Hive的差异 (1)、in 不支持子查询(2.0支持https://issues.apache.org/jira/browse/SPARK-4226) eg: select * fr...

一、Spark与Hive的差异

(1)、in 不支持子查询(2.0支持https://issues.apache.org/jira/browse/SPARK-4226
eg: select * from tb_test1 where serv_number in (select serv_number from tb_test1 where serv_number=138);

(2)、minus 不支持

(3)、intersect 不支持

二、 性能效率
注:
spark执行时均采用单核、1G内存执行脚本(如提高执行内存 执行效率会更快)
本次测试的事实表数据量为千万级别

这里写图片描述

综上,直接count(*)时,sparksql执行速度比hive高5倍,如果对执行内存扩大,对spark相关参数调优,则会更快。由于spark把计算放到内存中,所以会比MR更快,当然当数据量大于执行节点内存时,spark也会在在HDFS上直接计算,这是速度会有所下降,保证节点数以及各节点内存,才能更好的发挥spark的计算优势。

三、 结果比对
根据上面我们实践的整合Spark VS Hive,sparksql执行速度比hive高5倍之多,如果对执行内存扩大,对spark相关参数调优,则会更快。由于spark把计算放到内存中,所以会比MR更快,当然当数据量大于执行节点内存时,spark也会在在HDFS上直接计算,这是速度会有所下降,保证节点数以及各节点内存充足,才能更好的发挥spark的计算优势。
在执行复杂统计分析时,完全可以使用Spark SQL来替代Hive,至少会提高几倍的速度,对于一些基于Hive统计应用,随着应用的增多,可能每天需要更多的离线运算,有些报表对于与执行效率也需要提高。除了对Hive查询语句进行优化之外,应该说优化空间不大,所以这个时候可以考虑使用Spark平台来实现统计分析,而且,Spark集群可以线性扩展,对于一些调优也更容易一些。另外,Spark的发展超级迅猛,新版本频繁发布,而且在后期的版本中还会在性能方面进行大幅改进。

Spark的这些事系列文章:
Spark的这些事<一>——Windows下spark开发环境搭建
Spark的这些事<二>——几个概念
Spark的这些事<三>——spark常用的Transformations 和Actions
Spark的这些事<四>——SparkSQL功能测试结果

文章来源: dataclub.blog.csdn.net,作者:数据社,版权归原作者所有,如需转载,请联系作者。

原文链接:dataclub.blog.csdn.net/article/details/53641726

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。