Hadoop版本的选择问题
自从2013年下半年开始,hadoop的版本开始了快速的更新换代,这和通信和互联网行业(ICT)的发展是密切相关的。随着移动网络的和宽带网络的覆盖以及数据传输速率的提升,线上的数据有了爆炸式的增长。这种趋势特别体现在大型的电商平台如淘宝、京东、亚马逊,海量数据的存储和处理问题成为了热门话题,在这种形势下分布式的、云化的解决方案应运而生,hadoop作为大型分布式存储和处理的开源框架自然成为了行业里的热点。以下是hadoop的官方简介。
Apache Hadoop软件库是一个框架,允许使用简单的编程模型跨计算机集群分布式处理大型数据集。它旨在从单个服务器扩展到数千台计算机,每台计算机都提供本地计算和存储。库本身不是依靠硬件来提供高可用性,而是设计用于检测和处理应用程序层的故障,从而在计算机集群之上提供高可用性服务,每个计算机都可能容易出现故障。
该项目包括以下模块:
- Hadoop Common:支持其他Hadoop模块的常用实用程序。
- Hadoop分布式文件系统(HDFS™):一种分布式文件系统,可提供对应用程序数据的高吞吐量访问。
- Hadoop YARN:作业调度和集群资源管理的框架。
- Hadoop MapReduce:基于YARN的系统,用于并行处理大型数据集。
Apache的其他Hadoop相关项目包括:
- Ambari™:基于Web的工具,用于配置,管理和监控Apache Hadoop集群,包括对Hadoop HDFS,Hadoop MapReduce,Hive,HCatalog,HBase,ZooKeeper,Oozie,Pig和Sqoop的支持。Ambari还提供了一个用于查看群集运行状况的仪表板,例如热图,以及可视化查看MapReduce,Pig和Hive应用程序的功能,以及以用户友好的方式诊断其性能特征的功能。
- Avro™:数据序列化系统。
- Cassandra™:可扩展的多主数据库,没有单点故障。
- Chukwa™:用于管理大型分布式系统的数据收集系统。
- HBase™:可扩展的分布式数据库,支持大型表的结构化数据存储。
- Hive™:一种数据仓库基础架构,提供数据汇总和即席查询。
- Mahout™:可扩展的机器学习和数据挖掘库。
- Pig™:用于并行计算的高级数据流语言和执行框架。
- Spark™:用于Hadoop数据的快速通用计算引擎。Spark提供了一种简单而富有表现力的编程模型,支持广泛的应用程序,包括ETL,机器学习,流处理和图形计算。
- Tez™:基于Hadoop YARN构建的通用数据流编程框架,它提供了一个功能强大且灵活的引擎,可以执行任意DAG任务来处理批量和交互式用例的数据。Tez正在被Hadoop生态系统中的Hive™,Pig™和其他框架以及其他商业软件(例如ETL工具)采用,以取代Hadoop™MapReduce作为底层执行引擎。
- ZooKeeper™:用于分布式应用程序的高性能协调服务。
顺应时代的发展,为了跟上技术更新的节奏,许多数据分析和处理的中小型企业也想搭建一个hadoop生态圈,将其作为今后数据存储和处理的平台的发展方向,因此需要先构建一个实验测试环境,以便今后做系统转移和处理业务的衔接类的工作。这一类企业的集群节点不需要太多,从几台到十几台的样子。在当下行业里hadoop的应用已经成熟,hadoop有非常多的版本,就拿我的大学时代到现在来讲,短短两年学习的hadoop的版本和现在的相比已经有了比较多的改动,到企业中部署需要更加清晰的认识和学习新的技术。在这种情况下,如何去选择hadoop和搭建集群?
通过在互联网上广泛的阅读,我发现了一篇较为清晰的hadoop版本介绍,不过是只更新到2016年底的,后来发现其实不嫌麻烦也可以到hadoop官网上进行详细的了解,hadoop的官网上有每个版本更新的详细信息。
https://www.cnblogs.com/bigdataman/p/6116298.html 北漂程序猿的2.7及以前版本的介绍和推荐,他推荐的是2.6.x版本
而现在已经出来2.8.x、2.9.x和3.x版本,每个版本都新增了功能,但是我不确定是否能用的上,所以在新型和稳定上需要做出考虑。在这里可以大概了解到更新的信息,具体的可参考http://hadoop.apache.org/
2018年8月8日:3.1.1版本可用
这是Apache Hadoop 3.1系列的第一个稳定版本。它包含自3.1.0以来的435个错误修复,改进和增强功能
建议用户阅读自3.1.0以来的主要变化概述。有关自上一个3.1.0版本以来的435个错误修复,改进和其他增强功能的详细信息,请查看发行说明和更新日志,详细说明自3.1.0以来的更改。 2018年5月31日:2.7.7版本可用
这是Apache Hadoop 2.7的维护版本。它涉及CVE-2018-8009。 2018年5月31日:3.0.3版本可用
这是Apache Hadoop 3.0系列的下一个版本。它包含自3.0.2以来的249个错误修复,改进和其他增强功能。
鼓励用户阅读自3.0.2以来的主要变化概述。对于自上次3.0.2版本的249 bug修复,改进和其它增强功能的详细信息,请查看 发布说明安迪 的changelog细节,因为3.0.2的变化。 2018年5月15日:2.8.4版本可用
这是Apache Hadoop 2.8系列的下一个版本。它包含自2.8.3以来的77个错误修复,改进和增强功能。
建议用户阅读Apache Hadoop 2.8的主要功能和改进的主要更改概述。有关自2.8.3版本以来的77个修复,改进和其他增强功能的详细信息,请查看 发行说明和 更改日志。 2018年5月3日:版本2.9.1可用
这是Apache Hadoop 2.9系列的下一个版本。它包含自2.9.0以来的208个错误修复,改进和增强功能。
建议用户阅读Apache Hadoop 2.9的主要功能和改进的主要更改概述。有关自2.9.0发行版以来的208个修复,改进和其他增强功能的详细信息,请查看 发行说明和 更改日志。 2018年4月16日:2.7.6版本可用
这是Apache Hadoop 2.7系列的下一个版本。
有关自上一版本2.7.5以来的46个错误修复和优化的完整列表,请参阅 Hadoop 2.7.6发行说明。它特别使POSIX组支持LDAP组映射服务。 2018年4月6日:3.1.0版本可用
这是Apache Hadoop 3.1系列的第一个版本。它包含自3.0.0以来的768个错误修复,改进和增强功能
建议用户阅读自3.0.0以来的主要更改概述。有关自上一个3.0.0版本以来的768个错误修复,改进和其他增强功能的详细信息,请查看发行说明和更新日志详细说明自3.0.0以来的更改。 2018年3月25日:3.0.1版本可用
这是Apache Hadoop 3.0系列的下一个版本。它包含自3.0.0以来的49个错误修复,改进和增强功能。
请注意:3.0.0之后不推荐使用3.0.0,因为HDFS-12990将NameNode默认RPC端口更改回8020。
建议用户阅读自3.0.0以来的主要更改概述。有关自上一个3.0.0版本以来的49个错误修复,改进和其他增强功能的详细信息,请查看发行说明和更新日志详细说明自3.0.0以来的更改。 2017年12月13日:一般可用3.0.0版
在四个alpha版本和一个beta版本之后,通常可以使用3.0.0。3.0.0包含自3.0.0-beta1以来的302个错误修复,改进和其他增强功能。总共有6242个问题作为自2.7.0以来的3.0.0版本系列的一部分得到修复。
建议用户阅读3.0.0 中主要更改的概述。GA 发布说明和更新日志详细说明了自3.0.0-beta1以来的更改。 2017年12月12日:发布2.8.3版
这是Apache Hadoop 2.8发布系列的下一个版本。它包含自2.8.2以来的79个错误修复,改进和其他增强功能。有关Apache Hadoop 2.8的主要功能和改进,请参阅: 主要更改概述。有关自上一个2.8.2版本以来的79个修复,改进和其他增强功能的详细信息,请检查: 发行说明和 更改日志 2017年11月17日:发布2.9.0版
这是2.9版本系列中的第一个GA版本。它包括30个新功能,500个子任务,407个改进,790个Bug修复自2.8.2以来的新修复问题。有关Apache Hadoop 2.8.2的主要功能和改进,请参阅: 主要更改概述。有关自上一个2.8.2版本以来的790个错误修复,改进和其他增强功能的详细信息,请检查: 发行说明和 更改日志
请注意:尽管此版本已经在相当大的集群上进行了测试,但生产用户可以等待后续的点发布,其中包含进一步稳定和下游采用的修复。 2017年10月24日:发布2.8.2
这是2.8版本系列中的第一个GA版本。它包含自从2.8.1以来的315个错误修复,改进和其他增强功能。有关Apache Hadoop 2.8的主要功能和改进,请参阅: 主要更改概述。有关自上一个2.8.1版本以来的315修复,改进和其他增强功能的详细信息,请检查:发行说明和 更改日志 2017年3月22日:2.8.0版本可用
Apache Hadoop 2.8.0包含许多重要功能和增强功能。有关主要功能和改进,请参阅: 2.8.0 中主要更改的概述。有关自上一个2.7.0版本以来的2917修复,改进和新功能的详细信息,请检查: 发行说明和 更改日志
请注意,此版本尚未准备好用于生产。通过测试和下游采用来解决关键问题。生产用户应该等待2.8.1 / 2.8.2版本。 2016年10月8日:2.6.5版本可用
2.6线的点数发布。
有关79个关键错误修复的列表以及自上一版本2.6.4以来, 请参阅 Hadoop 2.6.5发行说明。
2016年1月25日:2.7.2版(稳定版)可用
2.7线的点数发布。
有关自上一版本2.7.1以来的155个错误修复和补丁的列表,请参阅 Hadoop 2.7.2发行说明。
在经过了解,除了Hadoop的原生版本之外,还有许多其他版本的。这里有为清晰的介绍。
目前而言,不收费的Hadoop版本主要有三个(均是国外厂商),
分别是:Apache(最原始的版本,所有发行版均基于这个版本进行改进)、Cloudera版本(Cloudera’s Distribution Including Apache Hadoop,简称CDH)、Hortonworks版本(Hortonworks Data Platform,简称“HDP”),
对于国内而言,绝大多数选择CDH版本,CDH和Apache版本主要区别如下:
(1)CDH对Hadoop版本的划分非常清晰,只有两个系列的版本,分别是cdh3和cdh4,分别对应第一代Hadoop(Hadoop 1.0)和第二代Hadoop(Hadoop 2.0),相比而言,Apache版本则混乱得多;比Apache hadoop在兼容性,安全性,稳定性上有增强。
(2)CDH3版本是基于Apache hadoop 0.20.2改进的,并融入了的patch,CDH4版本是基于Apache hadoop 2.X改进的,CDH总是并应用了Bug修复或者Feature的Patch,并比Apache hadoop同功能版本提早发布,更新速度比Apache官方快。
(3)安全 CDH支持Kerberos安全认证,apache hadoop则使用简陋的用户名匹配认证
(4)CDH文档清晰,很多采用Apache版本的用户都会阅读CDH提供的文档,包括安装文档、升级文档等。
(5)CDH支持Yum/Apt包,Tar包,RPM包,Cloudera Manager四种方式安装,Apache hadoop只支持Tar包安装。
另外说明一下,CDH分为商业版和免费版,商业版另外提供了滚动升级的功能。还有一个完全开源免费的hadoop集群管理框架是Ambari,这里有Ambari功能的详细介绍。https://blog.csdn.net/u012331758/article/details/78106714 , Ambari集群搭建手册在这里https://www.ibm.com/developerworks/cn/opensource/os-cn-bigdata-ambari/
以及在中国开源社区中,出现了商业化的DK免费版本和商用版本,说在性能和部署上都相对便捷,DKHadoop具体可了解的http://www.dksou.com/a/product/pro-11.html。
在hadoop的选择问题上,经过和他人的探讨以及中和在官网、博客、贴吧的意见,我认为推荐使用的原生版本有2.6.x、2.7.x和2.8.x的稳定版,集群管理有Ambari和CDH。在选用原生版本的时候需要考虑各个组件的版本是否匹配,而使用CDH和Ambari在集群部署上应该更为可靠和便捷,可以少走一些弯路。
Hadoop版本的选择问题的更多相关文章
- Hadoop版本选择
刚开始学习Hadoop时就曾经一直抱怨Hadoop的安装部署为什么这么麻烦,对于一个新手需要捯饬一天才能把分布式环境安装配置好.而对于一个自学Hadoop而周围又没人交流的菜鸟来说,我对Hadoop的 ...
- 【大数据技术】操作系统和Hadoop版本选择
1.操作系统选择 Hadoop产品是由Java语言开发的,所以推荐的是Linux操作系统,理由很简单开源免费,推荐的操作系统CentOS. CentOS是一个基于Red Hat 企业级 Linux 提 ...
- hadoop商业版本的选择介绍
记得刚接触到hadoop的时候跟大部分人一样都会抱怨hadoop的安装部署问题,对于一个新手来说这这的是个头疼的问题,可能需要花费一整天的时间才能把分布式环境安装配置好.在刚接触hadoop的一段时间 ...
- [转] 如何选择正确的Hadoop版本
Gartner:如何选择正确的Hadoop版本 这份报告的全名是<How to Choose the Right Apache Hadoop Distribution>.主要介绍了企业如何 ...
- hadoop再次集群搭建(3)-如何选择相应的hadoop版本
之前接触过很多很多hadoop版本,现在重新搭建平台,面临选择哪个版本的问题. 当我们决定是否采用某个软件用于开源环境时,通常需要考虑以下几个因素: (1)是否为开源软件,即是否免费. (2) 是否有 ...
- hadoop版本比较 [转]
由于Hadoop版本混乱多变,因此,Hadoop的版本选择问题一直令很多初级用户苦恼.本文总结了Apache Hadoop和Cloudera Hadoop的版本衍化过程,并给出了选择Hadoop版本的 ...
- 【云计算 Hadoop】Hadoop 版本 生态圈 MapReduce模型
忘的差不多了, 先补概念, 然后开始搭建集群实战 ... . 一 Hadoop版本 和 生态圈 1. Hadoop版本 (1) Apache Hadoop版本介绍 Apache的开源项目开发流程 : ...
- HBase各版本对Hadoop版本的支持情况
转载自:http://blog.csdn.net/sunny05296/article/details/54089194 安装HBase时,要考虑选择正确的Hadoop版本,否则可能出现不兼容的情况. ...
- Hadoop 版本 生态圈 MapReduce模型
忘的差不多了, 先补概念, 然后开始搭建集群实战 ... . 一 Hadoop版本 和 生态圈 1. Hadoop版本 (1) Apache Hadoop版本介绍 Apache的开源项目开发流程 : ...
随机推荐
- Java学习---面试基础知识点总结
Java中sleep和wait的区别 ① 这两个方法来自不同的类分别是,sleep来自Thread类,和wait来自Object类. sleep是Thread的静态类方法,谁调用的谁去睡觉,即使在a线 ...
- 水壶-[Kruskal重构树] [解题报告]
水壶 本来从不写针对某题的题解,但因为自己实在是太蠢了,这道题也神TM的恶心,于是就写篇博客纪念一下 H水壶 时间限制 : 50000 MS 空间限制 : 565536 KB 评测说明 : 2s,51 ...
- 如何为已有的类没有生成toString的方法增强生成toString方法
1:只要提到增强,我的第一思路就是代理,动态代理.但是仅仅是一个toString其实没必要使用代理模式了,有点大材小用了(动态代理其实也是最后通过反射生成toString的方法). 2:简单粗暴,可以 ...
- Docker介绍-hc课堂笔记
1,传统模式-多个服务器:申请.安装jdk等.部署环境. 容器-整包,把有东西打包到一起,把这个包放在服务器上. linux中装了docker,起100个服务,改个数字就可以,5分钟左右. 2,虚拟化 ...
- lsof |grep deleted;du -sh / ;df -h;
有台机器磁盘满了: 进程端口都正常,存活:但是页面却完全打不开了: 日志爆满:删除日志后: 在根上 du -sh * 然后 df -h 发现差别太大了: du -sh * / 才不足7G: df -h ...
- nginx静态文件缓存的解决方案
nginx的一大功能就是完成静态资源的分离部署,减轻后端服务器的压力,如果给这些静态资源再加一级nginx的缓存,可以进一步提升访问效率. 第一步:添加nginx.conf的http级别的缓存配置 # ...
- 教你一些Linux中隐藏bash历史命令的小技巧
导读 如果你登录过 Linux 系统,并敲过一些命令,那你应该知道,bash history 会记录你输入的所有命令.这个操作其实是有一定风险的. 我个人经常使用 Linux,所以我想着研究一番,看看 ...
- redis集群搭建及连接(阿里云)
阿里云上面装redis集群基本被虐死,主要问题就是私有IP和公有IP. 下面分享成功搭建的步骤: 两台测试服务器,分别为:127.0.0.1,127.0.0.2.每分服务器有3个节点. 1.127.0 ...
- P1272 重建道路
题目描述 一场可怕的地震后,人们用N个牲口棚(1≤N≤150,编号1..N)重建了农夫John的牧场.由于人们没有时间建设多余的道路,所以现在从一个牲口棚到另一个牲口棚的道路是惟一的.因此,牧场运输系 ...
- 20155227《网络对抗》Exp7 网络欺诈防范
20155227<网络对抗>Exp7 网络欺诈防范 实践内容(3.5分) 本实践的目标理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法.具体实践有 (1)简单应用SET工具建 ...