hadoop优化——HDFS优化,MapReduce优化,MapReduce中实现Join操作

HDFS优化

MapReduce优化

MapReduce中实现Join操作

Map join:适合小文件和大文件的join

Join过程发生在Map端

每个Map  task都可以直接读取到小文件内容 与大文件的每一个块进行join.

分布式join

小文件:文件大小 < 1个块的大小

Reduce join

join过程发生在Reduce

目标数据:

map端

读取2个文件,打标签,2个文件有主外键关系

shuffle

主键为key,剩余值为value

reduce端

判定每一条记录,

先取出标签的数据:只有一条

然后取出剩余数据,进行字符串拼接

Semi join:Map和Reduce都有

(1)将不需要join的数据在Map端直接过滤掉

将主表A中所有ID放入缓存(分布式缓存)

取出B表的每个Id,判定B的id是在分布式缓存中存在,如果不存在,直接过滤掉

(2)reduce 端join

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无名一小卒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值