大数据离线-Hadoop入门(上)

本次主要介绍大数据离线阶段的Hadoop入门,分为上下两篇。

  • 上篇的内容为Hadoop简介,历史,特性,应用四个模块。
  • 下篇的内容为hadoop的集群搭建,集群启动,入门初试三部分。

Hadoop介绍

一般我们讲的Hadoop分为狭义和广义两部分

  • 狭义上讲
    Hadoop 指 Apache 这款开源框架
    大数据离线-Hadoop入门(上)_第1张图片
    Hadoop 是 Apache 旗下的一个用 java 语言实现开源软件框架, 是一个开发和运行处理大规模数据的软件平台。 允许使用简单的编程模型在大量计算机集群上对大型数据集进行分布式处理。它的核心组件有:

    1. HDFS(分布式文件系统):解决海量数据存储
    2. YARN(作业调度和集群资源管理的框架):解决资源任务调度
    3. MAPREDUCE(分布式运算编程框架): 解决海量数据计算
  • 广义上讲
    Hadoop 通常是指一个更广泛的概念——Hadoop 生态圈。
    大数据离线-Hadoop入门(上)_第2张图片

当下的 Hadoop 已经成长为一个庞大的体系,随着生态系统的成长,新出现的项目越来越多,其中不乏一些非 Apache 主管的项目,这些项目对 HADOOP 是很好的补充或者更高层的抽象。 比如:

  • HDFS:分布式文件系统
  • MAPREDUCE:分布式运算程序开发框架
  • HIVE:基于 HADOOP 的分布式数据仓库,提供基于 SQL 的查询数据操作
  • HBASE:基于 HADOOP 的分布式海量数据库
  • ZOOKEEPER:分布式协调服务基础组件
  • Mahout:基于 mapreduce/spark/flink 等分布式运算框架的机器学习算法库
  • Oozie:工作流调度框架
  • Sqoop:数据导入导出工具(比如用于 mysql 和 HDFS 之间)
  • Flume:日志数据采集框架
  • Impala: 基于 Hadoop 的实时分析

Hadoop发展历史

  • Hadoop 是 Apache Lucene 创始人 Doug Cutting 创建的。最早起源于 Nutch,它是 Lucene 的子项目。 Nutch 的设计目标是构建一个大型的全网搜索引擎,包括网页抓取、索引、查询等功能,但随着抓取网页数量的增加,遇到了严重的可扩展性问题: 如何解决数十亿网页的存储和索引问题。
  • 2003 年 Google 发表了一篇论文为该问题提供了可行的解决方案。 论文中描述的是谷歌的产品架构,该架构称为: 谷歌分布式文件系统(GFS) ,可以解决他们在网页爬取和索引过程中产生的超大文件的存储需求。
  • 2004 年 Google 发表论文向全世界介绍了谷歌版的 MapReduce 系统。同时期, Nutch 的开发人员完成了相应的开源实现 HDFS 和 MAPREDUCE,并从Nutch 中剥离成为独立项目 HADOOP,到 2008 年 1 月, HADOOP 成为 Apache 顶级项目,迎来了它的快速发展期。
  • 2006 年 Google 发表了论文是关于 BigTable 的,这促使了后来的 Hbase 的发
    展。

因此, Hadoop 及其生态圈的发展离不开 Google 的贡献。


Hadoop的特点

1.扩容能力

Hadoop 是在可用的计算机集群间分配数据并完成计算任务的,这些集群可用方便的扩展到数以千计的节点中。

2.成本低

Hadoop 通过普通廉价的机器组成服务器集群来分发以及处理数据,以至于成本很低。

3.高效率

通过并发数据, Hadoop 可以在节点之间动态并行的移动数据,使得速度非常快。

4. 可靠性

能自动维护数据的多份复制,并且在任务失败后能自动地重新部署(redeploy)计算任务。所以 Hadoop 的按位存储和处理数据的能力值得人们信赖。


Hadoop 国内外应用

不管是国内还是国外, Hadoop 最受青睐的行业是互联网领域, 可以说互联
网公司是 hadoop 的主要使用力量。

  • 国外应用

    • Yahoo 的 Hadoop 应用在支持广告系统、 用户行为分析、 支持 Web 搜索等。
    • Facebook 主要使用 Hadoop 存储内部日志与多维数据,并以此作为报告、分
      析和机器学习的数据源。
  • 国内应用

    • 国内来说, BAT 领头的互联网公司是当仁不让的 Hadoop 使用者、维护者。比如 Ali 云梯(14 年国内最大 Hadoop 集群)、百度的日志分析平台、推荐引擎系统等。

大数据离线-Hadoop入门(上)_第3张图片
- 其他行业应用发
国内其他非互联网领域也有不少 hadoop 的应用,比如:
- 金融行业: 个人征信分析
- 证券行业: 投资模型分析
- 交通行业: 车辆、路况监控分析
- 电信行业: 用户上网行为分析

总之: hadoop 并不会跟某种具体的行业或者某个具体的业务挂钩,它只是
一种用来做海量数据分析处理的工具。


本博客现阶段主要针对大数据的学习会逐一推出相关的学习文档,从简介,原理,入门测试,小的案例练习都会包括。会每天抽出时间更新,感兴趣的童鞋,欢迎关注订阅,多多交流。

你可能感兴趣的:(大数据,Hadoop)