你好,游客 登录 注册 搜索
背景:
阅读新闻

一页纸精华丨Hadoop概览

[日期:2016-01-21] 来源:中兴大数据  作者:牛家浩 [字体: ]

  每一个知道 大 数据 的人都听说过 Hadoop ,作为基础框架,其凭借着低成本、高可靠、高扩展、高有效、高容错等特性成为最流行的大数据分析系统。要入门大数据,最好的办法就是理清 Hadoop 的生态系统。

  Hadoop 是 Apache 软件基金会的顶级开源项目,是由原雅虎公司 Doug Cutting 根据 Google 发布的学术论文而创建的开源项目。 Doug Cutting 被称为 Hadoop 之父,他打造了目前在云计算和大数据领域里如日中天的 Hadoop 。

  Hadoop 的发音是 [hædu:p] , Hadoop 这个名字不是一个缩写,而是一个虚构的名字。 Doug Cutting 解释 Hadoop 的得名: “ 这个名字是我孩子给一个棕黄色的大象玩具命名的。我的命名标准就是简短、容易发音和拼写,没有太多的意义,并且不会被用于别处,小孩子恰恰是这方面的高手 ” 。

  Apache Hadoop 官方定义是: Hadoop 项目 ™® 是一套可靠的,可扩展的,支持分布式计算的开源软件。

  Hadoop 是一个基础框架,允许用简单的编程模型在计算机集群对大型数据集使进行分布式处理。它的设计规模从单一服务器到数千台机器,每个都提供本地计算和存储,框架本身提供计算机集群高可用的服务而不是依靠硬件来提供高可用性。用户可以在不了解分布式底层细节的情况下,轻松地在 Hadoop 上开发和运行处理海量数据的应用程序,低成本、高可靠、高扩展、高有效、高容错等特性让 Hadoop 成为最流行的 大数据分析 系统。

  Hadoop 特点 :

  ●Hadoop 是一个能够对大量数据进行分布式处理的软件框架,它是以一种可靠、高效、可伸缩的方式进行数据处理。

  ●Hadoop 是可靠的,它假设计算元素和存储会失败,因此它维护多个数据副本,确保能够针对失败的节点重新分布处理。

  ●Hadoop 是高效的,它以并行的方式工作,通过并行处理加快处理速度。

  ●Hadoop 还是可伸缩的,能够处理 PB 级数据。

  ●Hadoop 是一个能够让用户轻松架构和使用的分布式计算平台。用户可以轻松地在Hadoop 上开发和运行处理海量数据的应用程序。

  ●Hadoop 带有用 Java 语言编写的框架,因此运行在 Linux 生产平台上是非常理想的。 Hadoop 上的应用程序也可以使用其他语言编写,比如 C++ 。

  ●Hadoop 依赖于社区服务,它的成本比较低。

  Hadoop 版本演进

  当前 Hadoop 有两大版本: Hadoop 1.0 和 Hadoop 2.0 ,如下图所示。

  Hadoop 版本演进图

  Hadoop1.0 被称为第一代 Hadoop ,由分布式文件系统 HDFS 和分布式计算框架MapReduce 组成,其中, HDFS 由一个 NameNode 和多个 DataNode 组成,MapReduce 由一个 JobTracker 和多个 TaskTracker 组成,对应 Hadoop 版本为0.20.x 、 0.21.X , 0.22.x 和 Hadoop 1.x 。其中 0.20.x 是比较稳定的版本,最后演化为 1. x ,变成稳定版本。 0.21.x 和 0.22.x 则增加了 NameNode HA 等新特性。

  第二代 Hadoop 被称为 Hadoop2.0 ,是为克服 Hadoop 1.0 中 HDFS 和MapReduce 存在的各种问题而提出的,对应 Hadoop 版本为 Hadoop 0.23.x 和 2.x 。

  针对 Hadoop1.0 中 NameNode HA 不支持自动切换且切换时间过长的风险,Hadoop2.0 提出了基于共享存储的 HA 方式,支持失败自动切换切回。

  针对 Hadoop 1.0 中的单 NameNode 制约 HDFS 的扩展性问题,提出了 HDFS Federation 机制,它允许多个 NameNode 各自分管不同的命名空间进而实现数据访问隔离和集群横向扩展。

 

  针对 Hadoop 1.0 中的 MapReduce 在扩展性和多框架支持方面的不足,提出了全新的资源管理框架 YARN ,它将 JobTracker 中的资源管理和作业控制功能分开,分别由组件 ResourceManager 和 ApplicationMaster 实现。其中, ResourceManager 负责所有应用程序的资源分配,而 ApplicationMaster 仅负责管理一个应用程序。相比于Hadoop 1.0 , Hadoop 2.0 框架具有更好的扩展性、可用性、可靠性、向后兼容性和更高的资源利用率以及能支持除了 MapReduce 计算框架外的更多的计算框架,Hadoop 2.0 目前是业界主流使用的 Hadoop 版本。(牛家浩)





收藏 推荐 打印 | 录入:elainebo | 阅读:
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款