Yarn和mr2有什么区别吗?

ffx8fchx  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(321)

我有点搞不清 YARN 以及 MR2 . 它们是一样的吗?我见过 YARN 作为在某些文档中运行分布式应用程序的平台,mapreduce作为分布式应用程序,这是什么意思?那是一辆汽车吗 MapReduce 由程序员构建的应用程序(例如: wordcount 程序)?我又一次看到了“写你自己的” YARN 这是什么意思?wordcount程序属于哪一类 YARN 应用程序或 MR2 应用程序?
请更正问题,如果它不在stackoverflow标准中,我试图表达我所有的怀疑。

6g8kf2rb

6g8kf2rb1#

YARN 以及 MR2 是相关的,但不一样。 MapReduce 是一种计算方法,在hadoop世界里, MapReduce 也是hadoop1.0的同义词;在hadoop 1.0中, MapReduce 为运行“mapreduce”(1.0)应用程序提供了资源管理和执行框架
在hadoop 2.0中,资源管理和执行框架被拆分为两个独立的实体, YARN (另一个资源谈判者)用于集群计算资源的通用资源管理系统,以及 MapReduce 2.0 (缩写为 MR2 )执行引擎。 MR2 是一个 YARN 应用
您可以编写一个基于“mapreduce”(2.0)的应用程序来运行 YARN 如果您在hadoop2.0集群上,并使用 Pig 或者 Hive 使用默认的执行引擎, MR2 ,它们将作为 MR2 上的应用程序 YARN hadoop2.0中这种分离的部分原因是允许除此之外的其他执行引擎 MR2 ; 今天,这也包括apache Tez 还有Apache Spark ,可以在 YARN .

jtoj6r0c

jtoj6r0c2#

在hadoop 2中首先引入了yarn。在hadoop 1中,单个名称节点管理hadoop集群的整个名称空间。随着yarn(另一个资源管理器)的引入,集群资源管理由yarn负责。
您可以假设yarn在hdfs之上运行,并且在yarn上运行不同的数据处理组件,如mapreduce和other。在hadoop1中,用户可以选择用java、python或其他使用流的脚本语言编写mapreduce程序,或者使用pig(一种数据转换语言)。无论使用哪种方法,基本上都依赖于mapreduce处理模型来运行。
除mapreduce外,Yarn还支持多种加工模型。其中一个最重要的好处是,我们不再局限于使用i/o密集型、高延迟的mapreduce框架。
现在你的问题是“编写你自己的Yarn应用程序”,这是什么意思?
现在我们可以在yarn上编写任何分布式应用程序。mr2是负责运行mapreduce框架的分布式应用程序之一,因此字数计算程序属于负责运行mapreduce框架的mr2应用程序。

相关问题