大数据项目-5.hadoop(五.yarn)

一:为什么学习yarn?

在前几篇中,我们学习了,hdfs用来存储数据。学习了map-reduce用来计算数据。但是,缺乏一个组织者。任务的安排者,所以,出现了yarn进行资源的分配的任务的分配。

二:什么是yarn?

1.0 yarn

  1. Client
    发送MR任务到集群
  2. JobTracker
    1. 接受client任务,并分配资源。
    2. 保持和TaskTracKer的心跳。
  3. TaskTracker
    1. 当分配资源之后,开始在本机分配对应的资源给Task。
    2. 并且实时监控任务的执行,并汇报。
    3. 和JobTracker保持心跳机制
  4. Task
    1. 任务。

2.0 yarn

大数据项目-5.hadoop(五.yarn)_第1张图片

(1)为什么出现2.0?

  1. 因为1.0只能执行mr的任务,无法水平扩展执行其他任务。例如spark和flink。
  2. 如果执行任务多,JobTracker压力过大,可能会宕机,导致任务时间较慢。

(2)2.0版本包含哪些内容?

  1. client
    1. 客户端发送mr任务到集群
    2. 客户端的种类有很多种
  2. ResourceManager
    1. 资源协调框架的管理者。
    2. 分为主节点和备用节点(防止单点故障)- 主备的切换基于Zookeeper进行管理。
    3. 时刻与NodeManager保持心跳,接受NodeManager的汇报- NodeManager汇报当前节点的资源情况
  3. NodeManager
    1. 资源协调框架的执行者。
    2. NodeManager汇报自己的信息到ResourceManager。
  4. Container
    1. 资源的代名词- Container动态分配的。
  5. ApplicationMaster
    1. 我们本次JOB任务的主导者- 负责调度本次被分配的资源Container- 当所有的节点任务全部完成,application告诉ResourceManager请求杀死当前ApplicationMaster线程- 本次任务所有的资源都会被释放。
  6. Task(MapTask–ReduceTask)
    1. 开始按照MR的流程执行业务- 当任务完成时,ApplicationMaster接收到当前节点的回馈。

你可能感兴趣的:(大数据项目,yarn,hadoop,大数据)