MapReduce任务学习系列

Posted hopkinscybn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MapReduce任务学习系列相关的知识,希望对你有一定的参考价值。

首先放一张官方图片,大致了解下整个MapReduce的处理过程。

技术分享图片

抛出如下疑问:

1、MapReduce的基本原理是什么?即利用什么机制来实现的任务拆分处理?

2、MapReduce任务执行过程是什么?任务怎么提交?如何运行?哪个组件或者模块可以监控任务的运行状态,比如YARN服务?数据存储(原始数据、中间数据、输出结果)依赖什么基础构件?

3、输入数据怎么进行切割分片?即所谓的input split,比如分割依赖数据输入和HDFS Block块大小,分割结果决定Map任务个数。

4、map过程如何实现?即所谓的map task;

5、map输出的过程是什么?输出的数据怎么存储的?如何提高输出时的性能?比如输出内容是否排序,如何存盘,如何处理可以更方便后续的reduce任务处理。

6、map输出数据到reduce的task过程中,数据是怎么汇聚起来的?即所谓的shuffle过程;

7、reduce任务怎么处理?输出结果的格式?比如是否需要压缩,以何种压缩方式压缩?

8、MapReduce任务的并行处理和串行处理?

9、MapReduce适用的场景是什么?

10、MapReduce的可靠性怎么处理?

11、源码分析

 

以上是关于MapReduce任务学习系列的主要内容,如果未能解决你的问题,请参考以下文章

hadoop系列三:mapreduce的使用

hadoop系列三:mapreduce的使用

Spark系列Shuffle的技术难点问题--Spark比MapReduce快的真正原因

大数据系列之分布式计算批处理引擎MapReduce实践-排序

Python开发MapReduce系列WordCount Demo

Lab1 MapReduce学习笔记