预备知识:

  • linux常用命令(基本的)
  • Java编程基础

知识点:
1、大数据技术相关概念
2、Hadoop的架构也运行机制
3、实战:Hadoop 的安装与配置
4、实战:Hadoop 开发

学习目标

  • 掌握大数据存储与处理技术的原理(理论知识)
  • 掌握 Hadoop 的使用和开发能力(时间能力)

Hadoop的前生今世

大数据时代到来,数据规模越来越大,遇到系统瓶颈(存储容量、读写速率、计算效率…)那么我们如何对大数据进行存储和分析???于是Google提出三大技术来进行处理

Google大数据技术(并没有开源)

  • MapReduce
  • BigTable
  • GFS
    Google提出这三个技术带来了革命性变化,如下:
    变化1: 成本低、能用pc机器,就不用大型机和高端存储(三个诸臭皮匠顶个诸葛亮)
    变化2:软件容错硬件视为常态、通过软件保证可靠性
    变化3:简化并行分布式计算、无需控制节点同步和数据交换
    但是Google只发表了相关的技术论文、没有开源代码,幸运的是开源的力量下一个模仿Google大数据技术的开源的实现 — Hadoop 出现了

Hadoop 的功能和优势

Hadoop是什么:开源的分布式存储 + 分布式计算平台

Hadoop的组成

包含两个核心组成部分:

  • HDFS:分布式文件系统、用来存储海量的数据
  • MapReduce:并行处理框架、实现任务分解和调度

Hadoop可以用来做什么?

搭建大型数据仓库、PB级数据存储、处理、分析、统计等业务
比如:搜索引擎、商业智能、日志分析、数据挖掘

Hadoop 的优势

1、高扩展:理论上可以进行无限扩展
2、低成本:无需依赖高端硬件
3、成熟的生态圈:开源的衍生工具非常多

Hadoop 的应用情况

阿里巴巴、华为、腾讯、小米、Facebook、雅虎、因特尔….都在用,Hadoop已经成为业界大数据平台的首选,hadoop的人才需求也越来越大(企业需要Hadoop的开发人才、和运维人才)。

Hadoop 的生态系统及版本

生态系统

  • HIVE:将SQL转换为hadoop任务执行
  • HBASE:分布式数据库(放弃了事务特性、最求更高的扩展)
  • zookeeper:监控集群的状态、维护数据的一致性