《Hadoop篇》------大数据及Hadoop入门

目录

一、大数据及Hadoop入门

1.1 单节点、分布式、集群

1.1.1 大数据的概念

1.1.2 大数据的本质

二、HDFS Shell命令

2.1、常用相关命令

2.2、上传文件

2.2.1、上传文件介绍

2.2.2上传文件操作

2.3、下载文件

2.4、删除文件

2.5、创建目录

2.6、查看文件系统

2.7、拷贝文件

三、分布式系统原理

3.1、数据块

四、HDFS架构

五、Datanode服役(上线)和退役(下线)

5.1分发到其他节点

5.2、格式化并启动HDFS 

5.3、更新hdfs

六、Centos权限管理

6.1、权限介绍

6.2、修改权限

七、HDFS进程启动流程

八、Hadoop配置文件解释

8.1 hadoop内核和环境配置

8.2、mapreduce配置

8.3、yarn配置

8.4、slaves配置

九、hdfs及yarn启动验证:进程启动命令


一、大数据及Hadoop入门

1.1 单节点、分布式、集群

1.1.1 大数据的概念

大数据的5v特点

Volume:大量

Velocity:高速

Variety:多样

Value:价值

Veracity:真实性

1.1.2 大数据的本质

大数据的本质就是利用计算机集群来处理大批量的数据,大数据的技术关注点在于如何将数据分发给不同的计算机进行存储和处理。

✳ 1)单台计算机存储这些数据都是很困难的,那怎么办?

答:分发到不同的计算机存储。

✳ 2)只存储有没有意义?

答:无意义,存储是需要投入场地,投入服务器硬件设施,都需要钱维护。

✳ 3)那存储后需要什么?怎么样让存储变得有意义?

答:认真分析,真正地把数据转换成有价值的虚拟产品。

二、HDFS Shell命令

2.1、常用相关命令

hdfs dfs-cat  //查看
hdfs dfs-copyFromLocal  //从本地复制
hdfs dfs-copyToLocal  //复制至本地
hdfs dfs-cp  //复制
hdfs dfs-get  //获取
hdfs dfs-ls  //查看
hdfs dfs-mkdir  //创建文件
hdfs dfs-put  //传输
hdfs dfs-rm  //删除

2.2、上传文件

2.2.1、上传文件介绍

(1)全称形式

hdfs dfs-put  ./file hdfs://hadoop1:9000/

hdfs dfs-copyfromlocal  ./file  hdfs://hadoop1:9000/

(2)省略写法

hdfs dfs-put  ./file  /

hdfs dfs-copyfromlocal   ./file  /

问题:为什么能够省略具体hdfs对应ip地址呢?

答:配置了core-site.xml

2.2.2上传文件操作

-put方式上传

[root@hadoop1 ~]# cd /home/java    

[root@hadoop1 java]# ls

jdk  jdk_1.8.0_131.tar.gz

[root@hadoop1 java]# hdfs dfs -put  ./jdk_1.8.0_131.tar.gz  hdfs://hadoop1:9000/

-copyFromLocal方式上传

[root@hadoop1 ~]# cd /home/java    

[root@hadoop1 java]# ls

jdk  jdk_1.8.0_131.tar.gz

[root@hadoop1 java]# hdfs dfs -put  ./jdk_1.8.0_131.tar.gz  hdfs://hadoop1:9000/

2.3、下载文件

hdfs dfs -get HDFS的根路径下的文件  本地的文件系统

hdfs dfs -get hdfs://hadoop1:9000/hadoop-2.6.1.tar.gz  ./

hdfs dfs -copyToLocal /jdk_1.8.0_131.tar.gz ./

前面一个/代表HDFS的根路径,后面一个/代表Linux的根路径

2.4、删除文件

rm -rf dir  删除Linux本地文件系统中对应目录

hdfs dfs -rm /hadoop-2.6.1.tar.gz  删除hdfs文件系统中的内容

hdfs dfs -rm -r /dir  删除目录和子目录

2.5、创建目录

hdfs dfs -mkdir /dir  一个目录,不是递归目录

