学习大数据的第46天(Hadoop篇)——Hadoop框架的认识以及基础命令的认识
Hadoop的学习笔记
大数据的特点:
大量、高速、多样化
概述:
Hadoop是一个适合海量数据的分布式存储和分布式计算的平台。
Hadoop框架三大组件支持:
Hadoop是一个统称,目前hadoop主要包含三大组件:
(1)HDFS:是一个分布式存储框架,适合海量数据的存储
(2)mapreduce:是一个分布式计算框架,适合海量数据的计算
(3)yarn:是一个资源调度平台,负责给计算框架分配计算资源
HDFS的分布式存储流程:
具体流程(主从结构):
(1)客户端将数据传入NameNode中,NameNode接受客户端的请求,存储数据的元信息,保存具体数据的位置。
(2)将数据节点传送给客户端,客户端发送读写请求,数据节点接受客户端的读写请求,需要具体的本地文件,存储具体的数据
(3)Scondary NameNode(2NN):用来对元数据做备份处理,如果有多个NameNode就不需要Scondary NameNode
Yarn架构分析:
主从结构
主节点,可以有2个:ResourceManager
从节点,有很多个: NodeManager
ResourceManager负责
集群资源的分配与调度
MapReduce、Storm、Spark等应用,必须实现ApplicationMaster接口,才能被RM管理
NodeManager负责
单节点资源的管理(CPU+内存)
Mapreduce的架构分析:
依赖磁盘io的批处理计算模型
主从结构
主节点,只有一个: MRAppMaster
从节点,就是具体的task
MRAppMaster负责
接收客户端提交的计算任务
把计算任务分给NodeManager的Container中执行,即任务调度
Container是YARN中资源的抽象,它封装了某个节点上一定量的资源(CPU和内存两类资源)
Container由ApplicationMaster向ResourceManager申请的,由ResouceManager中的资源调度器异步分配给ApplicationMaster
Container的运行是由ApplicationMaster向资源所在的NodeManager发起的
监控Container中Task的执行情况
Task负责:
处理数据
搭建Hadoop平台
查看Hadoop的安装文档,详细过程
Hadoop文件中的文件的含义
1、bin目录:可执行文件:
2、etc:配置文件:
core-site.xml : Hadoop的底层 配置
hdfs-site.xml :配置HDFS文件
mapred-site.xml.template:配置MR
yarn-site.xml:配置yarn文件
3、sbin多看看,可以学习linux脚本的编写(比如启动hadoop脚本文件)
4、/usr/local/soft/hadoop-2.7.6/share/hadoop
comment :hadoop的公共包
yarn:存放yarn jar包
mapreduce: hadoop-mapreduce-examples-2.7.6.jar 提供样例的包
Hadoop上传文件
yarn的控制页面:
http://master:8088/cluster
上传文件到hadoop
hadoop fs -put README.txt /
展示根目录下的文件
hadoop fs -ls /
查看历史命令
history |grep hadoop
mapreduce的过程现在目前没看懂??????
/usr/local/soft/hadoop-2.7.6/bin/hadoop jar hadoop-mapreduce-examples-2.7.6.jar wordcount /input /output
运行结果:
详细启动脚本的介绍:
第一种:全部启动集群所有进程
启动:sbin/start-all.sh
停止:sbin/stop-all.sh
第二种:单独启动hdfs【web端口50070】和yarn【web端口8088】的相关进程
启动:sbin/start-dfs.sh sbin/start-yarn.sh
停止:sbin/stop-dfs.sh sbin/stop-yarn.sh
每次重新启动集群的时候使用
第三种:单独启动某一个进程
启动hdfs:sbin/hadoop-daemon.sh start (namenode | datanode)
停止hdfs:sbin/hadoop-daemon.sh stop (namenode | datanode)
启动yarn:sbin/yarn-daemon.sh start (resourcemanager | nodemanager)
停止yarn:sbin/yarn-daemon.sh stop(resourcemanager | nodemanager)
用于当某个进程启动失败或者异常down掉的时候,重启进程
Hadoop 三种运行模式:
1.本地模式(学习)1.没有HDFS,使用当前系统下的文件系统2.没有YARN,使用的是Linux中的资源3.使用了 Map-Reduce Framework 2.伪分布式模式(学习)1.只有单台机器2.使用HDFS、Yarn、MapReduce3.分布式模式(企业级)1.多台服务器2.集群模式,包含整个Hadoop组件
HDFS SHELL:
1.两种命令模式1.1 hadoop fs1.2 hdfs dfs2.上传文件-put:hadoop fs -put ./word.txt /input-copyFromLocalhadoop fs -copyFromLocal ./3.下载文件:-gethadoop fs -get /input/word_2.txt ./word_3.txt-copyToLocalhadoop fs -copyToLocal /input/word_2.txt ./word_4.txt4.查看HDFS文件信息:-lshdfs dfs -ls /-df -hhdfs dfs -df -h / # 查看HDFS根目录中空间使用情况-du -hhdfs dfs -du -h / # 查看指定目录下的文件大小5.赋予文件权限-chmodhdfs dfs -chmod u+x 路径 #表示对指定路径或文件赋予执行使用者权限6.创建文件夹-mkdir-p :表示迭代创建多级目录7.移动文件或文件夹-mv8.设置副本数-setrephadoop fs -setrep 副本数 多个路径9.查看文件内容-tailhadoop fs -tail /re/word_2.txt-f:hadoop fs -tail -f /re/word_2.txt # 表示追踪文件的内容-cathadoop fs -cat /re/word_2.txt