当前位置: 首页 > news >正文

HDFS 操作命令

在现代的企业环境中,单机容量往往无法存储大量数据,需要跨机器存储。统一管理分布在
集群上的文件系统称为 分布式文件系统
HDFS Hadoop Distributed File System )是 Apache Hadoop 项目的一个子项目, Hadoop 非常
适于存储大型数据 ( 比如 TB PB), 其就是使用 HDFS 作为存储系统 . HDFS 使用多台计算

使用场景

  • 存储非常大的文件:这里非常大指的是几百MG、或者TB级别,需要高吞吐量,对延时没有要求
  • 采用流式的数据访问方式: 一次写入、多次读取,数据集经常从数据源生成或者拷贝一 次,然后在其上做很多分析工作 。
  • 运行于商业硬件上:Hadoop不需要特别贵的机器,可运行于普通廉价机器,可以处节约成
  • 需要高容错性
  • 为数据存储提供所需的扩展能力

不适合的应用场景

  • 低延时的数据访问 对延时要求在毫秒级别的应用,不适合采用HDFSHDFS是为高吞吐数据传输设计的,因此可能牺牲延时
  • 大量小文件 文件的元数据保存在NameNode的内存中, 整个文件系统的文件数量会受限NameNode的内存大小。 经验而言,一个文件/目录/文件块一般占有150字节的元数据内存空间。如果有100万个文件,每个文件占用1个文件块,则需要大约300M的内存。因此十亿级别的文件数量在现有商用机器上难以支持。
  • 多方读写,需要任意的文件修改 HDFS采用追加(append-only)的方式写入数据。不支持文件任意offset的修改。不支持多个写入器(writer

hdfs的命令行使用

ls
格式:  hdfs dfs -ls URI
作用:类似于Linux的ls命令,显示文件列表
hdfs dfs   -ls /lsr 
格式 :   hdfs dfs -lsr URI
作用 : 在整个目录下递归执行ls, 与UNIX中的ls-R类似
hdfs dfs   -lsr /mkdir
格式 : hdfs dfs [-p] -mkdir <paths>
作用 :   以<paths>中的URI作为参数,创建目录。使用-p参数可以递归创建目录put
格式   : hdfs dfs -put <localsrc > ... <dst>
作用 : 将单个的源文件src或者多个源文件srcs从本地文件系统拷贝到目标文件系统中(<dst>
对应的路径)。也可以从标准输入中读取输入,写入目标文件系统中
hdfs dfs -put /rooot/a.txt /dir1moveFromLocal
格式: hdfs dfs -moveFromLocal <localsrc>   <dst>
作用:   和put命令类似,但是源文件localsrc拷贝之后自身被删除
hdfs dfs -moveFromLocal /root/install.log /mv
格式 : hdfs dfs -mv URI   <dest>
作用: 将hdfs上的文件从原路径移动到目标路径(移动之后文件删除),该命令不能夸文件系统
hdfs dfs  -mv /dir1/a.txt   /dir2rm
格式: hdfs dfs -rm [-r] 【-skipTrash】 URI 【URI 。。。】
作用:   删除参数指定的文件,参数可以有多个。   此命令只删除文件和非空目录。
如果指定-skipTrash选项,那么在回收站可用的情况下,该选项将跳过回收站而直接删除文件;
否则,在回收站可用时,在HDFS Shell 中执行此命令,会将文件暂时放到回收站中。
hdfs dfs  -rm  -r /dir1cp
格式:     hdfs  dfs  -cp URI [URI ...] <dest>
作用:    将文件拷贝到目标路径中。如果<dest>  为目录的话,可以将多个文件拷贝到该目录
下。
-f
选项将覆盖目标,如果它已经存在。
-p
选项将保留文件属性(时间戳、所有权、许可、ACL、XAttr)。
hdfs dfs -cp /dir1/a.txt /dir2/b.txtcat
hdfs dfs  -cat URI [uri ...]
作用:将参数所指示的文件内容输出到stdout
hdfs dfs  -cat /install.logchmod
格式:      hdfs   dfs  -chmod  [-R]  URI[URI  ...]
作用:    改变文件权限。如果使用  -R 选项,则对整个目录有效递归执行。使用这一命令的用户
必须是文件的所属用户,或者超级用户。
hdfs dfs -chmod -R 777 /install.logchown
格式:      hdfs   dfs  -chmod  [-R]  URI[URI  ...]
作用:    改变文件的所属用户和用户组。如果使用  -R 选项,则对整个目录有效递归执行。使用
这一命令的用户必须是文件的所属用户,或者超级用户。
hdfs dfs  -chown  -R hadoop:hadoop /install.logappendToFile
格式: hdfs dfs -appendToFile <localsrc> ... <dst>
作用: 追加一个或者多个文件到hdfs指定文件中.也可以从命令行读取输入.
hdfs dfs -appendToFile a.xml b.xml /big.xml

hdfs的高级使用命令

hdfs dfs -count -q -h /user/root/dir1  #查看配额信息数量限额
hdfs dfs  -mkdir -p /user/root/dir    #创建hdfs文件夹
hdfs dfsadmin -setQuota 2 dir      # 给该文件夹下面设置最多上传两个文件,发现只能上传一个文件
hdfs dfsadmin -clrQuota /user/root/dir  # 清除文件数量限制空间大小限额
在设置空间配额时,设置的空间至少是block_size * 3大小
hdfs dfsadmin -setSpaceQuota 4k /user/root/dir   # 限制空间大小4KB
hdfs dfs -put /root/a.txt /user/root/dir
生成任意大小文件的命令:
dd if=/dev/zero of=1.txt  bs=1M count=2     #生成2M的文件清除空间配额限制
hdfs dfsadmin -clrSpaceQuota /user/root/dirhdfs的安全模式
在安全模式状态下,文件系统只接受读数据请求,而不接受删除、修改等变更请求。在,当
整个系统达到安全标准时,HDFS自动离开安全模式。
hdfs dfsadmin  -safemode  get #查看安全模式状态
hdfs dfsadmin  -safemode enter #进入安全模式
hdfs dfsadmin  -safemode leave #离开安全模式


http://www.mrgr.cn/news/78984.html

相关文章:

  • JAVA:Spring Boot 3 实现 Gzip 压缩优化的技术指南
  • FreeSWITCH mod_conference 的按键会控
  • c++ AC自动机
  • CSS动画案例6
  • 全面指南:在Ubuntu 20.04上安装和配置Orbbec ROS SDK
  • Java中的“抽象类“详解
  • Spring Boot Actuator未授权访问漏洞处理
  • 【机器学习】机器学习的基本分类-监督学习-决策树-ID3 算法
  • Unity 模拟百度地图,使用鼠标控制图片在固定区域内放大、缩小、鼠标左键拖拽移动图片
  • Seatunnel解决ftp读取json文件无法读取数组以及格式化之后的json无法解析的问题
  • AllegroHand 四指灵巧手:机器人领域的创新力量
  • 十,[极客大挑战 2019]Secret File1
  • SciPy Optimize和 CVXPY对比
  • Selenium常见问题
  • 生态环境影像评价、遥感解译与GIS技术生态环境影像评价制作
  • k8s的数据库etcd报 etcdserver: mvcc: database space exceeded的处理办法
  • 三维地形图计算软件(四)-用PYQT5+vtk画任意多面示例
  • Android显示系统(02)- OpenGL ES - 概述
  • 活着就好20241204
  • 项目开发中Vue3和Vue2如何选择?
  • c语言基础之二维数组
  • OD B卷 - 实现 【BOSS的收入】
  • 吉林大学23级数据结构上机实验(第7周)
  • 使用 CFD 仿真进行阀门性能分析:第 II 部分
  • Java 基础面试题
  • Spring入园须知