1、HDFS概述
HDFS(Hadoop Distributed File System),它是一个文件系统,用于存储文件,通过目录树来定位文件;其次,它是分布式的,有很多服务器联合起来实现其功能,集群中的服务器有各自的角色。 HDFS适合一次写入,多次读出的场景,且不支持文件的随机修改。 不支持并发写入、文件随机修改,一个文件只能有一个写,不允许多个线程同时写;仅支持数据append(追加),不支持文件的随机修改。
2、HDFS之shell
1)-ls:显示目录信息 hadoop fs -ls / 2)-mkdir:在HDFS上创建目录 hadoop fs -mkdir [-p] /sanguo/shuguo(目录名) 3)-moveFromLocal:从本地剪切粘贴到HDFS touch kongming.txt hadoop fs -moveFromLocal ./kongming.txt /sanguo/shuguo 4)-appendToFile:追加一个文件到已经存在的文件末尾 touch liubei.txt vim liubei.txt 输入 san gu mao lu hadoop fs -appendToFile liubei.txt /sanguo/shuguo/kongming.txt 5)-cat:显示文件内容 hadoop fs -cat /sanguo/shuguo/kongming.txt 6)-chgrp、-chmod、-chown:linux文件系统中的用法一样,修改文件所属权限 hadoop fs -chmod 666 /sanguo/shuguo/kongming.txt hadoop fs -chown atguigu:atguigu /sanguo/shuguo/kongming.txt 7)-copyFromLocal(-put):从本地文件系统中拷贝文件到HDFS路径去 hadoop fs -copyFromLocal README.txt / 或 hadoop fs -put README.txt / 8)-copyToLocal(-get):从HDFS拷贝到本地 hadoop fs -copyToLocal /sanguo/shuguo/kongming.txt ./ 或 hadoop fs -get /sanguo/shuguo/kongming.txt ./ 9)-cp:从HDFS的一个路径拷贝到HDFS的另一个路径 hadoop fs -cp /sanguo/shuguo/kongming.txt /zhuge.txt 10)-mv:在HDFS目录中移动文件或改名 hadoop fs -mv /zhuge.txt /sanguo/shuguo/ hadoop fs -mv /zhuge.txt /gezhu.txt 11)getmerge:合并下载多个文件,比如HDFS的目录/user/atguigu/test下有多个文件:log.1,log.2,log.3,… hadoop fs -getmerge /user/atguigu/test/* ./zaiyiqi.txt 12)-tail:显示一个文件的末尾 hadoop fs -tail /sanguo/shuguo/kongming.txt 13)-rm:删除文件或文件夹 hadoop fs -rm [-r] /user/atguigu/test/jianlian2.txt 14)-rmdir:删除空目录 hadoop fs -rmdir /test 15)-du:统计文件夹的大小信息 hadoop fs -du -h /user/atguigu/test 16)-setrep:设置HDFS文件的副本数量 hadoop fs -setrep 5 /README.txt 补充:
修改web端权限报错
以下操作两者选其一即可
操作1:在core-site.xml中修改http访问的静态用户为atguigu
<property>
<name>hadoop.http.staticuser.user</name>
<value>atguigu</value>
</property>
操作2:在hdfs-site.xml中关闭权限检查
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
3、HDFS客户端操作
1)HDFS客户端环境准备 (1)配置windows依赖 a)下载与自己版本相近的hadoop依赖包(比如我的hadoop是3.1.3,我下载的依赖为3.1.0) 地址如下:https://gitee.com/fulsun/winutils-1/tree/master b)配置HADOOP_HOME环境变量 新增变量名:HADOOP_HOME 变量值:D:\hadoop\hadoop-3.1.0(自己的依赖所放的位置) c)配置Path环境变量 在Path环境变量中添加%HADOOP_HOME%\bin (2)特殊情况 a)将windows中hadoop依赖中的hadoop.dll文件复制到c:\windows\system32目录 b)重启电脑
|