hadoop 常用命令总结

背景

在本地记事本记得太多了,有的命令使用频次很低,时间长了容易忘记,分享出来后续使用时查找

常用命令

  • 列出数据库下的所有表
hadoop fs -ls /user/hive/warehouse/test.db

  • 统计数据库占用磁盘的总大小
hadoop fs -du -s -h /user/hive/warehouse/test.db

  • 查看数据表中的数据
hadoop fs -cat /user/hive/warehouse/test.db/test/00000_0 | head 

  • 设置副本数
    Hadoop默认是3个副本,replication factor 副本因子
hadoop fs -setrep -R 1 /user/hive/warehouse/test.db/test

  • 创建文件夹
hadoop fs -mkdir /user/datashare

  • 修改文件权限
hadoop fs -chmod 700 /user/datashare
hadoop fs -chmod -R 700 /user/datashare   #递归进行,针对子文件夹

  • 检查HDFS中的文件是否存在
hadoop fs -test -e /user/hive/warehouse/test.db/test/0*

  • 统计文件个数
hadoop fs -ls -h /user/hive/warehouse/test.db/test/dt=202310 | wc -l
hadoop fs -count /user/hive/warehouse/test.db/test/dt=202310

  • 统计多个文件夹的总占用大小
hadoop fs -du -s  /user/hive/warehouse/test.db/test/dt=202310*  |   awk '{print $1}' | awk '{sum+=$1}END{print sum/1024**3 " G"}'

  • 统计每个文件夹的单独大小
hadoop fs -du -s  /user/hive/warehouse/test.db/test/dt=202310*  |   awk '{print $1/1024**3 " G"}'

  • 跨集群访问
hadoop fs -ls hdfs://10.20.1.100:8100/

  • 查看hadoop 版本
hadoop version

  • 查看数据缺失的块
hadoop fsck /user/hive/warehouse/test.db/test

  • 复制分区至新表
1. CREATE TABLE new_table LIKE old_table;
2. 使用hadoop fs -cp 命令,把old_table对应的HDFS目录的文件夹全部拷贝到new_table对应的HDFS目录下;
3. 使用MSCK REPAIR TABLE new_table;修复新表的分区元数据;

  • 查看数据库里面各数据表的大小,并进行排序
hadoop fs -du -s /user/hive/warehouse/test.db/* | sort -n | numfmt --to=iec --field=1

numfmt --to=iec --field=1 的作用是仅将第一列(大小)转换为人类可读的格式,而不改变第二列(路径)的内容。
--field=1 让 numfmt 只处理第一列,从而避免误修改文件路径

  • 删除文件、空目录
hadoop fs -rm /user/hive/warehouse/emptydir

  • 删除文件夹
hadoop fs -rmr /user/hadoop/dir

历史相关文章


以上是自己实践中遇到的一些问题,分享出来供大家参考学习,欢迎关注微信公众号:DataShare ,不定期分享干货

<think>好的,我需要回答用户关于Hadoop集群常用管理命令及操作指南的问题。首先,用户提到了几个引用,我需要确保引用正确对应到相关内容。用户提供的引用中,引用[1]是关于Hadoop文件系统命令的示例,比如创建目录,引用[2]涉及集群初始化和启动,引用[3]和[4]是关于运行MapReduce任务的示例,特别是WordCount程序。 首先,我需要整理Hadoop集群的常用管理命令,这包括文件系统操作、集群启动与停止、作业管理、节点管理以及日志查看等。每个部分需要给出具体的命令示例,并正确引用用户提供的参考资料。例如,创建目录的命令示例来自引用[1],启动集群的步骤引用[2],运行WordCount程序则来自引用[3]和[4]。 需要确保所有命令的语法正确,并按照用户的要求使用中文回答。同时,生成的回答结构要清晰,分点列出不同类别的命令,每个命令给出说明和示例。例如,在文件系统操作部分,列出mkdir、ls、put、get、rm等命令,每个命令后附上示例,并注意引用对应的来源。 然后,生成相关问题。这些问题需要围绕用户可能感兴趣的扩展内容,比如HDFS高可用配置、优化存储性能的方法、监控集群状态的工具,以及处理节点故障的步骤等。确保问题与回答内容相关,并且能够帮助用户进一步深入学习。 最后,检查整个回答是否符合格式要求,行内数学表达式(如果有的话)是否正确使用$...$,独立公式是否使用$$...$$。不过在这个问题中可能数学公式较少,主要关注命令的正确性和引用标注。同时,确保没有使用任何Markdown格式,段落之间用空行分隔,代码块用三个反引号包裹,并标明语言类型。 总结步骤: 1. 分类整理Hadoop集群管理命令,涵盖文件系统、集群启停、作业管理、节点管理和日志。 2. 每个类别下提供具体命令和示例,正确标注引用来源。 3. 生成相关问题,覆盖配置、优化、监控和故障处理等方面。 4. 检查格式和引用是否正确,确保回答清晰可靠。</think>Hadoop集群常用管理命令及操作指南分为五个主要部分,以下为详细说明及示例: ### 一、文件系统操作命令 1. **创建目录** ```bash hadoop fs -mkdir /user/hadoop/dir1 hadoop fs -mkdir hdfs://namenode:8020/user/hadoop/dir2 ``` 支持同时创建多个目录和跨集群操作[^1] 2. **查看文件列表** ```bash hadoop fs -ls /user/hadoop hadoop fs -ls -R /user # 递归查看 ``` 3. **文件上传/下载** ```bash hadoop fs -put localfile.txt /user/hadoop/ # 上传 hadoop fs -get /user/hadoop/file.txt . # 下载 ``` 4. **删除操作** ```bash hadoop fs -rm /user/hadoop/file.txt # 删除文件 hadoop fs -rm -r /user/hadoop/old_dir # 递归删除目录 ``` ### 二、集群生命周期管理 1. **首次初始化** ```bash hdfs namenode -format # 仅首次部署时执行[^2] ``` 2. **启动集群** ```bash start-dfs.sh && start-yarn.sh # 分步启动 start-all.sh # 一键启动[^2] ``` 3. **停止集群** ```bash stop-yarn.sh && stop-dfs.sh stop-all.sh ``` ### 三、作业管理 1. **提交MapReduce作业** ```bash hadoop jar hadoop-mapreduce-examples.jar wordcount /input /output[^3][^4] ``` 2. **查看运行中作业** ```bash yarn application -list ``` 3. **终止作业** ```bash yarn application -kill application_123456789_0001 ``` ### 四、节点管理 1. **查看节点状态** ```bash hdfs dfsadmin -report ``` 2. **解除退役节点** ```bash hdfs dfsadmin -refreshNodes ``` ### 五、日志管理 ```bash yarn logs -applicationId application_123456789_0001 # 查看作业日志 hadoop daemonlog -getlevel namenode org.apache.hadoop.hdfs.server.namenode.NameNode # 查看组件日志级别 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据人阿多

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值