Hadoop1.x版本和Hadoop2.x版本架构原理

本文介绍了Hadoop MapReduce的架构原理,对比了1.x和2.x版本的区别。在1.x中,JobTracker承担资源调度和任务管理,存在单点故障问题。2.x引入YARN资源调度器,将资源管理和任务调度分离,解决了单点故障,允许不同计算框架共存。执行过程包括客户端提交作业,ResourceManager分配资源,ApplicationMaster协调任务执行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MapReduce 1.x 架构

MapReduce 1.x 采用 Master/Slave 架构,由全局唯一的 Jobtracker 和多个 TaskTacker 组成,并且在Client中提供一系列的api供编程和管理使用。

1.client

提供api供用户编程调用,将用户编写的MapReduce程序提交到JobTracker中。

2. JobTracker

  1. 负责资源调度 主节点 发生故障整个集群瘫痪
  2. 负责任务调度,主节点
    存在的问题
    负载过高,容易故障
    与MR耦合度太高,如果Spark也要运行在这一框架上,需要自己去实现,这个集群就存在两套资源调度器,存在资源隔离问题以及资源掠夺问题。。
    全局唯一,主要负责集群资源监控和作业调度。JobTracker会对集群中所有的TaskTracker进行监控,一旦TaskTracker出现宕机、失败等情况,JobTracker中的调度器会将原来在这个TaskTracker上面执行的任务转移到其他的节点上面继续执行。当有新的作业进入到集群中时,调度器会根据资源的使用情况合理的分配这些作业。并且JobTracker中的调度器是可以插拔的,这意味着用户可以根据自己的需要,自定义作业和集群的调度方法。但是JobTracker存在单点故障的问题,一旦JobTracker所在的机器宕机,那么集群就无法正常工作。

3.TaskTracker

TaskTracker使用 “slot” 对本节点的资源(cpu、内存、磁盘等)进行划分,负责具体的作业执行工作。TaskTracker需要周期性向JobTracker汇报本节点

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值