如果不指定MapJoin或者不符合MapJoin的条件,那么Hive解析器会将Join操作转换成Common Join,即:在Reduce阶段完成join。容易发生数据倾斜。可以用MapJoin把小表全部加载到内存在map端进行join,避免reducer处理
开启MapJoin参数设置
设置自动选择Mapjoin( 默认为true):set hive.auto.convert.join = true;
大表小表的阈值设置(默认25M一下认为是小表):set hive.mapjoin.smalltable.filesize=25000000;
HIVE调优之MapJoin
原文:https://www.cnblogs.com/xiangyuguan/p/11411265.html