zoukankan      html  css  js  c++  java
  • 了解MapReduce

    再写MapReduce执行流程之前,首先先对MapReduce有一些了解:

    1. 简介
      MapReduce是一个计算框架,既然是做计算的框架,那么表现的形式上就有输入,操作输入,得到结果
    2.主从结构
      a.Hadoop1.0
        
    MapReduce是主从结构,Hadoop1.0的主是JobTracker,从TaskTracker。
          JobTracker作用 : 作业的管理者,将作业分解成一堆的任务(task),其中任务又分为MapTask和ReduceTask。将任务分派给TaskTracker运行。作业的监控,容错处理,在一定时间的间隔内,JT没有收到TT的心跳信息,那么说明TT很有可能是挂了,TT上运行的任务会被指派到其他的TT上去执行。
          TaskTracker作用 : 任务的执行者,在TT上运行task。会与JT进行交互:执行/启动/作业,发送心跳信息给JT。
          MapTask作用 : 自己开发的map任务交由task进行处理。解析每条记录的数据,交给自己的map方法处理。将map的输出结果写到本地磁盘。
          ReduceTask作用 : 将map task输出的数据进行读取。按照数据进行分组传给编写的reduce方法处理。输出结果写到HDFS。
      b.Hadoop2.0
       
     因为JobTracker单点故障,成为系统的瓶颈,限制系统进一步扩展,在Hadoop2.0引进Yarn,将MR运行于资源管理框架Yarn之上
          ResourceManager作用 : 负责调度分配每一个task任务运行于NodeManager上,如果发现有失败的,就重新分配任务到其他节点上,每一个Hadoop集群只有一个ResourceManager,一般运行在master节点
          NodeManager作用 : NodeManager主动与ResourceManager通信,接收作业,并负责执行每一个task任务,为了减少网络带宽,NodeManager最好运行在HDFS的DataNode上

    扫描关注,我们一起分享学习,回复'分享',会有惊喜等着你~

  • 相关阅读:
    django学习笔记
    django配置setting文件
    django用mysql数据库出现的问题解决
    hadoop本地集群搭建
    生成器
    Java自动装箱的陷阱
    LeetCode 89. Gray Code
    LeetCode 476. Number Complement
    Javac编译与JIT编译
    LeetCode 462. Minimum Moves to Equal Array Elements II
  • 原文地址:https://www.cnblogs.com/SmallBird-Nest/p/9052310.html
Copyright © 2011-2022 走看看