set 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);


Set hive.exec.parallel=false;
当参数为false的时候,三个job是顺序的执行

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

 

总结:
在资源充足的时候hive.exec.parallel会让那些存在并发job的sql运行得更快,但同时消耗更多的资源。

posted @ 2018-07-17 15:00  静悟生慧  阅读(384)  评论(0编辑  收藏  举报