Hadoop的HDFS组件的Xshell命令
Hadoop的HDFS组件的Xshell命令
回顾:
三大组件:HDFS、MR、Yarn
手动搭建好Hadoop集群后,MR这个进程是看不到的,只能看得到HDFS和Yarn的进程
HDFS和Yarn遵循主从架构:
HDFS主节点:NameNode----简称NN
Yarn主节点:ResourceManager----简称RM
主节点都在master服务器中,所以查看master的进程会有NN、RM,
还会有一个进程SecondaryNameNode----简称SNN
HDFS从节点:DataNOde----简称DN
Yarn从节点:NodeManager----简称NM
从节点分别都在node1和node2中,查看node1或node2进程,会有DN、NM
创建HDFS目录:
hdfs dfs -mkdir 目录名称
查看HDFS下的目录
hdfs dfs -ls /
复制
hdfs dfs -cp
移动
hdfs dfs -mv
删除
hdfs dfs -rm
修改权限
hdfs dfs -chmod
将数据上传到HDFS中的目录
hdfs dfs -put 数据名称 目录名称
举例:
hdfs dfs -put words.txt /input
-put 将本地文件上传到hdfs,如hdfs dfs -put 本地文件路径 hdfs路径
-get 将hdfs文件下载到本地,如 hdfs dfs -get hdfs文件路径 本地文件路径
-mkdir 在hdfs上创建文件夹,如hdfs dfs -mkdir /test
-cp 将hdfs文件或目录复制 如 hdfs dfs -cp /test.txt /a/
-cat 查看hdfs上文件内容 如hdfs dfs -cat /test.txt
运行word count实例
命令:
hadoop jar hadoop-2.7.6/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar wordcount inputpath outpath
inputpath:是指hdfs上输入文件路径,需要我们自行创建该名称
outpath:是指hdfs上程序运行输出结果所在路径,不需要我们创建
创建输入文件路径
hdfs dfs -mkdir /input
将数据上传到HDFS中的目录
hdfs dfs -put 数据名称 目录名称
举例:
hdfs dfs -put words.txt /input
上传数据以后,我们来运行它
在/usr/local/soft/hadoop-2.7.6/share/hadoop/mapreduce中,
有一个hadoop-mapreduce-examples-2.7.6.jar,该jar包内含有wordcount方法是用来计算个数
我们通过wordcount方法来计算我们的数据words.txt
先将目录切换到 cd /usr/local/soft/hadoop-2.7.6/share/hadoop/mapreduce
运行 hadoop jar hadoop-mapreduce-examples-2.7.6.jar wordcount /input /output1
/input是我们创建的HDFS目录,/output1不需要创建,直接写出,后台会自动创建
运行进度可以通过master:8088查看

运行结果可以通过master:50070查看


下载结果

查看结果

上面是我们手动点击下载,也可以通过命令下载
下载到本地家目录内:
cd ~
hdfs dfs -get /output1/part-r-00000 ./
查看运行的结果
cat part-r-0000或者less part-r-00000
想要修改该文件的权限
hdfs dfs -chmod 764 /output1/part-r-00000
想要查看磁盘使用情况
hdfs dfs -df -h

浙公网安备 33010602011771号