• 大数据-hadoop常用命令


    目录

    1、概述

    1.1 文件系统协议

    1.2 区别

    2、HDFS常用命令

    2.1 hdfs文件系统命令

    2.1.1 文件夹路径增删改查

    2.1.2 空间大小查看

    2.1.3权限管理类

    2.1.4文件操作(上传下载复制)

    2.1.5 判断

    2.1.6 系统功能管理

    3、运维命令

    4、 mapreduce命令

    5、 hdfs系统检查工具fsck

    6、运行pipies作业


    1、概述

    1.1 文件系统协议

    • HDFS Shell CLI支持操作多种文件系统,包括本地文件系统(file:///)、分布式文件系统(hdfs://nn:8020)等
    • 具体操作的是什么文件系统取决于命令中文件路径URL中的前缀协议
    • 如果没有指定前缀,则将会读取环境变量中的fs,defaultFS属性,以该属性值作为默认文件系统
    1. hadoop fs -ls file:/// #操作本地文件系统
    2. hadoop fs -ls hdfs://node 1:8020 #操作HDFS分布式文件系统
    3. hadoop fs -ls / #直接查询根目录,没有指定协议 将加载读取fs.defaultFS值

    1.2 区别

    • hadoop dfs 只能操作HDFS文件系统(包括与Local FS间的操作),不过已经Deprecated;
    • hdfs dfs 只能操作HDFS文件系统相关(包括与Local FS间的操作),常用;
    • hadoop fs 可操作任意文件系统,不仅仅是hdfs文件系统,使用范围更广;

    目前版本来看,官方最终推荐使用的是hadoop fs。当然hdfs dfs在市面上的使用也比较多

    2、HDFS常用命令

    2.1 hdfs文件系统命令

    2.1.1 文件夹路径增删改查

    1. hdfs dfs -mkdir dir #创建文件夹dir
    2. hdfs dfs -rm -r dir #删除文件夹dir
    3. hdfs dfs -ls path #查看/目录下文件信息
    4. hdfs dfs -ls -R path #递归查看文件目录信息
    5. hdfs dfs -stat path #返回指定路径信息

    2.1.2 空间大小查看

    1. hdfs dfs -du -h dir #按照适合阅读的形式人性化显示文件大小
    2. hdfs dfs -du -s dir #递归显示目标文件的大小
    3. hdfs dfs -du path/file #显示目标文件file的大小

    2.1.3权限管理类

    1. hdfs dfs -chgrp group path #改变文件所属组
    2. hdfs dfs -chgrp -R /dir #递归更改dir目录的所属组
    3. hdfs dfs -chmod [-R] 权限 -path #改变文件的权限
    4. hdfs dfs -chown owner[-group] /dir #改变文件的所有者
    5. hdfs dfs -chown -R owner[-group] /dir #递归更改dir目录的所属用户

     

    2.1.4文件操作(上传下载复制)

    1. #创建长度为0的空文件a.txt
    2. hdfs dfs -touchz a.txt
    3. #删除文件file
    4. hdfs dfs -rm file
    5. #向dir目录上传file
    6. hdfs dfs -put file dir
    7. #向dir目录上传文件filea并且吧filea改名为fileb
    8. hdfs dfs -put filea dir/fileb
    9. #下载hdfs系统下dir目录下文件file到本地path目录下
    10. hdfs dfs -get dir/file path
    11. #吧hdfs里面的多个文件合并成一个文件,合并后文件位于本地系统
    12. hdfs dfs -getmerge hdfs://Master:9000/data/SogouResult.txt CombinedResult
    13. #查看文件file
    14. hdfs dfs -cat file
    15. #如果文件是文本格式,相当于cat,如果文件是压缩格式,则会先解压再查看
    16. hdfs dfs -text /dir/a.txt
    17. #查看dir目录下a.txt文件的最后1000字节
    18. hdfs dfs -tail /dir/a.txt
    19. #从本地local目录下复制a文件到hdfs文件系统dir目录下
    20. hdfs dfs -copyFromLocal /local/a.txt dir
    21. #从hdfs文件系统hdfs目录下拷贝a文件到本地local目录下
    22. hdfs dfs -copyToLocal /hdfs/a.txt /local/a.txt
    23. #把hdfs文件从原路径拷贝到目标路径
    24. hdfs dfs -copyFromLocal /dir/source /dir/target
    25. #吧文件从a目录移动到目录b,可用于回收站恢复文件
    26. hdfs dfs -mv /path/a.txt /path/b.txt

     

     

    2.1.5 判断

    1. hdfs dfs -test -e /dir/a.txt #判断文件是否存在,存在返回1,反之为0
    2. hdfs dfs -test -d /dir #判断dir是否为目录,存在返回1,反之为0
    3. hdfs dfs -test -z /dir/a.txt #判断文件是否为空,存在返回1,反之为0

    2.1.6 系统功能管理

    1. hdfs dfs -expunge 清空回收站
    2. hdfs dfsadmin -safemode enter 进入安全模式
    3. hdfs dfsadmin -sfaemode leave 离开安全模式
    4. hdfs dfsadmin -decommission datanodename 关闭某个datanode节点
    5. hdfs dfsadmin -finalizeUpgrade 终结升级操作
    6. hdfs dfsadmin -upgradeProcess status 查看升级操作状态
    7. hdfs version 查看hdfs版本
    8. hdfs daemonlog -getlevel host:port 打印运行在host:port的守护进程的日志级别
    9. hdfs daemonlog -setlevel host:port 设置运行在host:port的守护进程的日志级别
    10. hdfs dfs -setrep -w 副本数 -R path 设置文件的副本数

    3、运维命令

    1. start-dfs.sh 启动namenode,datanode,启动文件系统
    2. stop-dfs.sh 关闭文件系统
    3. start-yarn.sh 启动resourcemanager,nodemanager
    4. stop-yarn.sh 关闭resourcemanager,nodemanager
    5. start-all.sh 启动hdfs,yarn
    6. stop-all.sh 关闭hdfs,yarn
    7. hdfs-daemon.sh start datanode 单独启动datanode
    8. start-balancer.sh -t 10% 启动负载均衡,尽量不要在namenode节点使用
    9. hdfs namenode -format 格式化文件系统
    10. hdfs namenode -upgrade 分发新的hdfs版本之后,namenode应以upgrade选项启动
    11. hdfs namenode -rollback 将namenode回滚到前一版本,这个选项要在停止集群,分发老的hdfs版本之后执行
    12. hdfs namenode -finalize finalize会删除文件系统的前一状态。最近的升级会被持久化,rollback选项将再不可用,升级终结操作之后,它会停掉namenode,分发老的hdfs版本后使用
    13. hdfs namenode importCheckpoint 从检查点目录装载镜像并保存到当前检查点目录,检查点目录由fs.checkpoint.dir指定

    4、 mapreduce命令

    1. hdfs jar file.jar 执行jar包程序
    2. hdfs job -kill job_201005310937_0053 杀死正在执行的jar包程序
    3. hdfs job -submit 提交作业
    4. hdfs job -status 打印map和reduce完成百分比和所有计数器。
    5. hdfs job -counter 打印计数器的值。
    6. hdfs job -kill 杀死指定作业。
    7. hdfs job -events #> <#-of-events> 打印给定范围内jobtracker接收到的事件细节。
    8. hdfs job -history [all]
    9. hdfs job -history 打印作业的细节、失败及被杀死原因的细节。更多的关于一个作业的细节比如成功的任务,做过的任务尝试等信息可以通过指定[all]选项查看。
    10. hdfs job -list [all] 显示所有作业。-list只显示将要完成的作业。
    11. hdfs job -kill -task 杀死任务。被杀死的任务不会不利于失败尝试。
    12. hdfs job -fail -task 使任务失败。被失败的任务会对失败尝试不利。

    5、 hdfs系统检查工具fsck

    1. hdfs fsck -move 移动受损文件到/lost+found
    2. hdfs fsck -delete 删除受损文件。
    3. hdfs fsck -openforwrite 打印出写打开的文件。
    4. hdfs fsck -files 打印出正被检查的文件。
    5. hdfs fsck -blocks 打印出块信息报告。
    6. hdfs fsck -locations 打印出每个块的位置信息。
    7. hdfs fsck -racks 打印出data-node的网络拓扑结构

    6、运行pipies作业

    1. hdfs pipes -conf 作业的配置
    2. hdfs pipes -jobconf , , … 增加/覆盖作业的配置项
    3. hdfs pipes -input 输入目录
    4. hdfs pipes -output 输出目录
    5. hdfs pipes -jar Jar文件名
    6. hdfs pipes -inputformat InputFormat类
    7. hdfs pipes -map Java Map类
    8. hdfs pipes -partitioner Java Partitioner
    9. hdfs pipes -reduce Java Reduce类
    10. hdfs pipes -writer Java RecordWriter
    11. hdfs pipes -program 可执行程序的URI
    12. hdfs pipes -reduces reduce个数

  • 相关阅读:
    liveData和viewBinding的使用
    沿面闪络放电测量装置中的真空度精密控制解决方案
    hash——模拟散列表(拉链法和开放寻址法)
    四十四、模板层
    ai智能生成文章-智能生成文章软件
    MySQL 开启远程连接
    SSM框架学习——Spring之核心容器总结
    Axure RP9 引入eCharts图表
    他做国外LEAD,用了一年时间,把所有房贷都还清了
    多国语言客服系统,打破语言障碍
  • 原文地址:https://blog.csdn.net/weixin_42109071/article/details/127805480