Hive的三种join
作者:互联网
Hive中就是把Map,Reduce的Join拿过来,通过SQL来表示。
参考链接:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Joins
1.Reduce /Common/Shuffle Join
Reduce Join在Hive中也叫Common Join或Shuffle Join
如果两边数据量都很大,它会进行把相同key的value合在一起,正好符合我们在sql中的join,然后再去组合,如图所示。
2.Map Join
1) 大小表连接:
如果一张表的数据很大,另外一张表很少(<1000行),那么我们可以将数据量少的那张表放到内存里面,在map端做join。
Hive支持Map Join,用法如下
工作中遇到:一张大事实表left join一张维表,把维表+mapjoin写进去
--使用mapjoin
SELECT /*+ mapjoin(B) */ P1
标签:Map,join,Reduce,Hive,mapjoin,三种,Join 来源: https://blog.csdn.net/someInNeed/article/details/115260865