reduce端的join算法:
例子:
商品表数据 product:
pidp0001,小米5,1000,2000p0002,锤子T1,1000,3000订单表数据 order:
pid1001,20150710,p0001,21002,20150710,p0002,31002,20150710,p0003,3mapReduce可以实现sql语句的功能:select 。。。。。。from product p left join order o on p.pid = o.pid
思路:将关联的条件作为map输出的key。
缺点:这种方式中,join的操作是在reduce阶段完成,reduce端的处理压力太大,map节点的运算负载则很低,资源利用率不高,且在reduce阶段极易产生数据倾斜。
替代解决方案: map端join实现方式。
详见代码