Hadoop 任务调度分析启动篇
来源:互联网 发布:阿里云服务器架设sf 编辑:程序博客网 时间:2024/05/22 01:53
学习hadoop已有一段时间, 从最初的搭建环境, 配置环境, 编写MapReduce应用, 到基于hive的查询, 慢慢的开始喜欢和习惯它的这种模式, 最近对hadoop集群环境运行原理很感兴趣, 很想知道它究竟是怎么做到这种分步式的运算与协调, 也很想能够从事这方面的工作. 学习了董西成的<<深入解析MapReduce架构设计与实现原理>>一书后, 慢慢的为我揭开了Hadoop的盖头, 通过分析源码的实现, 从中也深刻的体会到架构设计的美, 配置的灵活, 构思的巧妙. 本篇主要针对Hadoop的核心--任务调度进行分析, 通过代码的分析, 去理解它的设计,这是一种深入学习hadoop的方式.
在这里我使用的hadoop版本为1.1.2 , 针对任务调度主要会整理以下流程, 并去分析各个实现细节, 中间有错误和模糊的地方还请给予指摘, 欢迎交流.
我会以作业提交为起点进行分析:
一> 分析JobTracker的初始化工作和作业的提交和初始化过程,这主要观注于job初始化都做了那些事, 及状态的变化队列管理等.
二> 分析JobTracker的心跳接收与响应, TaskScheduler是如何组织和分配不同的TaskAction命令的, 都采用了那种分配策略.以及TaskTrackerStatus的在JT侧的更新.
三> 分析TaskTracker的的初始化与根据心跳应答启动Task, 这主要会分析任务的行为和启动过程分析.
四> 分析Task的执行过程和中间的一些细节.
五> 分析Task和Job的清理过程.
以上会重点关注任务的调度的分析, 这主要会分析CapacityTaskScheduler的实现. 通过以上的分析, 对于MapReduce应用的整个执行过程会有一个清晰的理解. 针对各个参数的配置会有更明确的理解.
这中间会分析一些hadoop内部使用的技术点
一> RPC的实现机制.
二> JvmManager的管理.
三> 资源管理的分配策略.
四> 安全管理.
特此声明: 本篇可能不会过多涉及hadoop的理论实现. 重点分析具体的代码实现及其细节.
如有了解的请参考hadoop官网, Hadoop权威指南和深入解析MapReduce架构设计与实现原理.
未完待续, 请关注下一篇!
- Hadoop 任务调度分析启动篇
- Hadoop调度源码分析 任务调度阶段
- Hadoop MapReduce任务的启动分析
- hadoop任务调度
- Mesos的分析4 --- 支持Hadoop任务级调度
- spark源码分析之任务调度篇
- UCOSII任务调度分析
- UCOSII任务调度分析
- skynet任务调度分析
- skynet任务调度分析
- skynet任务调度分析
- skynet任务调度分析
- skynet任务调度分析
- skynet任务调度分析
- hadoop的任务调度机制
- Hadoop MapReduce之任务调度
- Hadoop - 任务调度系统比较
- Hadoop - 任务调度系统比较
- 《存储网络技术及应用》 之 一 SNIA 共享存储模型
- 黑马程序员-与你同在
- 《存储网络技术及应用》 之 二 SCSI 总线和协议
- 如何在添加新的系统菜单项CMenu
- nginx核心模块内置变量
- Hadoop 任务调度分析启动篇
- SGU 532 Building Foundation(枚举)
- OpenCV检测运动物体的基础_特征提取
- Toll-free bridging介绍
- Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?
- hdu 4427 Math Magic(DP)
- ZOJ 3278: 8G Island
- 如何查看linux系统中linux,apache,nginx,mysql,php版本
- 8×8棋盘 源代码