hadoop的基础学习-map reduce原理(二)
来源:互联网 发布:sql面试 编辑:程序博客网 时间:2024/05/19 18:18
一 map Reduce原理:
e.JobClient的sunbmitJob()方法中,告诉jobtracker作业准备执行;
3.job Tracker 协助作业的运行
作业的初始化:
a.JobTracker接收到对submitJob()方法的调用后,会把此调用放入一个内部的队列中,交由作业调度器进行调度,并对其进行初始化。
b. 初始化包括创建一个代表该正在运行的作业的对象,它封装任务和记录信息,以便跟踪任务的状态和进程;
要创建运行任务列表,作业调度器首先从共享文件系统中获取JobClient己计算好的输入划分信息。
c. 然后为每个划分创建一个map任务。
d. 创建的reduce任务的数量由JobConf的mapred.reduce.tasks属性决定,它用serNumReduceTasks()方法来设置的,然后调度器便创建那么多reduce任务来运行。
任务的分配:
a. TaskTracker执行一个简单的循环,定期发送心跳(heartbeat)方法调用Jobtracker。
b.。心跳方法告诉jobtracker,tasktracker是否还存活,同时也充当两者之间的消息通道。作为心跳方法调用的一部份,tasktracker会指明它是否已经准备运行新的任务,如果是,jobtracker会为它分配一个任务,并使用心跳方法的返回值与tasktracker进行通信;
4. tasktracker运行作业划分后的任务
通过tasktracker本地化作业的JAR文件,将它从共享文件系统复制到tasktracker所在的文件系统。同时将应用程序所需要的全部文件从分布式缓存复制到本地磁盘;
为任务新建一个本地工作目录,并把JAR文件中的内容压缩到这个文件夹下;
新建一个TaskRunner实例来运行任务;
5.在以上所有过程的操作中,分布式文件系统(HDFS)被用来实现他们的作业文件的共享。
任务失败原因:
jobtracker失败
MapReduce的作业调度:
1. FIFO算法(first In First Out),即所有的用户作业都被提交到一个队列中,然后由JobTracker按照作业的优先级(比如提交时间的先后顺序)选择将被执行的作业。该算法的具体实现是JobQueueTaskScheduler。
当一个tasktracker工作的游刃有余,期待获得新的任务的时候,
JobQueueTaskScheduler会按照各个作业的优先级,从最高优先级的作业开始分配任务,选择任务的基本次序是:
a.Map任务服务器的清理任务,用于清理相关的过期的文件和环境;
b. Map任务服务器的安装任务,负责配置好相关的环境;
c. Map Tasks
d.Reduce Clean Up Task
e. Reduce Setup Task
f.Reduce Tasks
- hadoop的基础学习-map reduce原理(二)
- 【hadoop】Hadoop学习笔记(二):从map到reduce的数据流
- Hadoop Map/Reduce 原理
- Hadoop--map-reduce原理
- Hadoop学习笔记(二)——map reduce Helloworld
- hadoop Map Reduce 原理(转载)
- Hadoop学习笔记(Map-Reduce的工作、调度机制)
- 【Hadoop学习】之Map-Reduce(一)
- Hadoop Map/Reduce InputFormat基础
- hadoop学习笔记<四>----map-reduce工作原理
- hadoop 学习之Map/Reduce
- Hadoop学习:Map-Reduce入门
- Hadoop Map-Reduce入门学习
- Hadoop :Map/Reduce的理解
- Hadoop Map/Reduce的工作流
- Hadoop平台的map-reduce
- Hadoop的Map-Shuffle-Reduce
- Hadoop跑map-reduce任务时停滞不前的问题(二)
- 问:怎么回收drop掉一个表的空间
- 12-动画光标(鼠标样式)
- 建立4C标准的电子商务网站
- Linux系统的shell是什么
- 从PowerDesigner概念设计模型(CDM)中的3种实体关系说起
- hadoop的基础学习-map reduce原理(二)
- 培训官赵敏:学员就是我们的产品[摘自上海科技报]
- 13-应用删除线标记商品特价(文字及列表样式)
- 高级Bash脚本编程指南(31):数学计算命令
- NetworkX学习笔记-4-NetworkX输出Gephi文件的方法
- 《一个程序员的奋斗史》正式上架~
- Play Framework系列(1)_Play Framework 2.0 简单使用手册
- 计算机科学中最重要的32个算法(转)
- 14-在文字上方标注说明标记(文字及列表样式)