文章目录
hive企业级调优
hive调优学习
一、explain
1、explain
2、explain extened
二、fetch
设置是否走mr
三、本地模式
set.hive.exec.mode.local.auto=true
四、表优化
1、小表 join 大表 (map join)
2、大表 join 大表
- Left、right join等 空key过滤,inner join不需要
- 空key赋值随机数,随机数保证不符合join条件
- SMB(sort Merge Bucket join)
3、GROUP BY 数据倾斜
- map端预聚合操作
4、COUNT(DISTINCT)
- grouby 嵌套子查询去重
5、避免笛卡尔积
6、分区、分桶
7、过滤非必要数据
8、小文件合并
9、合理设置map、reduce的任务数量
10、任务阶段无依赖并行执行
11、严格模式
- 开启严格模式,查询分区必须添加分区过滤条件
- 开启limit限制,查询时必须添加limit数量
- 关闭笛卡尔积,查询时不许添加join条件
五、JVM重用
小文件时使用
六、引擎优化
tez:优化不完全依赖于磁盘