再写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上

  

了解MapReduce_2的更多相关文章

  1. 【合集】Hadoop 合集

    0. 说明 Hadoop 随笔的目录 1. HDFS 主要内容: [HDFS_1] HDFS 的概念和特性 [HDFS_2] HDFS 的 Shell 操作 [HDFS_3] HDFS 工作机制 [H ...

随机推荐

  1. Docker相关连接

    docker-compose文档:https://docs.docker.com/compose/compose-file/ dockerfile文档:https://docs.docker.com/ ...

  2. [翻译] LTInfiniteScrollView

    LTInfiniteScrollView 效果: Usage - 使用 Create the scroll view by: 通过以下方式来创建出scroll view self.scrollView ...

  3. Axure RP 8 V1.6 授权码

    原文链接:https://blog.csdn.net/love_xiaozhao/article/details/81085500 可使用的: Axure RP 8.1.0.3377—-亲测可用Lic ...

  4. Django路由系统---Django重点之url别名

    django重点之url别名[参数名必须是name,格式是name="XXX] 不论后台路径如何进行修改路径,前台访问的路径不变,永远是alias, 这样方便开发 前台根据 {{ url & ...

  5. Excel工资表

  6. The good life is one inspired by love and guided by knowledge

    The good life is one inspired by love and guided by knowledge 伯特兰·罗素Bertrand Russell18721970 I can a ...

  7. Codeforces Round #440 (Div. 2)【A、B、C、E】

    Codeforces Round #440 (Div. 2) codeforces 870 A. Search for Pretty Integers(水题) 题意:给两个数组,求一个最小的数包含两个 ...

  8. win10 系统下获取系统版本号为6.2的问题

    近期赶时髦升级了win10,用着挺爽.但是某天在测试一个bug时发现要对win10做特殊处理,于是直接调用了GetVersionEx,并取出版本号进行判断,但是发现得到的版本竟然是6.2.当时就被雷到 ...

  9. Apollo2.5 CANBUS调试笔记(测试版)

    前言:CANBUS是Apollo需要根据你的底盘写代码的地方,感觉也是Apollo最难调试的部分.这部分首先要选好CAN卡,因为不是Apollo推荐的CAN卡,驱动程序和对应接口,可能都需要自己调整, ...

  10. [译] MVP模式的14条规则

    笔者在前文<MVP和MVC>中提到了两者的区别,以及MVP日趋流行的原因:即随着各种给力UI框架的发布,View的功能越来越强,已经足以完成一些简单的不需要与后台或其他view交互的eve ...