大数据的核心工作

大数据的核心工作其实就是:从海量的高增长、多类别、低信息密度的数据中挖掘出高质量的结果

大数据的核心工作_第1张图片

什么是大数据 
狭义上:对海量数据进行处理的软件技术体系 
广义上:数字化、信息化时代的基础支撑,以数据为生活赋能   

大数据软件生态(数据存储,数据计算,数据传输)                                                  大数据的核心工作_第2张图片大数据的核心工作_第3张图片大数据的核心工作_第4张图片 大数据的核心工作_第5张图片

大数据的核心工作_第6张图片

大数据的核心工作_第7张图片

大数据的核心工作_第8张图片

1.大数据的核心工作
存储:妥善保存海量待处理数据
计算:完成海量数据的价值挖掘
传输:协助各个环节的数据传输
2.大数据软件生态
存储:Apache Hadoop HDFS、Apache HBase等
计算:Apache Hadoop MapReduce、Apache Spark、Apache Flink
传输:Apache Sqoop、Apache Flume、Apache Kafka等                                                                 大数据软件生态中,软件名称都有Apache      Apache是什么?
 Apache软件基金会(Apache Software Foundation,简称ASF)是专门为支持开源软件项目而办的一个非盈利性组织。

什么是Hadoop
Hadoop是Apache软件基金会下的顶级开源项目,用以提供:
-分布式数据存储
-分布式数据计算
-分布式资源调度
为一体的整体解决方案。
Apache Hadoop是典型的分布式软件框架,可以部署在1台乃至成千上万台服务器节点上协同工作。个人或企业可以借助Hadoop构建大规模服务器集群,完成海量数据的存储和计算。                 Hadoop的功能                                                                                                                                   通常意义上,Hadoop是一个整体,其内部还会细分为三个功能组件,分别是:                               大数据的核心工作_第9张图片Hadoop是一个集合:存储、计算、资源调度为一体的大数据分布式框架 

1.什么是Hadoop
Hadoop是开源的技术框架,提供分布式存储、计算、资源调度的解决方案
2.Hadoop的发展
创始人Doug Cutting
基于Nutch搜索项目发展
发展受到Google三篇著名的论文影响
3.Hadoop的版本
Apache 开源社区版 (原生版本)
Cloudera等商业公司自行封装的商业版

Hadoop是哪种分布式架构模式?
主从模式(中心化模式)的架构
分布式和集群区别?
分布式 :分布式的主要工作是分解任务,将职能拆解,多个人在一起做不同的事
集群:集群主要是将同一个业务,部署在多个服务器上 ,多个人在一起做同样的事
Hadoop框架内容
狭义解释:
Hadoop指Apache这款开源框架,核心组件有:
HDFS(分布式文件系统):解决海量数据存储
MAPREDUCE(分布式运算编程框架):解决海量数据计算
YARN(作业调度和集群资源管理的框架):解决资源任务调度
广义解释:
广义上来说,Hadoop通常是指一个更广泛的概念——Hadoop生态圈。

Hadoop架构
Hadoop模块之间的关系
MapReduce计算需要的数据和产生的结果需要HDFS来进行存储
MapReduce的运行需要由Yarn集群来提供资源调度。                                                                       大数据的核心工作_第10张图片

大数据的核心工作_第11张图片

大数据的核心工作_第12张图片

Hadoop架构(Hadoop模块之间的关系)
MapReduce计算需要的数据和产生的结果需要HDFS来进行存储
MapReduce的运行需要由Yarn集群来提供资源调度。
Hadoop集群搭建(简介)
HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起。
HDFS集群
NameNode、DataNode、SecondaryNameNode
YARN集群    
ResourceManager、NodeManager
集群搭建方式
Standalone mode(单机模式)
 单机模式, 1个机器上运行HDFS的NameNode和DataNode、YARN的 ResourceManger和NodeManager,主要用于学习和调试。

大数据的核心工作_第13张图片

Cluster mode(集群模式)
集群模式主要用于生产环境部署。会使用N台主机组成一个Hadoop集群。这种部署模式下,主节点和从节点会分开部署在不同的机器上。

大数据的核心工作_第14张图片

Hadoop集群使用
Hadoop启动和关闭-集群模式
1、启动三台虚拟机
2、使用CRT分别连接三台虚拟机
3、集群一键启动和关闭
一键启动大数据环境

start-all.sh

一键关闭大数据环境

stop-all.sh

注意: 想要查看mr历史任务需要单独启动historyserver

mapred --daemon start historyserver

Hadoop页面访问-集群模式
4、查看启动进程-jps                                                                                                                           大数据的核心工作_第15张图片

5、查看HDFS页面
启动NameNode.连接URL: http://192.168.88.161:9870
6、查看YARN页面
启动ResourceManager.连接URL:http://192.168.88.161:8088
7、查看已经finished的mapreduce运行日志
启动historyserver.连接URL:http://192.168.88.161:19888

