WordCount程序运行流程分析
2017-03-13 15:51
330 查看
在job.submit()时,客户端会去查看输入文件的规模,并根据输入的文件规模决定使用多少个MapperTask来运行Job。同时还会进行任务的规划,划分具体哪个MapTask处理哪个数据文件的具体范围。
等到Job被提交给YARN集群后,ResourceManager会根据当前集群中各节点的情况,选择一台机器启动MR Appmaster,并把Job相关的信息都交给MR Appmaster。然后MR Appmaster就根据任务的分片及数据的分布情况启动对应的MapTask。
然后MapTask就调用InputFormat组件去读取对应的文件,每读取一行就调用Mapper中的map方法。
Mapper输出结果后交给OutputCollector,将数据收集后放入分区且排序的文件中。
等到MapTask全都运行完后再启动ReduceTask。ReduceTask从各个节点的OutputCollector中取属于自己的分区数据。按照key分类,一组调用一次Reducer类中的reduce方法。
然后reduce方法会输出,调用OutputFormat最终写入HDFS中。每一个ReduceTask的输出分到一个Part中。
示意图如下所示:
等到Job被提交给YARN集群后,ResourceManager会根据当前集群中各节点的情况,选择一台机器启动MR Appmaster,并把Job相关的信息都交给MR Appmaster。然后MR Appmaster就根据任务的分片及数据的分布情况启动对应的MapTask。
然后MapTask就调用InputFormat组件去读取对应的文件,每读取一行就调用Mapper中的map方法。
Mapper输出结果后交给OutputCollector,将数据收集后放入分区且排序的文件中。
等到MapTask全都运行完后再启动ReduceTask。ReduceTask从各个节点的OutputCollector中取属于自己的分区数据。按照key分类,一组调用一次Reducer类中的reduce方法。
然后reduce方法会输出,调用OutputFormat最终写入HDFS中。每一个ReduceTask的输出分到一个Part中。
示意图如下所示:
相关文章推荐
- 【学习笔记】用Hadoop在MapReduce中WordCount简单程序运行详细流程
- Hadoop MapReduce基于新API的WordCount程序运行过程分析
- Hadoop 下 WordCount 程序运行方法及过程分析
- hadoop初学之WordCount程序一步一步运行
- Hadoop的安装与配置及示例程序wordcount的运行
- 用命令行运行hadoop程序WordCount,编译hadoop程序报错
- ffplay程序运行流程分析
- Hadoop4Win + Eclipse 运行 WordCount 程序
- Hadoop提供了最简单的Map/Reduce编程实例WordCount,本文对该Demo的程序结构,以及Map/Reduce框架的注意事项,进行了分析。
- mfc,示例 ctrlbars 程序运行流程分析
- 运行hadoop的WordCount程序——编译,打包,运行
- ffplay程序运行流程分析
- Hadoop示例程序WordCount运行及详解
- WordCount工作流程分析与总结
- 在eclipse上运行MapReduce的wordcount程序所遇到的问题
- hadoop示例程序wordcount分析
- Hadoop0.20.2中wordcount程序分析
- hadoop示例程序wordcount的运行
- Hadoop示例程序WordCount运行及详解
- ubuntu系统下eclipse配置hadoop开发环境并运行wordcount程序