• Hadoop ->> Name node/Data node和Job tracker/Task tracker的区别


    刚好看到关于Name node/Data node和Job tracker/Task tracker的解释,一开始有点混淆,以为说Job tracker必须运行在Name node上,他们俩有依赖或者从属关系。其实不是这样的。他们间的区别在于

    1)Name node/Data node是HTFS层面上的东西,是服务器角色;Job tracker/Task tracker是Hadoop任务调度的一部分,是一组任务;

    2)Name node负责的是如何将文件分割成多个HTFS文件块,交给MapReduce处理后存储到哪些Data node上,要复制到哪些Data node,所以这一切都是存储层面上的东西;而Job tracker是服务端应用程序和Hadoop之间通信的桥梁,客户端提交数据请求,由Job tracker决定执行计划,分配给不同的Task tracker任务的执行计划,每个Task tracker在它的Data node上要执行Map和Reduce函数。Job tracker还需要处理如果Task tracker没有响应这种failure的情况,如何通过指派Task给另一个Task tracker来重启Task。Job tracker和Task tracker又是通过心跳线来报告健康情况的。所以这样看,Job tracker就是一个调度器(scheduler),调度Task tracker的执行,而Task tracker又是另一个调度器,调度自己本机上的MapReduce任务运行。这就是一种典型的主从编程结构(MasterSlave)。虽然Task tracker每个节点只有一个,但是可以通过生成多少Java虚拟机(JVM)来执行多个Map和Reduce任务。

  • 相关阅读:
    EOJ 1822 Hanoi Tower IV
    Firefox,chrome,IE上传图片预览
    js保存,获取,删除cookie的操作
    jquery 特效
    SimpleDateFormat转换时间,12,24时间格式[转]
    javascript捕获页面窗口关闭事件
    [转]ajQuery的deferred对象详解
    iframe
    火狐路径问题
    JAVA折腾微信公众平台(Token验证)[转]
  • 原文地址:https://www.cnblogs.com/jenrrychen/p/4856990.html
Copyright © 2020-2023  润新知