大数据之MapReduce和Yarn

举报
星辰大海眺望远方 发表于 2019/01/14 21:41:32 2019/01/14
【摘要】 MapReduce Yarn

MapReduce的定义

MapReduce是面向大数据并行处理的计算模型、框架和平台。

它包含以下三层含义:

  •    MapReduce是一个基于集群的高性能并行计算平台(Cluster Infrastructure)。

  •    MapReduce是一个并行计算与运行软件框架(Software Framework)。


  •   MapReduce是一个并行程序设计模型与方法(Programming Model & Methodology)。






MapReduce的特性

MapReduce基于Google发布的分布式计算框架MapReduce论文设计开发,用于大规模数据集(大于1TB)的并行计算,具有如下特点:

  • 易于编程:程序员仅需描述做什么,具体怎么做交由系统的执行框架处理。

  • 良好的扩展性:可通过添加节点以扩展集群能力。

  • 高容错性:通过计算迁移或数据迁移等策略提高集群的可用性与容错性。



Yarn的定义

  Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的Hadoop资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。


Yarn在产品中位置

  • Yarn是Hadoop2.0中的资源管理系统,它是一个通用的资源管理模块,可为各类应用程序进行资源管理和调度。

  • Yarn是轻量级弹性计算平台,除了MapReduce框架,还可以支持其他框架,如Spark、Storm等。  

  • 多种框架统一管理,共享集群资源:

  1.  资源利用率高  

  2. 运维成本低

  3.  数据共享方便

Yarn高可靠性

lResourceManager的高可用性方案是通过设置一组Active/StandbyResourceManager节点来实现的。与HDFS的高可用性方案类似,任何时间点上都只能有一个ResourceManager处于Active状态。当Active状态的ResourceManager发生故障时,可通过自动或手动的方式触发故障转移,进行Active/Standby状态切换。 

l在未开启自动故障转移时,Yarn集群启动后,管理员需要在命令行中使用yarn rmadmin命令手动将其中一个ResourceManager切换为Active状态。当需要执行计划性维护或故障发生时,则需要先手动将Active状态的ResourceManager切换为Standby状态,再将另一个ResourceManager切换为Active状态。 

l开启自动故障转移后,ResourceManager会通过内置的基于ZooKeeper实现的ActiveStandbyElector来决定哪一个ResouceManager应该成为Active节点。当Active状态的ResourceManager发生故障时,另一个ResourceManager将自动被选举为Active状态以接替故障节点。

l当集群的ResourceManagerHA方式部署时,客户端使用的“yarn-site.xml”需要配置所有ResourceManager地址。客户端(包括ApplicationMasterNodeManager)会以轮询的方式寻找Active状态的ResourceManager。如果当前Active状态的ResourceManager无法连接,那么会继续使用轮询的方式找到新的ResourceManager 

lRM升主后,能够恢复故障发生时上层应用运行的状态。当启用ResourceManager Restart时,重启后的ResourceManager就可以通过加载之前ActiveResourceManager的状态信息,并通过接收所有NodeManagercontainer的状态信息重构运行状态继续执行。这样应用程序通过定期执行检查点操作保存当前状态信息,就可以避免工作内容的丢失。状态信息需要让Active/StandbyResourceManager都能访问。当前系统提供了三种共享状态信息的方法:通过文件系统共享(FileSystemRMStateStore)、通过LevelDB数据库共享(LeveldbRMStateStore)或通过ZooKeeper共享(ZKRMStateStore)。这三种方式中只有ZooKeeper共享支持Fencing机制。Hadoop默认使用ZooKeeper共享。


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。