我在搜索hadoop和mapreduce关于散乱问题和这个问题的论文但是昨天我发现有一个Hadoop2和Yarn,,不幸的是,没有一篇论文讨论Yarn中的散乱问题所以我想知道mapreduce和part-straggler中的yarn有什么区别?Yarn是否有掉线问题?当mrmaster向resource manager请求资源时,resource manager会给mrmaster它所需要的所有资源,或者它是根据集群计算能力来提供的?非常感谢,,
u0sqgete1#
以下是mapreduce 1.0和mapreduce 2.0(Yarn)mapreduce 1.0版在典型的hadoop集群中,机架通过核心交换机互连。核心交换机应连接到机架顶部交换机使用hadoop的企业应考虑使用10gbe、绑定以太网和冗余机架顶部交换机,以降低发生故障时的风险。默认情况下,文件被分成64mb的块,并分布在数据节点上。每个区块都有一个默认的复制因子3,这意味着在任何给定的时间都有3个数据副本。hadoop是“机架感知”的,hdfs在不同机架上的节点上复制了块。jobtracker根据节点的位置将任务分配给离数据最近的节点,并帮助namenode在读取期间确定离客户端最近的块。管理员提供一个脚本,告诉hadoop节点所在的机架,例如:/enterprisedatacenter/rack2。mapreduce 1.0的局限性—hadoop可以扩展到4000个节点。当它超过这个限制时,就会引发不可预测的行为,例如级联故障和整个集群的严重恶化。另一个问题是多租户——在hadoop集群上运行mapreduce1.0以外的框架是不可能的。mapreduce 2.0版MapReduce2.0有两个组件—具有群集资源管理功能的yarn和mapreduce。在mapreduce 2.0中,jobtracker分为三个服务:resourcemanager,一种持久性服务,用于接收和运行集群上的应用程序。mapreduce作业是一个应用程序。jobhistoryserver,提供有关已完成作业的信息应用程序主机,用于管理每个mapreduce作业,并在作业完成时终止。tasktracker已经被nodemanager所取代,nodemanager是一种管理节点上的资源和部署的服务。nodemanager负责启动可以是map或reduce任务的容器。这种新的体系结构打破了jobtracker模型,它允许一个新的resourcemanager跨应用程序管理资源使用,由应用程序管理员负责管理作业的执行。这一变化消除了瓶颈,并允许hadoop集群扩展到比4000个节点更大的配置。该体系结构还允许同时执行各种编程模型,如图形处理、迭代处理、机器学习和通用集群计算,包括传统的mapreduce。
mm5n2pyu2#
如果说“掉队者”问题,你的意思是如果第一个家伙等待“某物”,那么在一条依赖于第一个家伙的道路上会导致更多的等待,那么我猜乔布斯先生总是有这个问题。获取分配的资源自然会与所有其他可能导致组件等待的事情一起参与到这个问题中。tez被认为是mr job runtime的替代品,它让事情变得不同。与当前的appmaster运行任务的方式不同,appmaster尝试使用任务的dag,这在避免陷入糟糕的散乱问题方面做得更好。你需要了解mr和yarn之间的关系。yarn只是一个虚拟的资源调度程序,这意味着它不调度“任务”。它提供给mr appmaster的是一组或多个资源(从某种意义上说,它只是内存、cpu和位置的组合)。那么,appmaster先生就有责任决定如何处理这些资源。
f1tvaqid3#
你说“mapreduce和yarn的区别”。mapreduce和yarn绝对不同。mapreduce是一种编程模型,yarn是分布式集群的体系结构。hadoop2使用yarn进行资源管理。除此之外,hadoop还支持支持并行处理的编程模型,我们称之为mapreduce。在hadoop2之前,hadoop已经支持mapreduce了。简言之,mapreduce运行在yarn架构之上。对不起,我没有提到掉队的问题。“当mrmaster向资源经理请求资源时?”当用户提交mapreduce作业时。mapreduce作业完成后,资源将恢复为可用。“资源管理器将给mrmaster它所需要的所有资源,或者它是根据集群计算能力”我不明白这个问题的要点。显然,无论集群计算能力如何,资源管理器都会提供它所需要的所有资源。集群计算能力将影响处理时间。
jum4pzuy4#
mapreduce 1中没有Yarn。在mapreduce中有Yarn。
4条答案
按热度按时间u0sqgete1#
以下是mapreduce 1.0和mapreduce 2.0(Yarn)
mapreduce 1.0版
在典型的hadoop集群中,机架通过核心交换机互连。核心交换机应连接到机架顶部交换机使用hadoop的企业应考虑使用10gbe、绑定以太网和冗余机架顶部交换机,以降低发生故障时的风险。默认情况下,文件被分成64mb的块,并分布在数据节点上。每个区块都有一个默认的复制因子3,这意味着在任何给定的时间都有3个数据副本。hadoop是“机架感知”的,hdfs在不同机架上的节点上复制了块。jobtracker根据节点的位置将任务分配给离数据最近的节点,并帮助namenode在读取期间确定离客户端最近的块。管理员提供一个脚本,告诉hadoop节点所在的机架,例如:/enterprisedatacenter/rack2。
mapreduce 1.0的局限性—hadoop可以扩展到4000个节点。当它超过这个限制时,就会引发不可预测的行为,例如级联故障和整个集群的严重恶化。另一个问题是多租户——在hadoop集群上运行mapreduce1.0以外的框架是不可能的。
mapreduce 2.0版
MapReduce2.0有两个组件—具有群集资源管理功能的yarn和mapreduce。
在mapreduce 2.0中,jobtracker分为三个服务:
resourcemanager,一种持久性服务,用于接收和运行集群上的应用程序。mapreduce作业是一个应用程序。
jobhistoryserver,提供有关已完成作业的信息
应用程序主机,用于管理每个mapreduce作业,并在作业完成时终止。
tasktracker已经被nodemanager所取代,nodemanager是一种管理节点上的资源和部署的服务。nodemanager负责启动可以是map或reduce任务的容器。
这种新的体系结构打破了jobtracker模型,它允许一个新的resourcemanager跨应用程序管理资源使用,由应用程序管理员负责管理作业的执行。这一变化消除了瓶颈,并允许hadoop集群扩展到比4000个节点更大的配置。该体系结构还允许同时执行各种编程模型,如图形处理、迭代处理、机器学习和通用集群计算,包括传统的mapreduce。
mm5n2pyu2#
如果说“掉队者”问题,你的意思是如果第一个家伙等待“某物”,那么在一条依赖于第一个家伙的道路上会导致更多的等待,那么我猜乔布斯先生总是有这个问题。获取分配的资源自然会与所有其他可能导致组件等待的事情一起参与到这个问题中。
tez被认为是mr job runtime的替代品,它让事情变得不同。与当前的appmaster运行任务的方式不同,appmaster尝试使用任务的dag,这在避免陷入糟糕的散乱问题方面做得更好。
你需要了解mr和yarn之间的关系。yarn只是一个虚拟的资源调度程序,这意味着它不调度“任务”。它提供给mr appmaster的是一组或多个资源(从某种意义上说,它只是内存、cpu和位置的组合)。那么,appmaster先生就有责任决定如何处理这些资源。
f1tvaqid3#
你说“mapreduce和yarn的区别”。mapreduce和yarn绝对不同。mapreduce是一种编程模型,yarn是分布式集群的体系结构。hadoop2使用yarn进行资源管理。除此之外,hadoop还支持支持并行处理的编程模型,我们称之为mapreduce。在hadoop2之前,hadoop已经支持mapreduce了。简言之,mapreduce运行在yarn架构之上。对不起,我没有提到掉队的问题。
“当mrmaster向资源经理请求资源时?”当用户提交mapreduce作业时。mapreduce作业完成后,资源将恢复为可用。
“资源管理器将给mrmaster它所需要的所有资源,或者它是根据集群计算能力”我不明白这个问题的要点。显然,无论集群计算能力如何,资源管理器都会提供它所需要的所有资源。集群计算能力将影响处理时间。
jum4pzuy4#
mapreduce 1中没有Yarn。在mapreduce中有Yarn。