MapReduce_V1总结

1,执行过程。1.1,Map/Reduce Task任务分配。根据输入文件,基本上每个文件Block对应一个MapTask(也可能多对一),而Reduce Task则较少;1.2,Map Task 执行map函数。执行map函数得到Key/Value对;1.3,Partition过程。map函数输出的Key/Value要分配到Reduce Task,默认对Key/Value进行Hash
摘要由CSDN通过智能技术生成

1,执行过程。

1.1,Map/Reduce Task任务分配。根据输入文件,基本上每个文件Block对应一个MapTask(也可能多对一),而Reduce Task则较少;

1.2,Map Task 执行map函数。执行map函数得到Key/Value对;

1.3,Partition过程。map函数输出的Key/Value要分配到Reduce Task,默认对Key/Value进行Hash之后随机分配,也可以继承自定义实现,并提供给Job。Partition的结果缓存在一个默认100M的空间内;

1.4,Spill过程。当100M缓存空间利用率溢出80%的时候,后台线程启动将缓存空间内存写入到local file中。写入前,对序列化后的Key/Value执行Sort和Combine操作。Combine在Map Task执行,一般就是Reduce函数,要求输入/输出的Key/Value类型一致。

1.5,Merge过程。Spill过程一次溢出产生一个local file,当发生多次溢出的时候,会产生多个local file,需要对多个local file合并生成一个local file。该过程也会执行Combine函数。

-------

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值