Hadoop学习之路(七):理解Hadoop三大核心组件之MapReduce

一、MapReduce简介

MapReduce是一种编程模型,用于大规模数据集的并行运算,它是Hadoop的三大核心组件之一,承担着Hadoop的计算工作。概念"Map(映射)“和"Reduce(聚合)”,是这个编程模型的核心思想,它提供了一个庞大但设计精良的并行计算软件框架,能自动完成计算任务的并行化处理,自动划分计算数据和计算任务,在集群节点上自动分配和执行任务以及收集计算结果,将数据分布存储、数据通信、容错处理等并行计算涉及到的很多系统底层的复杂细节交由系统负责处理,大大减少了软件开发人员的负担。

二、MapReduce核心阶段

手绘了一张MapReduce执行简图:
在这里插入图片描述
MapReduce计算模型主要由三个核心阶段构成:Map、Shuffle、Reduce。Map是映射,Reduce是聚合,Shuffle是对Map的输出进行一定的排序与分割,然后再交给对应的Reduce的过程。

1. Map
  • 从HDFS读入切片数据,切片的数量在作业提交时由JobSummiter类决定,切片的数量即为Map的个数,切片法则是这样的:在1和long的最大值还有用户输入的切片大小之间选择中间那个值作为切片的大小,由切片大小结合数据量划分切片的数量。事实上我们并没有设置切片大小,因而默认为HDFS块大小,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值