zoukankan      html  css  js  c++  java
  • 大数据学校(二)hadoop概述及Google的三篇论文

    学习大数据,学什么?怎么学?

    1、原理和运行机制、体系结构(非常重要)
    2、动手:搭建环境、写程序

    目的:1、学习内容 2、熟悉一些名词

    一、各章概述(Hadoop部分)

    (一)、Hadoop的起源与背景知识
    1、什么是大数据?两个例子、大数据的核心问题是什么?
    举例:

    (1)商品推荐:问题1:大量的订单如何存储? 问题2:大量的订单如何计算?
    (2)天气预报:问题1:大量的天气数据如何存储? 问题2:大量的天气数据如何计算?

    大数据的核心问题:

    (1)数据的存储:分布式文件系统(分布式存储)
    (2)数据的计算:分布式计算

    ps:1.HDFS解决了硬盘不够大和数据不安全的问题,方式分别为多增加几个硬盘盒数据冗余,HDFS默认冗余度为3(相当于一份文件默认存三份)。

    2.HDFS数据的上传是通过数据块上传的。1.X版本默认为64M,2.X版本默认是128M.

    3.HDFS首先上传数据到一个硬盘,然后通过水平复制,达到冗余度要求。

    4.HDFS分为主节点NameNode(名称节点),SecondaryNameNode(第二名称节点),DataNode(数据节点)。

    NameNode(名称节点)和SecondaryNameNode(第二名称节点)没有关系,作用不同。

    机架感知详解:https://www.cnblogs.com/ggjucheng/archive/2013/01/03/2843015.html

    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数据库

    (二)、实验环境



    (三)、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进行日志分析
    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
    (*)多表查询
    (*)倒排索引

    补充: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












  • 相关阅读:
    Loadrunner系列学习--Loadrunner架构(1)
    Loadrunner学习---脚本编写(1)
    loadrunner学习系列---脚本编写(2)
    LoadRunner学习---脚本编写(4)(比较重要)
    LoadRunner内部结构(1)
    pat 1142
    pat 1025
    pat 1140
    c/c++ 常用函数/方法
    pat 1136
  • 原文地址:https://www.cnblogs.com/wenlin66/p/8401454.html
Copyright © 2011-2022 走看看