Hadoop的版本选型

=Start=

缘由:

最开始在接触到Hadoop这个概念的时候,我以为它就只有Apache一家在搞,只有版本不同的差异。最近在较为深入的了解之后才发现,根本不是这么回事,想搞清楚不容易。所以这里整理一下我在学习这方面知识时整理的一些资料,方便自己及后来者参考。

正文:

参考解答:

目前Hadoop的发行版除了Apache的开源版本之外,还有华为发行版、Intel发行版、Cloudera发行版(CDH)、Hortonworks发行版(HDP)、MapR等,所有这些发行版均是基于Apache Hadoop衍生出来的,因为Apache Hadoop的开源协议允许任何人对其进行修改并作为开源或者商业产品发布。国内大多数公司发行版是收费的,比如Intel发行版、华为发行版等。不收费的Hadoop版本主要有国外的四个,分别是Apache基金会hadoop、Cloudera版本(CDH)、Hortonworks版本(HDP)、MapR版本。


Apache社区版本优缺点

优点:

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

缺点:

  • 复杂的版本管理。版本管理比较混乱,各种版本层出不穷,让使用者不知所措。
  • 复杂的集群部署、安装、配置。通常按照集群需要编写大量的配置文件,分发到每一台节点上,容易出错,效率低下。
  • 复杂的集群运维。对集群的监控,运维,需要安装第三方的其他软件,如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
  • 提供了部署、安装、配置工具,大大提高了集群部署的效率,可以在几个小时内部署好集群。
  • 运维简单。提供了管理、监控、诊断、配置修改的工具,管理配置方便,定位问题快速、准确,使运维工作简单,有效。

缺点:

  • 有些会涉及到厂商锁定的问题(可以通过技术解决)。

版本选型时需要考虑的一些因素:
  1. 安装部署成本
  2. 稳定性
  3. 兼容性
  4. 扩展性
  5. 可运维性

更具体的需要结合公司的实际情况去进行选择。

 

参考链接:

=END=

声明: 除非注明,ixyzero.com文章均为原创,转载请以链接形式标明本文地址,谢谢!
https://ixyzero.com/blog/archives/4179.html

《Hadoop的版本选型》上有4条评论

  1. 有赞大数据平台安全建设实践
    https://mp.weixin.qq.com/s/4G_OvlD_5uYr0o2m-qPW-Q

    一、概述
    在大数据平台建设初期,安全也许并不是被重点关注的一环。大数据平台的定位主要是服务数据开发人员,提高数据开发效率,提供便捷的开发流程,有效支持数仓建设。大数据平台的用户都是公司内部人员。数据本身的安全性已经由公司层面的网络及物理机房的隔离来得到保证。那么数据平台建设过程中,需要考虑哪些安全性方面的问题?

    环境隔离,数据开发人员应当只需关注自己相关业务域的数据,也应该只能访问这一部分数据。从数据的角度,减小了被接触面,降低了被误操作的可能。从数据开发人员的角度,只能访问自己业务域的数据,在数据开发的过程中,可以减少干扰项,提高效率。

    数据脱敏,有些敏感数据即使是公司内部的数据开发人员,也需要限制其直接访问的权限。

    明晰权责,各业务域数据都有相应的负责人,对自己的数据负责。同时,所有数据访问与操作都有审计信息记录,对数据的转化与流动有据可查。

    最后,大数据平台的目标是赋能数据开发人员,提高数据开发效率,而安全管理必然会降低数据平台的便利性。如何平衡安全和便利性的关系,尤为重要。

    有赞大数据平台安全建设是在大数据平台本身的发展以及数仓元数据建设的过程中不断演进的。概括起来可以分为三个阶段。

    二、基于 ranger +组件 plugin 的权限控制
    三、基于 ranger 的权限管理服务
    四、基于 column masking 的数据脱敏
    我们使用 antlr4 来处理执行引擎的语法文件,实现 SQL 重写。其中,spark 和 presto 都是使用的 antlr4,所以他们的语法文件直接拿过来用即可。由于 hive 目前使用的是 antlr3 的版本,我们将 hive 的语法文件使用 antlr4 的语法重写了一遍。之所以要全部用 antlr4,是为了最大程度的重用 visitor 的逻辑。基于同样的方法,我们实现了字段血缘的追溯,从而可以进行字段的敏感等级传递。

发表评论

电子邮件地址不会被公开。 必填项已用*标注