MapReduce 过程分析

hdfs 是分布式文件系统, yarn 类似于云 OS 资源管理器,用来调度各种资源。

mapreduce, spark, storm  是真正运行的进程,干活的,他们都是在 yarn 基础上。他们在运行时都需要调度各种数据资源和计算资源。

mapreduce 就是一个并行计算框架。可以处理日志解析,数据统计以及数据的分析挖掘。

下面分析下 mapreduce 的整个过程

1.  当一个文件提交后,需要将这个文件切分成一个个小的部分,供多个节点来处理。切分后得到的结果就是  <key,value> 对。

2. 上面的 key, value 对就作为输入传入了 map 接口。Map 框架会调用 map 函数处理 InputSplit 中的每个 key/value 对。

3. map 函数处理完成后的输出的 key/value 不需要与输入键具有相同的数据类型

4. map 后得到的数据都会根据输出 key,value 对的 key 进行分组聚合,并传递到 reduce 进行处理

5. map 后得到的数据要经过中间过程的处理,分为 3 个处理阶段: 洗牌 shuffle,排序和归约

6.  洗牌和排序是同时进行的

7. reduce 就是归约,会对 <key, list of values> 进行处理

猜你喜欢

转载自www.cnblogs.com/reycg-blog/p/9036193.html
今日推荐