Hive性能调优之并行执行(3)

网友投稿 607 2022-05-30

Hive会将

一个查询转化成一个或者多个阶段

。这样的阶段可以是MapReduce阶段、抽样阶段、合并阶段、limit阶段。或者Hive执行过程中可能需要的其他阶段。默认情况下,Hive一次只会执行一个阶段。不过,某个特定的job可能包含众多的阶段,而这些阶段可能并非完全互相依赖的,也就是说

有些阶段是可以并行执行的

,这样可能使得整个job的执行时间缩短。不过,如果有更多的阶段可以并行执行,那么job可能就越快完成。

通过设置参数hive.exec.parallel值为true,就可以

开启并发执行

Hive性能调优之并行执行(3)

。不过,在共享集群中,需要注意下,如果job中并行阶段增多,那么集群利用率就会增加。

set hive.exec.parallel=true; //打开任务并行执行 set hive.exec.parallel.thread.number=16; //同一个sql允许最大并行度,默认为8。

1

2

当然,得是在系统资源比较空闲的时候才有优势,否则,没资源,并行也起不来。

本次关于Hive性能调优的分享就到这里了,喜欢的小伙伴们记得加关注哟。

Hive 应用性能调优

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:go开源项目filebrowser
下一篇:Netty源码面试实战+原理(一)-鸿蒙篇
相关文章