Apache Hadoop 2.0-alpha发布
来源:互联网 发布:小米净化器2 重置网络 编辑:程序博客网 时间:2024/05/16 08:16
Apache Hadoop 2.0-alpha发布了,直接从0.23.x升为2.0版本,让我们再一次被Hadoop版本的混乱无序状态搞晕。本文将解析Hadoop -2.0-alpha中的新特性。
相对于Hadoop-1.x版本(为了更全面的描述Hadop 2.0中的新特性,我们没有将之与0.23.x比较),添加了以下几个功能:
1. HDFS HA (manual failover)
Hadoop HA分支merge进了该版本,并支持热切,主要特性包括:
(1) NN配置文件有改变,使得配置更加简单
(2) NameNode分为两种角色:active NN与 standby NN,active NN对外提供读写服务,一旦出现故障,便切换到standby NN。
(3) 支持Client端重定向,也就是说,当active NN切换到standby NN过程中,Client端所有的进行时操作都可以无缝透明重定向到standby NN上,Client自己感觉不到切换过程。
(4) DN同时向active NN和standby NN汇报block信息。
具体设计文档参考:https://issues.apache.org/jira/browse/HDFS-1623
当前Hadoop HA只能实现人工切换,该功能在某些情况下非常有用,比如,对NN进行升级时,先将NN切换到standby NN,并对之前的active NN进行升级,升级完成后,再将NN切换至升级后的NN上,然后对standby NN进行升级。
2. MR2/YARN
YARN是一套资源统一管理和调度平台,可管理各种计算框架,包括MapReduce,Spark,MPI等。尽管它是完全重写而成,但其思想是从MapReduce衍化而来的,并克服了它在扩展性和容错性等方面的众多不足。具体参考:
http://hadoop.apache.org/common/docs/r0.23.0/hadoop-yarn/hadoop-yarn-site/YARN.html
3. HDFS Federation
传统HDFS是master/slave结构,其中,master(也就是NameNode)需要存储所有文件系统的元数据信息,且所有文件存储操作均需要访问多次NameNode,因而NameNode成为制约扩展性的主要瓶颈所在。为了解决该问题,引入了HDFS Federation,允许HDFS中存在多个NameNode,且每个NameNode分管一部分目录,而DataNode不变,也就是“从中央集权专政变为各个地方自治”,进而缩小了故障带来的影响范围,并起到一定的隔离作用。具体参考:
http://dongxicheng.org/mapreduce-nextgen/nextgen-mapreduce-introduction/
4. 性能基准测试
该版本中为HDFS和YARN添加了性能的基准测试集,其中HDFS测试包括:
(1) dfsio基准 测试HDFS I/O读写性能
(2) slive基准 测试NameNode内部操作的性能
(3) scan基准 测试MapReduce作业访问HDFS的I/O性能
(4) shuffle基准 测试shuffle阶段性能
(5) compression基准 测试MapReduce作业中间结果和最终结果的压缩性能
(6) gridmix-V3基准 测试集群吞吐率
YARN 测试包括:
(1) ApplicationMaster扩展性基准测试
主要测试调度task/container的性能。与1.0版本比较,大约快2倍。
(2) ApplicationMaster恢复性基准测试
测试YARN重启后,作业恢复速度。稍微解释一下ApplicationMaster恢复作业的功能:在作业执行过程中,Application Master会不断地将作业运行状态保存到磁盘上,比如哪些任务运行完成,哪些未完成等,这样,一旦集群重启或者master挂掉,重启后,可复原各个作业的状态,并只需重新运行未运行完成的哪些任务。
(3) ResourceManager扩展性基准测试
通过不断向Hadoop集群中添加节点测试RM的扩展性。
(4) 小作业基准测试
专门测试批量小作业的吞吐率
具体参考:
http://hortonworks.com/blog/delivering-on-hadoop-next-benchmarking-performance/
5. Wire-compatibility for both HDFS & YARN
Hadoop RPC采用了Hadoop自己的一套序列化框架对各种对象进行序列化反序列,但存在一个问题:扩展性差,很难添加新的数据类型同时保证版本兼容性。为此,Hadoop 2.0将数据类型模块从RPC中独立出来,成为一个独立的可插拔模块,这样允许用户根据个人爱好使用各种序列化/反序列化框架,比如thrift,arvo,protocal Buffer等,默认情况采用Protocal Buffer。
http://hortonworks.com/blog/rpc-improvements-and-wire-compatibility-in-apache-hadoop/
除了以上五个特性外,还有两个非常重要的特性正在研发中,分别是:
6. HDFS快照
用户可在任意时间对HDFS做快照,这样,在HDFS出现故障时,可将数据恢复到某个时间点的状态。具体参考:
http://hortonworks.com/blog/snapshots-for-hdfs/
7. HDFS HA自动切换
前面介绍的第一个功能“HDFS HA”当前只能实现人工切换,也就是说,管理员运行某个命令,使得acitve NN切换到standby NN上。以后将支持自动切换,也就是说,监控模块可检测出active NN何时出现故障,并自动将之切换到standby NN上,这样可大大较小Hadoop集群运维人员的工作量。具体参考:
http://s.apache.org/hdfs-autofailover
转载自董的博客
- Apache Hadoop 2.0-alpha发布
- Apache Hadoop 2.0 (Alpha)发布了
- Apache Hadoop 2.0 (Alpha)发布了
- Apache Hadoop 2.0.2-alpha
- apache-hadoop 2.0.2-alpha HDFS Federation
- Apache Hadoop 2.0.5-alpha 相对前版本的改进
- 浅谈Apache Hadoop 2.0.0-alpha中HDFS 如何实现High Availability
- Apache Hadoop 2.3.0 发布
- Alpha发布
- Ionic 2.0 Alpha版本发布了
- hadoop-2.0.2-alpha(yarn)集群搭建
- hadoop-2.0.6-alpha配置lzo
- Spring for Apache Hadoop 1.0 GA 发布
- Apache Hadoop 2.4.0已经发布
- Hadoop源码编译-hadoop-2.0.3-alpha-Linux-CentOS
- Hadoop 2.0.5-alpha集群搭建02-Hadoop集群配置
- Buffalo 1.0alpha 发布!
- Flash 9 Alpha发布
- php 正则 记一些自己想记的
- 复制来的幸福,始终粘贴不到自己身上:伤感日志
- Android 游戏开发之线程Thread延时开启和停止
- 欧几里德算法及其扩展算法
- 教育部首设儿童成长阶梯标准:4岁学会体谅父母
- Apache Hadoop 2.0-alpha发布
- linux exec用法总结
- ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your
- kshell 如何比较两个数值或字符串 "test" [[ ]]" "(())" "[ ]"
- 任意进制间的转换
- UIAlertView用法
- 婴儿早教生活的六注意
- 链路层交换机概述
- 电脑无缘无顾跳出广告