HDFS的概述
统一管理分布在集群上的文件系统称为分布式文件系统
​HDFS(Hadoop Distributed File System)是 Apache Hadoop 项目的一个子项目. Hadoop 非常适于存储大型数据 (比如 TB 和 PB)作为存储系统. HDFS 使用多台计算机存储文件, 提供统一的访问接口, 像是访问普通文件系统一样使用分布式文件系统. 
分布式文件系统解决的问题就是大数据存储。它们是横跨在多台计算机上的存储系统。

大数据的核心工作_第16张图片

HDFS的特点                                                                                                                                       大数据的核心工作_第17张图片

HDFS文件系统可存储超大文件,时效性稍差。
HDFS具有硬件故障检测和自动快速恢复功能。
HDFS为数据存储提供很强的扩展能力。
HDFS存储一般为一次写入,多次读取,只支持追加写入,不支持随机修改。
HDFS可在普通廉价的机器上运行。
 

HDFS的架构

大数据的核心工作_第18张图片
HDFS采用Master/Slave架构
一个HDFS集群有两个重要的角色,分别是NamenodeDatanode
HDFS的四个基本组件:HDFS ClientNameNodeDataNodeSecondary NameNode
1、Client
就是客户端。
文件切分。文件上传 HDFS 的时候,Client 将文件切分成 一个一个的Block,然后进行存储
与 NameNode 交互,获取文件的位置信息。
与 DataNode 交互,读取或者写入数据。
Client 提供一些命令来管理 和访问HDFS,比如启动或者关闭HDFS。
2、NameNode
就是 master,它是一个主管、管理者。
管理 HDFS 元数据(文件路径,文件的大小,文件的名字,文件权限,文件的block切片信息….)。
配置副本策略。
处理客户端读写请求。
3、DataNode
就是Slave。NameNode 下达命令,DataNode 执行实际的操作。
存储实际的数据块。
执行数据块的读/写操作。
定时向namenode汇报block信息。
4、Secondary NameNode
并非 NameNode 的热备。当NameNode 挂掉的时候它并不能马上替换 NameNode 并提供服务。
辅助 NameNode,分担其工作量。
在紧急情况下,可辅助恢复 NameNode。

HDFS的副本机制                                                                                                                               HDFS被设计成一个大集群中跨机器可靠地存储超大文件。它将每个文件存储成一系列的数据块,这个数据块被称为block,除了最后一个,所有的数据块都是同样大小的。
hdfs默认文件:https://hadoop.apache.org/docs/r3.3.4/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml
为了容错,文件的所有block都会有副本。每个文件的数据块大小和副本系数都是可配置的。
hadoop 当中, 文件的 block 块大小默认是 128M(134217728字节)。

大数据的核心工作_第19张图片

HDFS的Shell命令
ls命令

-ls 
格式:  hadoop fs -ls  URI
作用:类似于Linux的ls命令,显示文件列表
hadoop fs -ls  /         #显示文件列表
hadoop fs –ls -R  /   #递归显示文件列

mkdir命令

格式 :hadoop  fs –mkdir [-p]  
作用 : 以中的URI作为参数,创建目录。使用-p参数可以递归创建目录
应用:
hadoop fs -mkdir /dir1
hadoop fs  -mkdir -p /aaa/bbb/ccc

put命令

格式   :
    hadoop fs -put   ... 

作用 : 
    将单个的源文件或者多个源文件srcs从本地文件系统上传到目标文件系统中。
 
应用:
     hadoop fs -put  /root/1.txt  /dir1   #上传文件
     hadoop fs –put /root/dir2   /           #上传目录

get命令

 格式 :
   hadoop fs  -get   

作用:
    将HDFS文件拷贝到本地文件系统。
应用:
   hadoop fs  -get   /initial-setup-ks.cfg   /opt

mv命令

 格式 :
      hadoop  fs  -mv     

 作用: 
     将hdfs上的文件从原路径src移动到目标路径dst,该命令不能夸文件系统

 应用:
   hadoop  fs  -mv  /dir1/1.txt   /dir2

rm命令

格式: 
      hadoop fs -rm [-r] [-skipTrash] URI [URI 。。。]

 作用:   
    删除参数指定的文件和目录,参数可以有多个,删除目录需要加-r参数
    如果指定-skipTrash选项,那么在回收站可用的情况下,该选项将跳过回收站而直接删除文件;
    否则,在回收站可用时,在HDFS Shell 中执行此命令,会将文件暂时放到回收站中。
应用:
  hadoop fs -rm  /initial-setup-ks.cfg       #删除文件
  hadoop fs -rm  -r  /dir2                 #删除目录

cp命令

格式:    
      hadoop  fs  -cp    
作用:    
   将文件拷贝到目标路径中
应用:
  hadoop fs -cp /dir1/1.txt  /dir2

cat命令

格式: 
   hadoop fs  -cat 

作用:
   将参数所指示的文件内容输出到控制台

应用: 
   hadoop fs  -cat  /dir1/1.txt

你可能感兴趣的:(hadoop,数据库,数据库架构)