至2012年5月,Apache Hadoop的四大分支构成了四个系列的Hadoop版本。
1. 0.20.X系列
0.20.X系列版本是最令用户感到疑惑的,因为它们具有的一些特性,trunk上没有;trunk上有的一些特性,0.20.X系列版本却没有。
2. 0.21.0/0.22.X系列
在这一版本中,将整个Hadoop项目分割成三个独立的模块,分别是Common、HDFS和MapReduce。
其中,HDFS和MapReduce都对Common模块有依赖性,但是MapReduce对HDFS并没有依赖性。那么,这样的话,MapReduce可以更容易地运行其他分布式文件系统,同时,模块间可以独立开发。
Common模块:最大的 新特性是在测试方面上添加了Large-Scale Automated Test Framework 和 Fault Injection Framework 。
HDFS 模块 :主要增加的新特性包括支持追加操作与建立符号连接、 Secondary NameNode 改进(Secondary NameNode 被剔除,取而代之的是 Checkpoint Node,同 时添加一个 Backup Node 的角色,作为 NameNode 的冷备)、允许用户自定义 block 放置算法等。
MapReduce 模块 :在作业 API 方面,开始启动新 MapReduce API,但老的 API 仍然 兼容。
3. 0.23.X系列
0.23.X 是为了克服 Hadoop 在扩展性和框架通用性方面的不足而提出来的。它实际上 是一个全新的平台,包括分布式文件系统 HDFS Federation 和资源管理框架 YARN 两部分, 可对接入的各种计算框架(如 MapReduce、Spark 等)进行统一管理。它的发行版自带 MapReduce 库,而该库集成了迄今为止所有的 MapReduce 新特性。
4. 2.X系列
同 0.23.X 系列一样,2.X 系列也属于下一代 Hadoop。与 0.23.X 系列相比,2.X 系列增 加了 NameNode HA 和 Wire-compatibility 等新特性。