hdfs dfs -mkdir -p /dir1/dir2  递归目录

2.6、查看文件系统

hdfs dfs -ls /

2.7、拷贝文件

cp jdk_1.8.0_131.tar.gz  jdk_1   将后者拷贝到前者所在的文件夹中  Linux本地执行

hdfs dfs -cp /jdk_1.8.0_131.tar.gz /jdk1   HDFS文件系统中

三、分布式系统原理

3.1、数据块

把数据切分成一个个固定大小的块(物理切分,不是逻辑切分),将这些块存储到分布式文件系统上

四、HDFS架构

 HDFS的文件是在物理上分块存储的 (hadoop2.x版本它的默认blocksize大小128M)

五、Datanode服役(上线)和退役(下线)

5.1分发到其他节点

 scp /home/hadoop/hadoop-2.6.1/etc/hadoop/slaves hadoop2:/home/hadoop/hadoop-2.6.1/etc/hadoop/   分发到其他节点

5.2、格式化并启动HDFS 

hdfs namenode -format

start-dfs.sh

格式化,并启动HDFS

5.3、更新hdfs

hdfs dfsadmin -refreshNodes

六、Centos权限管理

6.1、权限介绍

每一组信息如“rwx”,每一个字符都有它自己的特定含义且先后位置是固定的,其中r是读权限、w是写权限、x是可执行权限、-没有对应字符的权限

 Linux里面对这些字符设置对应的数值,r是4,w是2,x是1,-是0。“rwx”则是7(=4+2+1)

6.2、修改权限

修改文件夹及子文件夹所有文件

chown 或 chomd  -R  “权限”或“名:组”  文件夹名称

七、HDFS进程启动流程

DataNode:负责数据块的存储,它是HDFS的小弟

Namenode:负责元数据的存储,接收客户端的请求,维护整个HDFS集群的目录树

Secondary:辅助namenode管理,分担namenode压力

八、Hadoop配置文件解释

8.1 hadoop内核和环境配置

(1)hadoop-env.sh:配置JDK的路径

(2)core-site.xml:配置Hadoop集群的元数据存储路径,配置主节点在哪一台机器上

        
                fs.defaultFS
                hdfs://hadoop1:9000
指定namenode将来在哪一台节点启动,通信端口是9000,是fileSystem默认的端口号
        
        hadoop.tmp.dir
        /usr/hadoop-2.6.1/hdpdata
指定元数据存储的路径,hdpdata是在执行 hdfs namenode -format后才会自动生成

8.2、mapreduce配置

主要配置mapred-site.xml

MR资源调度用Yarn

mapreduce.framework.name
yarn

8.3、yarn配置

配置yarn-site.xml

yarn.resourceManager.hostname
hadoop1
配置Yarn老大【resourceManager】将来在哪一台节点启动,注意是自己的master
yarn.nodemanager.aux-services
mapreduce_shuffle
yarn的子服务,必须使用mapreduce_shuffle

8.4、slaves配置

[root@hadoop1 hadoop]# cat /home/hadoop/hadoop-2.6.1/etc/hadoop/slaves
hadoop1
hadoop2
hadoop3
指定datanode将来在哪台节点启动

注:在一台节点上的相关配置修改,要分发到全部集群上

例:

[root@hadoop1 hadoop]#scp mapred-site.xml hadoop2:/home/hadoop/hadoop-2.6.1/etc/hadoop

九、hdfs及yarn启动验证:进程启动命令

namenode -format

格式化HDFS的作用是初始化集群

(1)HDFS的相关进程:

Namenode(老大)

Datanode(小弟)

SecondaryNameNode(checkpoint节点)

(2)Yarn相关进程

Resourcemanager(老大)

Nodemanager(小弟)

hdfs和yarn相关进程都启动后,hdfs集群管理页面和yarn管理界面才可访问成功

start-dfs.sh

start-yarn.sh

这两个命令等效于start-all.sh

kill - 9 

强制杀死该进程

hadoop-daemon.sh start namenode

单独启动HDFS相关的进程

你可能感兴趣的:(大数据,大数据,hadoop,hdfs)