我对hadoop-2.x中的任务跟踪的位置有些困惑。
hadoop-1.x 中的守护程序是 namenode, datanode, jobtracker, taskracker and secondarynamenode
hadoop-2.x 中的守护程序是 namenode, datanode, resourcemanager, applicationmaster, secondarynamenode.
这意味着Jobtracker has split up into: resourcemanager and applicationmaster
那么 tasktracker
?
在纱线中(Hadoop 2中的新执行框架),MapReduce并不以前的方式存在。
纱是在集群上分配资源的更通用方法。ResourceManager,ApplicationMaster和NodeManager现在由新的纱线执行框架组成。NodeManager是每个节点上的守护程序,所以我想您可以说这取代了TaskTracker。但是现在,它只是提供过程,而不仅仅是映射任务并减少任务。
MapReduce仍然存在,但现在是纱线的"应用"。
这是对纱线的简介,它将更深入:http://hortonworks.com/blog/introducing-apache-hadoop-yarn/phe/p>
是的JobTracker被分为资源管理器和应用程序主。应用程序主根据提交的作业数量在一个或所有节点管理器实例上运行。因此,当作业提交时,资源经理会与一位自由节点经理人交谈,以充当应用程序主体,而该应用程序主体现在将成为工作跟踪器,而其他节点经理将成为他们执行Yarn Child的任务跟踪器。如果我错了。
纱线通过拆分工作跟踪器的功能来处理经典MR的缺陷
在1.x中的JobTracker的功能,即资源管理和作业计划/监视分为单独的守护程序。 -Global ResourceManager(RM)和Per-Application ApplicationMaster(AM)
ResourceManager-在Namenode跑步,即主侧
- 它在所有应用中分发资源
它有2个主要组件:调度程序和应用程序manager。
- 调度程序是纯计划程序
- applicationsmanager负责接受工作谋杀率
nodeManager-在数据台上运行- 是人均框架代理
- 它负责容器,监视其资源使用情况(CPU,内存,磁盘,网络)并将其报告给ResourceManager/Scheduler。
中央资源管理器和节点特定管理器一起称为YARN
中央资源管理器和节点特定管理器一起称为YARN
任务跟踪器已将 hadoop Yarn yarn 架构中的三个组件分为三个组件:资源管理器,应用程序管理器,应用程序管理器和应用程序Master。
纱线的基本思想是将资源管理和工作计划/监控的功能分为单独的守护程序。这个想法是要有一个全局 resourcemanager(rm)和 per-application applicationmaster (am)。应用程序要么是一项工作或工作。
ResourceManager 有两个主要组件:调度程序和 applicationsManager 。
Scheduler
负责将资源分配给受熟悉的能力,队列限制的各种运行应用程序等。在某种意义上,调度程序是纯调度程序,因为它不执行应用程序状态的监视或跟踪。
ApplicationsManager
负责接受工作 - 提取时间,协商第一个容器,以执行该应用程序特定的应用程序管理员,并提供用于在失败时重新启动ApplicationMaster容器的服务。
per-application ApplicationMaster
有责任从调度程序中谈判适当的资源容器,跟踪其状态并监视进度。
看文档链接
请查看此SE问题以获取更多详细信息。
YARN带给现有地图还原的额外好处是什么?
是的JobTracker被分为资源管理器和应用程序主体。应用程序主根据提交的作业数量在一个或所有节点管理器实例上运行。因此,当作业提交时,资源经理会与一位自由节点经理人交谈,以充当应用程序主体,而该应用程序主体现在将成为工作跟踪器,而其他节点经理将成为他们执行Yarn Child的任务跟踪器。在此处查找详细信息:http://ercoppa.github.io/hadoopinternals/hadooparchitectureoverview.html
namenode,datanode,resourcemanager,applicationmaster
您错过了Hadoop-2.x中的另一个守护程序,即NodeManager。这个守护程序在诸如TaskTracker之类的单个节点上运行。在启动时,此组件注册RM并发送有关节点上可用资源的信息。随后的NM-RM通信将提供有关容器状态的更新 - 在节点上运行的新容器,完整的容器等。
所以这就是发生的事情。RM将资源分配给工作。分配的节点之一的作用像应用程序主机,并与其他节点进行通信。现在,简单的术语您可以考虑应用程序Master是JobTracker,而所有其他程序都是任务流动器节点。RM可以免费为其他用户提供更多工作。现在,这就是MR V2的美感,您可以运行多个MR Jobs以及其他应用程序(例如Spark Jobs)在同一集群上。ResourceManage负责管理集群的管理,并为作业分配资源或节点,而分配的节点之一成为应用程序主。
shahzad
请记住以下比较Job Tracker = Resource Manager(Application Manager,称为容器0) 调度程序(FIFO,公平调度程序和容量调度程序)
TaskTracker = Node Manager
最初在HDPV1中提交工作时1.工作跟踪器有责任计算映射器和还原器的工作,监视死亡/实时任务跟踪器,重新播放映射器和还原器(如果失败)。
现在在HDPV2中提交工作
资源经理Java Process(与调度程序相同的Java Process Act)首先在任何节点上衍生应用程序管理器(也称为容器0),然后应用程序管理器读取作业代码并计算该作业所需的资源并索取资源从调度程序(还监视乔布斯队的资源有多少资源)。调度程序计算并为节点的名称提供给AM可以产生容器的位置。然后AM在这些节点上产生容器并监视它们。如果任何容器死亡,则是AM,它再次转到调度程序并进行谈判以获取更多资源。因此,JobTracker的工作分为AM和纱的调度程序。另请注意,提交的每个作业都会有一个新的AM,因此可以在群集上运行多个AM,但只有一个调度程序。AM是在节点管理器上产生的,并且在RM节点上启动了调度程序。
在Hadoop V2中,他们使用纱线框架来替换旧版本。Yarn具有中央资源管理器组件,该组件管理资源并将资源分配给应用程序。可以通过纱线在Hadoop上运行多个应用程序,所有应用程序都可以共享共同的资源管理。
http://saphanatutorial.com/how-yarn-overcomes-mapreduce-limitations-in-hadoop-2-0/
相关内容
- 没有找到相关文章
最新更新
- 新的r,抓取列值时,知道另一个
- 使用Accord.Video.FFMPEG,我得到了"parameter is not valid exception"。我该如何解决?
- c -如何获得exec()的输出?
- r语言 - 我如何将我的数据帧从宽格式转换为长格式,在不同的时间记录变量?
- 如何在boost multi_array容器中存储值?
- 单独的页面vs更新同一页面上的组件
- 如何创建唯一索引,这需要一组属性是唯一的?
- 如何触发按钮与键盘和活动
- 验证中的问题
- 在java中用空格替换撇号
- 将请求发送到多环境公共包中的适当API
- r语言 - 当变量由几个部分组成时,将 tibble 转换为长格式
- 返回填充空值的每个月的最新值
- 如何在循环内外使用来自user的输入变量
- 如何通过从网站的前端发出 ajax 请求(在同一域上内置 react )来获取 wordpress 中的当前用户 ID
- 标记器更改词汇表条目
- python请求和concurrent.futures问题
- 删除新提要中不存在的旧行
- 如何在颤振中将可变大小的小部件剪辑为固定大小?
- 限制安排数量
- 在r的嵌套列表内计算
- JavaScript使用自定义布尔值对日期排序
- Quarkus K8S操作器-运行测试时NoSuchField异常
- 从抓取数据中重新格式化字符串以满足关键字参数
- PHP setCookie的子域在前端不是相同的子域
- 如何更改Kubeflow管道循环运行的参数?
- 是否有一种方法可以有条件地注册类型作为.net依赖注入的回退?
- 是否有一个库来创建时间间隔来检查是否给定时间在python中命中它们
- Regex-空格无法获得整数值
- 模式改变时数据插入到增量表中
热门标签:
javascript python java c# php android html jquery c++ css ios sql mysql arrays asp.net json python-3.x ruby-on-rails .net sql-server django objective-c excel regex ruby linux ajax iphone xml vba spring asp.net-mvc database wordpress string postgresql wpf windows xcode bash git oracle list vb.net multithreading eclipse algorithm macos powershell visual-studio image forms numpy scala function api selenium