Apache Hadoop 2.0.3发布了
网址: http://dongxicheng.org/mapreduce-nextgen/apache-hadoop-2-0-3-published/
Apache Hadoop 2.0.3发布了,在这次版本更新中,主要增加了以下几个特性:
(1)引入一种新的HDFS HA解决方案QJM
之前NameNode HA已经有两种解决方案,分别是基于共享存储区的Backup Node方案和基于Bookeeper的方案,在该版本中引入另外一种方案:QJM(Quorum Journal Manager)。该方案( HDFS-3077)采用了quorum commit protocol,引入两个角色:QuorumJournalManager和JournalNode,QuourumJournalManager通过RPC将edits日志写入N个JournalNode,只要有大多数(大于N/2个)JournalNode成功写入则任务日志写入成功。
(2)YARN 多资源调度机制
在该版本中,YARN的资源调度器同时支持内存和CPU两种资源调度,采用的调度算法源自Mesos的DRF(Dominant Resource Fairness),对应论文为:“Dominant Resource Fairness: Fair Allocation of Multiple Resources Types”,具体可参考 YARN-2和 Apache Mesos调度机制。
YARN对内存资源和CPU资源采用了不同的资源隔离方案。对于内存资源,为了能够更灵活的控制内存使用量,YARN采用了进程监控的方案控制内存使用,即每个NodeManager会启动一个额外监控线程监控每个container内存资源使用量,一旦发现它超过约定的资源量,则会将其杀死。采用这种机制的另一个原因是Java中创建子进程采用了fork()+exec()的方案,子进程启动瞬间,它使用的内存量与父进程一致,从外面看来,一个进程使用内存量可能瞬间翻倍,然后又降下来,采用线程监控的方法可防止这种情况下导致swap操作。对于CPU资源,则采用了Cgroups进行资源隔离。具体可参考 YARN-3。
(3)YARN ResourceManager重启机制
该版本引入了一个简单的ResourceManager重启机制,保证RM重启后,各个应用工程序可继续运行而不受影响。需要注意的是,这只是第一阶段的实现,还很不完整,比如不能向NameNode HA那样做到自动切换,不能恢复所有正在运行的Container,Application和ApplicationMaster而只是重新启动另外一个而已,具体可参考 YARN-230。
(4)YARN稳定性和扩展性得到验证
Yahoo已使用YARN在超过3万个节点上运行了14 million个应用程序,具体可参考: Hadoop at Yahoo!: More Than Ever Before。
【参考资料】
Announcing Apache Hadoop 2.0.3 Release and Roadmap。
原创文章,转载请注明: 转载自 董的博客
本文链接地址: http://dongxicheng.org/mapreduce-nextgen/apache-hadoop-2-0-3-published/
作者: Dong,作者介绍: http://dongxicheng.org/about/
Copyright © 2012
This feed is for personal, non-commercial use only.
The use of this feed on other websites breaches copyright. If this content is not in your news reader, it makes the page you are viewing an infringement of the copyright. (Digital Fingerprint:
)