设为首页 收藏本站
查看: 1127|回复: 0

hadoop2.0介绍(一)

[复制链接]

尚未签到

发表于 2015-11-11 10:45:43 | 显示全部楼层 |阅读模式
一、概述
现在大数据很“热”,hadoop系列(也称为The Hadoop Project Ecosystem)东西随着也很“热”,不过hadoop也确实有此“资本”,hadoop起源于google的产品,本身就是为海量数据量身定做的。Hadoop大致在2005-2006年成形,经过几年的发展,估计明年能出2.0正式版。2.0版与1.0版有比较大的区别(开源产品的硬伤:随意性比较大),具体来说,2.0主要解决如下问题:

  • 单个NameNode问题
  • MapReduce的适应性不广(例如实时性要求、迭代处理要求等),扩展不好
  本文是对hadoop系列产品的一般性介绍,1.0就不提了,主要依据2.0 beta版,文章主要的参考资料为apache官网以及hortonworks的相关文档(关于hortonworks,请参阅下文)。
  

二、hadoop生态系统(The Hadoop Project Ecosystem)
Hadoop本身有如下内容:

  • Hadoop Common: hadoop的基础
  • Hadoop Distributed File System (HDFS): 分布式文件系统
  • Hadoop YARN: 集群任务资源管理及任务调度的框架
  • Hadoop MapReduce: 基于YARN的分布式计算
与hadoop相关的产品大致上分为两大部分:数据服务(Data Services)和运行维护(Operational Services)。
与数据服务相关的产品有:

  • HBase: 将文件建于HDFS上的分布式Key-Value数据库
  • Hive: 有比较友好接口(相对来讲)的数据仓库,它实际上是基于MapReduce的一个应用。
  • Pig™:它使用一个叫做“Pig Latin”的东西来作为用户交互语言,底层依然是MapReduce。它与Hive有类似之处,都是用来做大数据处理,但它似乎比Hive要简单一些,没有“存储”的概念(metadata,“表”等), 接口也少。
  • HCatalog:这是一个hadoop数据管理层,你可以用Hive, Pig , MapReduce等来存取hadoop的数据,而不用关心这些数据是如何存储的。
其他还有Sqoop、flume。
与运行维护相关的产品有:

  • Ambari: 一个基于web应用的hadoop及若干相关产品的运维工具。
  • Oozie:是一个Java应用,可以用来管理hadoop中job。
  • ZooKeeper™:分布式应用协调器(见作者相关翻译文章)。
其他相关产品/项目:

  • Avro: 类似于thrift,protobuf的数据传输系统(此系统的发展前景不甚明朗)
  • Mahout™: 机器学习和数据挖掘的东西,似乎不太有名。
总之,hadoop系列产品太多了,几乎包含了大数据应用的方方面面,这些产品在2.0的思路下有些也许会有较大的变化,所以如果是准备应用它们,应当谨慎一些。
  下图来自于”Apache Hadoop YARN”一书,它显示了Hadoop Project Ecosystem中各种产品的相互关系。
DSC0000.jpg
三、结构

  Hadoop实际上包含两部分:分布式文件系统(HDFS)与分布式计算系统(MapReduce)。

1. HDFS Federation
  从名字变化可以看出,HDFS更加集群化了。HDFS包含两部分:


  • Namespace(命名空间):这个是2.0的东西,引入命名空间可以使HDFS的适应性更广了。具体来说,这样的扩展比以前的方式有3点好处:

  • namenode可以水平扩展了,使handoop可以处理很多小文件这种应用了。
  • 提高了性能,以前每次读取block时,都需要从单一的namenode上读取其信息,现在namenode的负荷拆分了。
  • 提供了隔离性,不同的应用和用户可以分配到不同的namenode上,即使不适当的应用拖垮一个namenode也不会影响其他的namenode。


  • Block Storage Service(块存储服务):这个东西从概念上没有变化,可能是细节的调整,块管理在Namenode上做,实际的存储在datanode上。
  下图是一个namenode与datanode的关系图。Namenode之间是独立的,一个失效/删除,另一个不受影响,4个datanode为各namenode提供实际的存储服务。
DSC0001.jpg
  一个比较好的事情是2.0的配置是back-compatible的,这对开源软件相当不易。
  
  (未完)

         版权声明:本文为博主原创文章,未经博主允许不得转载。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-137814-1-1.html 上篇帖子: hadoop-2.2.0+spark1.1.0安装过程 下篇帖子: 运行hadoop基准测试
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表