大数据之Hive:企业级调优

企业级调优
1 Fetch抓取
2 本地模式
Hive可以通过本地模式在单台机器上处理所有的任务。对于小数据集,执行时间可以明显被缩短。
案例实操:
1)开启本地模式,并执行查询语句

hive (default)> set hive.exec.mode.local.auto=true; 
hive (default)> select * from emp cluster by deptno;
Time taken: 1.328 seconds, Fetched: 14 row(s)

2)关闭本地模式,并执行查询语句

hive (default)> set hive.exec.mode.local.auto=false; 
hive (default)> select * from emp cluster by deptno;
Time taken: 20.09 seconds, Fetched: 14 row(s)

3 表的优化
1) 小表、大表Join
2) 大表Join大表
3) MapJoin(小表join大表)
4) Group By
5 )Count(Distinct) 去重统计
6) 笛卡尔积
尽量避免笛卡尔积
7 )行列过滤
8) 动态分区调整
9) 分桶
10) 分区
4 合理设置Map及Reduce数
5 并行执行
6 严格模式
7 JVM重用
8 推测执行
9 压缩

执行计划(Explain)
2.案例实操
(1)查看下面这条语句的执行计划

hive (default)> explain select * from emp;
hive (default)> explain select deptno, avg(sal) avg_sal from emp group by deptno;

(2)查看详细执行计划

hive (default)> explain extended select * from emp;
hive (default)> explain extended select deptno, avg(sal) avg_sal from emp group by deptno;

猜你喜欢

转载自blog.csdn.net/weixin_43597208/article/details/113139095