mapjoin
原理:mapjoin把小表全部读入内存中,在map阶段拿大表数据和小表数据做匹配。没有shuffle过程,没有倾斜
jdbc:hive2://> SET hive.auto.convert.join=true; jdbc:hive2://> SET hive.mapjoin.smalltable.filesize=600000000; --设置小表大小
场景:1、关联操作中小表+大表,小表在前
select f.a,f.b from A t join B f on(f.a=t.a and f.ftime=20111212);
2、不等值连接操作
select A.a ,A.b from A join B where A.a>B.a;