尚硅谷大数据技术之Hadoop(MapReduce) 第3章 MapReduce框架原理2.0

第3章 MapReduce框架原理2.0

3.7.3 Map Join

1.使用场景

Map Join适用于一张表十分小、一张表很大的场景。

2.优点

思考:在Reduce端处理过多的表,非常容易产生数据倾斜。怎么办?

在Map端缓存多张表,提前处理业务逻辑,这样增加Map端业务,减少Reduce端数据的压力,尽可能的减少数据倾斜。

3.具体办法:采用DistributedCache

(1)在Mapper的setup阶段,将文件读取到缓存集合中。

(2)在驱动函数中加载缓存。

//缓存普通文件到Task运行节点。

job.addCacheFile(new URI("file://e:/cache/pd.txt"));

3.7.4 Map Join案例实操

尚硅谷大数据技术之Hadoop(MapReduce) 第3章 MapReduce框架原理2.0_第1张图片
尚硅谷大数据技术之Hadoop(MapReduce) 第3章 MapReduce框架原理2.0_第2张图片
尚硅谷大数据技术之Hadoop(MapReduce) 第3章 MapReduce框架原理2.0_第3张图片
尚硅谷大数据技术之Hadoop(MapReduce) 第3章 MapReduce框架原理2.0_第4张图片
尚硅谷大数据技术之Hadoop(MapReduce) 第3章 MapReduce框架原理2.0_第5张图片
尚硅谷大数据技术之Hadoop(MapReduce) 第3章 MapReduce框架原理2.0_第6张图片
尚硅谷大数据技术之Hadoop(MapReduce) 第3章 MapReduce框架原理2.0_第7张图片
尚硅谷大数据技术之Hadoop(MapReduce) 第3章 MapReduce框架原理2.0_第8张图片


本教程由尚硅谷教育大数据研究院出品,如需转载请注明来源,欢迎大家关注尚硅谷公众号(atguigu)了解更多。(大数据培训).

你可能感兴趣的:(尚硅谷大数据技术之Hadoop(MapReduce) 第3章 MapReduce框架原理2.0)