• 大数据技术之Hadoop:使用命令操作HDFS(四)


    目录

    一、创建文件夹

    二、查看指定目录下的内容

    三、上传文件到HDFS指定目录下

    四、查看HDFS文件内容

    五、下载HDFS文件

    六、拷贝HDFS文件

    七、HDFS数据移动操作

    八、HDFS数据删除操作

    九、HDFS的其他命令

    十、hdfs web查看目录

    十一、HDFS客户端工具

    11.1 下载插件

    11.2 本地安装Hadoop环境

    11.3 配置Big Data Tools插件

    11.4 基本功能使用


    在HDFS中的命令,基本上就是照搬的Linux命令。只要你熟悉Linux命令,那么HDFS命令基本上一遍过。它的目录结构和linux非常相似。

    举个例子:

    Linux 中:mkdir -p /opt/mynote

    HDFS中:hadoop fs -mkdir -p /opt/mynote

            或者  hdfs dfs -mkdir -p /opt/mynote

    所以说,是不是没什么区别?🫢

    那么我们这就引出了第一个HDFS操作命令。

    一、创建文件夹

    1. hadoop fs -mkdir [-p] ...
    2. hdfs dfs -mkdir [-p] ...

    path 为待创建的目录

    -p选项的行为与Linux mkdir -p一致,它会沿着路径创建父目录。

    举例

    如何查看创建的文件夹在哪里呢?

    二、查看指定目录下的内容

    1. hadoop fs -ls [-h] [-R] [ ...]
    2. hdfs dfs -ls [-h] [-R] [ ...]

    path 指定目录路径 

    -h 人性化显示文件size

    -R 递归查看指定目录及其子目录

    举例

    三、上传文件到HDFS指定目录下

    1. hadoop fs -put [-f] [-p] ...
    2. hdfs dfs -put [-f] [-p] ...

    -f 覆盖目标文件(已存在下) 

    -p 保留访问和修改时间,所有权和权限。

    localsrc 本地文件系统(客户端所在机器)

    dst 目标文件系统(HDFS

    例如

    注意:如果是客户端所在的机器,我们一般用file://前缀指代,hdfs用hdfs://指代,当然了默认情况下,我们一般选择省略。

    四、查看HDFS文件内容

    1. hadoop fs -cat ...
    2. hdfs dfs -cat ...

    读取指定文件全部内容,显示在标准输出控制台。

    例如

    读取大文件可以使用管道符配合 more

    1. hadoop fs -cat | more
    2. hdfs dfs -cat | more

    、下载HDFS文件

    1. hadoop fs -get [-f] [-p] ...
    2. hdfs dfs -get [-f] [-p] ...

    下载文件到本地文件系统指定目录localdst必须是目录

    -f 覆盖目标文件(已存在下)

    -p 保留访问和修改时间,所有权和权限

    六、拷贝HDFS文件

    1. hadoop fs -cp [-f] ...
    2. hdfs dfs -cp [-f] ...

    -f 覆盖目标文件(已存在下

    例如

    七、HDFS数据移动操作

    1. hadoop fs -mv ...
    2. hdfs dfs -mv ...

    移动文件到指定文件夹下

    可以使用该命令移动数据,重命名文件的名称

    八、HDFS数据删除操作

    1. hadoop fs -rm -r [-skipTrash] URI [URI ...]
    2. hdfs dfs -rm -r [-skipTrash] URI [URI ...]

    删除指定路径的文件或文件夹

    -skipTrash 跳过回收站,直接删除

    ps

    回收站功能默认关闭,如果要开启需要在core-site.xml内配置:

    1. <property>
    2. <name>fs.trash.intervalname>
    3. <value>1440value>
    4. property>
    5. <property>
    6. <name>fs.trash.checkpoint.intervalname>
    7. <value>120value>
    8. property>

    无需重启集群,在哪个机器配置的,在哪个机器执行命令就生效。

    回收站默认位置在:/user/用户名(hadoop)/.Trash

    九、HDFS的其他命令

    以上命令能够满足绝大多数的hdfs场景,如需更详细的命令,请参考官方文档:

    https://hadoop.apache.org/docs/r3.3.4/hadoop-project-dist/hadoop-common/FileSystemShell.html

    十、hdfs web查看目录

    默认只能查看,不能增删改操作。如果使用WEB浏览操作文件系统,一般会遇到权限问题

    这是因为WEB浏览器中是以匿名用户(dr.who)登陆的,其只有只读权限,多数操作是做不了的。

    如果需要以特权用户在浏览器中进行操作,需要配置如下内容到core-site.xml并重启集群

    1. <property>
    2. <name>hadoop.http.staticuser.username>
    3. <value>hadoopvalue>
    4. property>

    但是,不推荐这样做!

    HDFS WEBUI,只读权限挺好的,简单浏览即可

    如果给与高权限,会有很大的安全问题,造成数据泄露或丢失

    十一、HDFS客户端工具

    如果觉得通过命令操作hdfs比较麻烦,其实我们还可以使用客户端工具。

    11.1 下载插件

    如果你用的IDE工具是IDEA或者Pycharm,又或者使用的是DataGrip这种数据库工具,它们都是Jetbrains家的产品。

    那么我们可以在插件市场下载一个插件:Big Data Tools。

    它能够更加方便的让我们操作HDFS。

    11.2 本地安装Hadoop环境

    解压Hadoop安装包到Windows系统,如解压到:D:\it\hadoop-3.3.4\hadoop-3.3.4

    设置$HADOOP_HOME环境变量指向:D:\it\hadoop-3.3.4\hadoop-3.3.4

    下载如下两个资源

    hadoop.dll(https://github.com/steveloughran/winutils/blob/master/hadoop-3.0.0/bin/hadoop.dll)

    winutils.exe(https://github.com/steveloughran/winutils/blob/master/hadoop-3.0.0/bin/winutils.exe)

    将hadoop.dllwinutils.exe放入$HADOOP_HOME/bin

    11.3 配置Big Data Tools插件

    11.4 基本功能使用

    这部分不用多说,有手就行🫢。

  • 相关阅读:
    QT多线程项目中子线程无法修改主线程的ui组件
    全网超50万粉丝的Linux大咖良许,出书了!
    云服务器安装docker环境
    Linux多线程【线程互斥与同步】
    OSPF协议:优点、初始化流程和管理
    Kubernetes 系统化学习之 POD原理篇(二)
    PlantUML语法
    【Interpreter模式】C++设计模式——解析器
    基于Overleaf的pdf修改前后对比软件安装
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令
  • 原文地址:https://blog.csdn.net/YuanFudao/article/details/132679914