大数据学校(二)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












原文地址:https://www.cnblogs.com/wenlin66/p/8401454.html