Hadoop版本选择

刚开始学习Hadoop时就曾经一直抱怨Hadoop的安装部署为何这么麻烦,对于一个新手须要捯饬一天才能把分布式环境安装配置好。而对于一个自学Hadoop而周围又没人交流的菜鸟来讲,我对Hadoop的理解一直停留在很肤浅的层面,能应用,但对内部的原理知之甚少。最近和一个作这方面的朋友聊天,他问我你学习Hadoop是用的什么版本搭建环境,我说Hadoop版本那么多我也记不太清了,他只是笑笑就没再多问。apache

回来后我又仔细想了想他问的话,不会是问的别的意思吧,难道Hadoop不是只分1.0.x和2.x这些杂七杂八的版本?上网一搜才感受这下丢人丢大发了,原来Hadoop除了Apache这个版本,还有这么多第三方的版本,并且已经很好地解决了Hadoop部署管理复杂的问题。因此在此记录一下,也给新人提个醒。安全

目前Hadoop的发行版除了Apache的开源版本以外,还有华为发行版、Intel发行版、Cloudera发行版(CDH)、Hortonworks发行版(HDP)、MapR等,全部这些发行版均是基于Apache Hadoop衍生出来的,由于Apache Hadoop的开源协议容许任何人对其进行修改并做为开源或者商业产品发布。运维

国内大多数公司发行版是收费的,好比Intel发行版、华为发行版等。不收费的Hadoop版本主要有国外的四个,分别是Apache基金会hadoop、Cloudera版本(CDH)、Hortonworks版本(HDP)、MapR版本。分布式

Apache社区版本优缺点

优势:工具

  • 彻底开源免费
  • 社区活跃
  • 文档、资料详实

缺点:oop

  • 复杂的版本管理。版本管理比较混乱,各类版本层出不穷,让使用者不知所措。
  • 复杂的集群部署、安装、配置。一般按照集群须要编写大量的配置文件,分发到每一台节点上,容易出错,效率低下。
  • 复杂的集群运维。对集群的监控,运维,须要安装第三方的其余软件,如ganglia,nagois等,运维难度较大。
  • 复杂的生态环境。在Hadoop生态圈中,组件的选择、使用,好比Hive,Mahout,Sqoop,Flume,Spark,Oozie等等,须要大量考虑兼容性的问题,版本是否兼容,组件是否有冲突,编译是否能经过等。常常会浪费大量的时间去编译组件,解决版本冲突问题。

第三方发行版本(如CDH,HDP,MapR等)优缺点

优势:学习

  • 基于Apache协议,100%开源。
  • 版本管理清晰。好比Cloudera,CDH1,CDH2,CDH3,CDH4,CDH5等,后面加上补丁版本,如CDH4.1.0 patch level 923.142,表示在原生态Apache Hadoop 0.20.2基础上添加了1065个patch。
  • 比Apache Hadoop在兼容性、安全性、稳定性上有加强。第三方发行版一般都通过了大量的测试验证,有众多部署实例,大量的运行到各类生产环境。
  • 版本更新快。一般状况,好比CDH每一个季度会有一个update,每年会有一个release。
  • 基于稳定版本Apache Hadoop,并应用了最新Bug修复或Feature的patch
  • 提供了部署、安装、配置工具,大大提升了集群部署的效率,能够在几个小时内部署好集群。
  • 运维简单。提供了管理、监控、诊断、配置修改的工具,管理配置方便,定位问题快速、准确,使运维工做简单,有效。

缺点:测试

  • 涉及到厂商锁定的问题。(能够经过技术解决)

总结

综上所述,考虑到大数据平台高效的部署和安装,中心化的配置管理,使用过程当中的稳定性、兼容性、扩展性,以及将来较为简单、高效的运维,遇到问题低廉的解决成本。
建议使用第三方发行版本。
其中在第三发发行版中,国内应用较多的是Cloudera的CDH。你们也能够详细对比优缺点,根据本身的须要作选择。大数据

相关文章
相关标签/搜索