大数据的基本学习框架(Hadoop部分)

一、概述(Hadoop部分)

    (一)、Hadoop的起源与背景知识
        1、大数据的核心问题:(1)数据的存储:分布式文件系统(分布式存储)
                                    (2)数据的计算:分布式计算
        
        2、概念:数据仓库(Data warehouse)
            (1)我们可以把Hadoop和Spark看成是数据仓库的一种实现方式
            (2)数据仓库就是一个数据库,一般只做select
            (3)重要:掌握数据仓库搭建的过程
            (4)数据仓库又是一种OLAP的应用系统
                
        3、概念:OLTP和OLAP
            (1)OLTP:online transaction processing 联机事务处理
            (2)OLAP:online analytic processing 联机分析处理 ------> 一般:不会修改(删除)数据
        
        4、(最重要的内容)Google的几篇论文:3篇
            (1)GFS:Google File System   -----> HDFS              ----> 解决:数据的存储  
            (2)MapReduce计算模型         -----> Hadoop MapReduce  ----> 解决:数据的计算
            (3)BigTable大表              -----> HBase是NoSQL数据库
    

    (二)、实验环境

        1、Linux虚拟机(准备5台)

        2、putty或SecureCRT (在Windows下控制和操作Linux)

        3、WinSCP (用于Windows与虚拟机传输文件)          

    (三)、Apache Hadoop的体系结构(重要):实现Google的思想论文
        1、HDFS:Hadoop Distributed File System
            (*)主从结构
            (*)主节点:NameNode名称节点
            (*)从节点:DataNode数据节点
            (*)SecondaryNameNode:第二名称节点
        
        2、Yarn:是一个容器,运行MapReduce程序
            (*)主从结构    
            (*)主节点:ResourceManager 资源管理器
            (*)从节点:NodeManager     节点管理器
        
        3、HBase:需要单独安装
            (*)主从结构    
            (*)主节点:HMaster
            (*)从节点:RegionServer
    
    (四)、Hadoop 2.X的安装与配置
        Hadoop有三种安装模式
        1、本地模式      一台Linux
        2、伪分布模式    一台Linux
        3、全分布模式    三台Linux
        4、掌握免密码登录的原理和配置
    
    (五)、Hadoop应用案例分析
        1、大数据背景下,企业级系统的架构的变化
        2、HBase进行日志分析
    
    (六)、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
            (*)多表查询
            (*)倒排索引
    
    补充:MySQL数据库
    (八)、Hive:蜂巢  数据分析的引擎:翻译器   SQL ---------------> MapReduce
    (九)、Pig: 猪    数据分析的引擎:翻译器   PigLatin语言 ------> MapReduce
        
    (十)、HBase: NoSQL数据库
        1、是基于Hadoop之上的NoSQL
        2、体系结构:HMaster、RegionServer
        3、搭建:本地模式、伪分布模式、全分布模式
        4、操作:命令行、Java API、Web Console
        5、过滤器:实现复杂的查询
        6、HBase上的MapReduce
    
    (十一)、Sqoop:数据采集引擎,采集关系型数据库中的数据
    (十二)、Flume:数据采集引擎,采集日志
        
    (十三)、HUE:基于Web的管理工具
    
    (十四)、ZooKeeper: 相当于是一个”数据库“,实现HA(High Avaiblity高可用性)
    
    (十五)、Hadoop的集群和HA
        1、HDFS的联盟(Federation)
        2、Hadoop的HA(High Avaiblity高可用性)
    
    (十六)、Redis:基于内存的NoSQL数据库,提高性能
    
    (十七)、Storm:处理流式数据(实时计算)
                   集成Storm和Redis

猜你喜欢

转载自blog.csdn.net/long_zhiqi/article/details/80014843