hive的hive.exec.parallel参数说明

hive.exec.parallel参数控制在同一个sql中的不同的job是否可以同时运行,默认为false.

下面是对于该参数的测试过程:

测试sql:

select r1.a
from (
   select t.a from sunwg_10 t join sunwg_10000000 s on t.a=s.b) r1
   join
   (select s.b from sunwg_100000 t join sunwg_10 s on t.a=s.b) r2
   on (r1.a=r2.b);



1 当参数为false的时候,三个job是顺序的执行

set hive.exec.parallel=false;

2 但是可以看出来其实两个子查询中的sql并无关系,可以并行的跑

set hive.exec.parallel=true;



总结:
在资源充足的时候hive.exec.parallel会让那些存在并发job的sql运行得更快,但同时消耗更多的资源
可以评估下hive.exec.parallel对我们的刷新任务是否有帮助.

转自 http://www.oratea.net/?p=1377

猜你喜欢

转载自zhaomengsen.iteye.com/blog/2064052