Hadoop各部分概述

Hadoop部分大纲

(一)、Hadoop的起源和背景知识

  1、什么是大数据?两个例子、大数据的核心问题是什么?

  2、概念:数据仓库(Data warehouse)

  3、概念:OLTP和OLAP

  4、(最重要的内容)Google的三篇论文

      (1)、GFS:Google File System --------> HDFS

      (2)、MapReduce计算模型       --------> Hadoop MapReduce

    (3)、BigTable大表                   --------> HBASE是NoSQL数据库 

(二)、实验环境

(三)、Apache Hadoop的体系结构(重要):实现Google的思想论文

  1、HDFS:Hadoop Distributed File System

    (*)主从结构

    (*)主节点:NameNode名称节点

    (*)  从节点:DataNode数据节点

    (*)SecondaryNameNode:第二名称节点

  2、Yarn:是一个容器,运行MapReduce程序(MapRecue不能独立运行,相当于java在tomcat中运行)

    (*)主从结构

    (*)主节点:ResourceManager资源管理器

    (*)从节点:NodeManage节点管理器

  3、HBASE:需要单独安装(Hadoop安装包中只有HDFS和MapReduce,没有HBASE)

    (*)主从结构

    (*)主节点:HMaster

      (*)   从节点:RegionServer

(四)、Hadoop 2.x的安装与配置

  Hadoop有三种安装模式:

    1、本地模式       一台Linux

    2、伪分布模式    一台Linux

    3、全分布模式  三台Linux

    掌握免密码登录的原理和配置

(五)、Hadoop应用案例分析

   1、大数据背景下,企业级系统的架构的变化

   2、HBase进行日志分析

   3、了解:Hadoop在淘宝的应用

(六)、HDFS:Hadoop的分布式文件系统,数据存储

  1、操作HDFS:(1)命令行(2)Java API(3)网页:Web Console

  2、原理:数据上传的过程

        数据下载的过程

  3、HDFS的底层实现:RPC和Java动态代理

             RPC:remote procedure call

  4、高级特性:

    (*)回收站

    (*)快照snapshot:是一种备份

    (*)配额quota:(1)名称配额  (2)空间配额

    (*)安全模式 safemode

(七)、MapReduce:是一个计算模型,可以用Java来实现

  1、Demo:经典WordCount

  2、重点:MapReduce处理数据的过程

  3、原理:Yarn执行MapReduce的过程

  4、MapReduce的高级特性

    (*)序列化

    (*)排序

    (*)分区

    (*)合并

  5、MapReduce的核心:Shuffle(洗牌)

  6、编程案例:

    (*)排序:order by

    (*)去重:distinct

    (*)多表查询

    (*)倒排索引

(八)、Hive:蜂巢  数据分析的引擎:翻译器SQL------------------->MapReduce程序

(九)、Pig:猪     数据分析的引擎:翻译器PigLatin语言-------->MapReduce程序

(十)、HBase:NoSQL数据库

  1、是基于Hadoop之上的NoSQL

  2、体系结构:HMaster、RegionServer

  3、搭建:本地模式、伪分布模式、全分布模式

  4、操作:(1)命令行(2)Java API(3)网页:Web Console

  5、过滤器:实现复杂的查询

  6、HBase的MapReduce

(十一)、Sqoop:数据采集引擎,采集关系型数据库中的数据(Oracle,Mysql)

(十二)、Flume:数据采集引擎,采集日志

(十三)、Hue:基于Web的管理工具,可以管理Hadoop所有的模块

(十四)、ZooKeeper:相当于是一个”数据库”,实现HA(High Avaiblity高可用性)

(十五)、Hadoop的集群和HA

  1、HDFS的联盟(Federation)

  2、Hadoop的HA(High Avaiblity)


(十六)、Redis:基于内存的NoSQL数据库,提高性能

(十七)、Storm:处理流式数据(实时计算)

          集成Storm和Redis

猜你喜欢

转载自www.cnblogs.com/jiangbs/p/9107972.html