MapReduce 1.x 及 2.x 架构解读

本文介绍了MapReduce 1.x的Master/Slave架构,包括JobTracker、TaskTracker和Client的角色,以及Map Task和Reduce Task的工作流程。接着,探讨了MapReduce 2.x(YARN架构)的改进,如何通过拆分JobTracker为ResourceManager和ApplicationMaster,解决单点故障问题,以及NodeManager和Container在YARN中的作用。
摘要由CSDN通过智能技术生成

MapReduce 1.x 架构

这里写图片描述
MapReduce 1.x 采用 Master/Slave 架构,由全局唯一的 Jobtracker 和多个 TaskTacker 组成,并且在Client中提供一系列的api供编程和管理使用。其中各个组件的作用是:

1. JobTracker

全局唯一,主要负责集群资源监控和作业调度。JobTracker会对集群中所有的TaskTracker进行监控,一旦TaskTracker出现宕机、失败等情况,JobTracker中的调度器会将原来在这个TaskTracker上面执行的任务转移到其他的节点上面继续执行。当有新的作业进入到集群中时,调度器会根据资源的使用情况合理的分配这些作业。并且JobTracker中的调度器是可以插拔的,这意味着用户可以根据自己的需要,自定义作业和集群的调度方法。但是JobTracker存在单点故障的问题,一旦JobTracker所在的机器宕机,那么集群就无法正常工作。这也是 MapReduce 2.x 所要解决的主要问题之一。

2. TaskTracker

TaskTracker使用 “slot” 对本节点的资源(cpu、内存、磁盘等)进行划分,负责具体的作业执行工作。TaskTracker需要周期性向JobTracker汇报本节点的心跳信息,包括自身运行情况、作业执行情况等,JobTracker中的调度器会根据心跳信息对其分配“slot”,TaskTracker获得slot之后,就开始执行相应的工作。其中 slot 有两种&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值