一.概述
当前,hadoop发行版众多,其中包括华为发行版(收费)、Intel发行版(收费)、Cloudera发行版(Cloudera’s Distribution Including Apache Hadoop,简称 CDH,免费),Hortonworks发行版(Hortonworks Data Platform,简称 HDP,免费)等,这些发行版都是基于Apache Hadoop衍生而来。之所以衍生出如此众多发行版本,主要还是因为Apache Hadoop的开源协议:任何人可以对其进行修改,并作为开源或商业产品发布/销售。
国内绝大多数公司发行版的收费版本,尽管都增加一些开源版本没有的新特性,但绝大多数公司选择Hadoop版本时会重点考虑是否收费。由上述可知,目前Hadoop的三个主要免费版本都是国外厂商,分别是CDH、HDP,再加上Apache hadoop,而绝大多数机构会选择CDH版本。
二.hadoop社区版与第三方发行版的比较
1.Apache社区版
1)优点:
i)完全开源免费。
ii)社区活跃。
iii)文档、资料详实。
2)缺点:
i)繁杂的版本管理:版本管理混乱,各种版本众多,使用者感到迷惑。
ii)繁琐的集群安装、部署、配置:安装集群需针对所有节点修改大量的配置文件,效率低,易出错。
iii)复杂的集群管理和运维:集群的管理和运维,需第三方的软件支持(如:ganglia,nagois等),运维难度大。
iv)复杂的生态环境:hadoop生态圈中,组件(如:Hive,Mahout,Sqoop,Flume,Spark,Oozie等)的选择和使用,需考虑兼容性等方面的大量因素,解决这些问题耗费大量的时间和精力。
2.第三方发行版(如:CDH,HDP等)
1)优点:
i)基于Apache协议,100%开源。
ii)版本管理简单清晰:像Cloudera的CDH4.1.0 patch level 923.142,表示在原生态Apache Hadoop 0.20.2基础上添加了1065个patch。
iii)兼容性、安全性、稳定性强:第三方发行版通常基于稳定版的Apache Hadoop,并应用最新的补丁。同时,这些版本都经过了大量的测试验证,有众多的实际部署,且大量部署于各种生产环境,因此,比原生态Apache Hadoop拥有更好的兼容性、安全性和稳定性。
iv)版本更新快:例如:通常,CDH每季度会发布一个update,每年会发布一个release。
v)提供部署、安装和配置工具:第三方发行版会提供方便易用的安装部署和管理工具,这将不但大大提高集群部署的效率,同时后期管理和维护也会非常方便和高效。
2)缺点:
i)因为有些第三方版本会收费,这将会提高开发和运营成本。
ii)后期管理和运维都会涉及厂商锁定问题。
三、第三方发行版间比较
1.Cloudera:目前发布最成熟的发行版本,拥有最多的部署案例,提供简单、易用、方便、强大的部署、管理和运维工具,同时,Cloudera公司还开发并贡献了可实时处理大数据的Impala项目。
2.Hortonworks:为使用100%开源Apache Hadoop的唯一提供商,Hortonworks首次使用Apache HCatalog的元数据服务特性,同时,其Stinger开创性、极大程度的优化了Hive项目。Hortonworks为使用者提供了一个友好、方便、易用、入门级的的沙盒工具。Hortonworks开发了很多hadoop增强特性并提交至核心主干,从而使得Apache Hadoop在Windows Server和Windows Azure等在内的Microsft Windows平台上平稳高效的运行。