文章目录

  • 一.大数据
  • 第一章 概念
  • 第2章 大数据特点(4V)
  • 第3章 大数据部门内组织结构
  • 二.Hadoop(入门)
  • 第1章 Hadoop概述
  • 1.1Hadoop是什么
  • 1.2 Hadoop优势(4高)
  • 1.3 Hadoop组成(面试重点)
  • 1.3.1端口号
  • 1.3.2 HDFS架构概述(Hadoop Distributed File System )
  • 1.3.3 YARN架构概述(Yet Another Resource Negotiator)
  • 1.3.4 MapReduce架构概述
  • 1.3.5 HDFS、YARN、MapReduce三者关系
  • 1.4 大数据技术生态体系


一.大数据

第一章 概念

  大数据(Big Data) :指无法在- -定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。

第2章 大数据特点(4V)

 1.大量
 2.高速
 3.多样
 4.低价值密度

第3章 大数据部门内组织结构

hadoop 大数据库搭建 hadoop大数据实战权威指南_大数据

二.Hadoop(入门)

第1章 Hadoop概述

1.1Hadoop是什么

  1) Hadoop是 -个由Apache基金会所开发的分布式系统基础架构。

  2)主要解决,海量数据的存储和海量数据的分析计算问题。

  3)广义上来说,Hadoop通常是指一 个更广泛的概念—Hadoop生态圈。

hadoop 大数据库搭建 hadoop大数据实战权威指南_HDFS_02

1.2 Hadoop优势(4高)

  1)高可靠性 : Hadoop 底层维护多个数据副本,所以即使Hadoop某个计算元素存储出现故障,也不会导致数据的丢失
  2)高扩展性: 在集群分配任务数据,可方便的扩展数以千计的节点
  3)高效性:在MapReduce 的思想下,Hadoop是并行工作的,以加快任务处理速度。
  4) 高容错性 :能够自动将失败的任务重新分配

1.3 Hadoop组成(面试重点)

  1.x MapReuce (计算+资源调度) ,HDFS(数据存储),Common(辅助工具)
  2.x MapReuce (计算) ,Yarn(资源调度),HDFS(数据存储),Common(辅助工具)
  3.x : 组成和二一样
  1和2,1的MapReduce耦合性大

1.3.1端口号

端口名称

Hadoop2.x

Hadoop3.x

NameNode内部通信端口

8020 / 9000

8020 / 9000/9820

NameNode HTTP UI

50070

9870

MapReduce查看执行任务端口

8088

8088

历史服务器通信端口

19888

19888

1.3.2 HDFS架构概述(Hadoop Distributed File System )

NameNode(nn): 存储文件的元数据,如文件名,文件目录结构,文件属性,以及每个文件的块列表和块所在的DataNode等.

DataNode(dn) :在本地文件系统存储文件块数据,以及块数据的校验和

Secondary NameNode(2nn): 每隔一段时间对NameNode元数据备份

1.3.3 YARN架构概述(Yet Another Resource Negotiator)

ResouManager(RM):整个集群资源(内存、cpu)老大

NodeManager (NM)整个节点老大

ApplicationMaster(AM):单个任务运行的老大

Container:容器,相当一个独立的服务器,里面封装了任务运行所需要的资源

1.3.4 MapReduce架构概述

MapReduce将计算过程分为两个阶段:Map和Reduce

1)Map阶段并行处理输入数据

2)Reduce阶段对Map结果进行汇总

1.3.5 HDFS、YARN、MapReduce三者关系

hadoop 大数据库搭建 hadoop大数据实战权威指南_Hadoop_03


 1.集群开始工作

 2.RM 找一台节点 Container 然后把任务放在里边叫做AM

 3.AM向RM申请这个任务所需资源

 4 hadoop102,103有对应资源 就开启资源这也就是MR中的 Map阶段检索自己的节点,不管有无检索到,都会返回一个结果

 5.然后把这个结果写道磁盘上这个就是MR中的 Reduce阶段 将结果汇总写入HDFS中 ,DN将结果存储

 6.将5这一操作记录在NN中,

 7. 2NN也记录一份数据

 对上面名词做一些解释:
 NameNode (nn): Master 它是一个主管,管理者 管理HDFS的名称空间 配置副本策略,管理数据块映射信息 处理客户端的读写请求
 dataNode slave 存储实际数据块 ,执行读写操作
  Secondary NameNode: 秘书 分担工作 ,辅组回复NN
  ResourceManager(RM):整个集群资源(内存、CPU等)的老大
  NodeManager(NM):单个节点服务器资源老大
 ApplicationMaster(AM):单个任务运行的老大
 Container:容器,相当一台独立的服务器,里面封装了任务运行所需要的资源,如内存、CPU、磁盘、网络等。

1.4 大数据技术生态体系

hadoop 大数据库搭建 hadoop大数据实战权威指南_Hadoop_04

图中涉及的技术名词解释如下:

  1)Sqoop:Sqoop是一款开源的工具,主要用于在Hadoop、Hive与传统的数据库(MySQL)间进行数据的传递,可以将一个关系型数据库(例如 :MySQL,Oracle 等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。

  2)Flume:Flume是一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;

  3)Kafka:Kafka是一种高吞吐量的分布式发布订阅消息系统;

  4)Spark:Spark是当前最流行的开源大数据内存计算框架。可以基于Hadoop上存储的大数据进行计算。

  5)Flink:Flink是当前最流行的开源大数据内存计算框架。用于实时计算的场景较多。

  6)Oozie:Oozie是一个管理Hadoop作业(job)的工作流程调度管理系统。

  7)Hbase:HBase是一个分布式的、面向列的开源数据库。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。

  8)Hive:Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行。其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。

  9)ZooKeeper:它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。