MapReduce的计算流程

MR核心思想
本文阐述了MR(MapReduce)的核心思想,即通过分而治之的方法处理复杂算法问题,并详细介绍了MR计算流程,包括读取输入文件、Map阶段、分区、排序、规约、分组、Reduce阶段以及最终结果的保存。

MR的核心思想

【分而治之】:把一个复杂的算法问题分为等价的规模较小的若干部分,然后找出各部分的解,最后把各部分的解组成整个问题的解。

适合进行计算一些各Map之间关联度不大或者没有关联度的数据


MR计算流程(八步走)

图解

在这里插入图片描述

原理

  1. 读取输入文件(HDFS)内容,解析成key1、value1
  2. 【Map阶段】MapTask负责拆分,对输入的key1、value1调用map函数处理转换成新的key2、value2输出
  3. 【分区】对输出的key2、value2进行分区(默认只有一个分区)。一个分区对应一个Reduce
  4. 【排序】对不同分区的数据,按照key进行排序
  5. 【规约】进行规约(优化MR程序,提高效率)。一般都是使用默认的
  6. 【分组】将相同key值数据合并成一个集合,获得新的key2、value2集合
  7. 【Reduce阶段】ReduceTask负责合并,将key2、value2合并数据获得新的key3、value3
  8. 把reduce的输出保存到文件(HDFS)中
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值