hive调优
1.mr tez spark 三种引擎的选择
2. 做map端join,把小表放入内存 /+MAPJOIN(t1)/
3.改变redice个数
参数一: hive.exec.reducers.bytes.per.reducer默认是1G
参数二: hive.exec.reducers.max默认999
修改两个参数控制reduce数量
Reduce个数=min(参数二, 总输入数据量/参数一)
4.map端合并
hive.map.aggr 默认是true
hive.groupby.mapaggr.checkinterval默认是100000
5.防止group by 数据倾斜
hive.gruopby.skewindata
会生成两个mr job
6.合并小文件
hive.merge.mapfiles=true是否合并map输出文件
hive.merge.mapredfiles=true是否合并reduce输出文件
hive.merge.size.per.task=256000000合并文件的大小 默认256000000
7.并行执行任务参数
hive.exec.parallel=true
缺点是大量占用资源