我有点搞不清 YARN
以及 MR2
. 它们是一样的吗?我见过 YARN
作为在某些文档中运行分布式应用程序的平台,mapreduce作为分布式应用程序,这是什么意思?那是一辆汽车吗 MapReduce
由程序员构建的应用程序(例如: wordcount
程序)?我又一次看到了“写你自己的” YARN
这是什么意思?wordcount程序属于哪一类 YARN
应用程序或 MR2
应用程序?
请更正问题,如果它不在stackoverflow标准中,我试图表达我所有的怀疑。
2条答案
按热度按时间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
; 今天,这也包括apacheTez
还有ApacheSpark
,可以在YARN
.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应用程序。