HDFS知识点

本文介绍了HDFS的基本操作,包括使用Linux命令如ls,mkdir,mv,cp,rm等进行文件系统管理,以及如何设置和使用回收站。同时,文章也提及了JavaAPI在操作HDFS中的应用,如单元测试和配置参数的优先级规则。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

HDFS :
1 hdfs 相关操作
 1.linux 命令 --在linux 命令前加上hadoop fs/dfs 表示的就是hdfs命令
 2.java code --看懂会用就行

2 hdfs 操作命令
2.1 查看hdfs ls:

1.hadoop fs -ls /
2.hdfs dfs -ls /
命令相同,底层调用的都是HADOOP_CLASSNAME=org.apache.hadoop.fs.FsShell

2.2 创建文件夹:mkdir

[hadoop@bigdata221 bin]$ hadoop fs -mkdir /hdfs01
[hadoop@bigdata221 bin]$ hadoop fs -ls /
Found 5 items
drwxr-xr-x   - hadoop supergroup          0 2022-11-11 23:03 /data
drwxr-xr-x   - hadoop supergroup          0 2022-11-15 17:11 /hdfs01
drwxr-xr-x   - hadoop supergroup          0 2022-11-11 23:08 /out
drwxr-xr-x   - hadoop supergroup          0 2022-11-14 18:32 /out2
drwx------   - hadoop supergroup          0 2022-11-14 18:31 /tmp

2.3 移动、拷贝 mv(一份) cp(两份)

[hadoop@bigdata221 bin]$ hadoop fs -mv /data /hdfs01/
mv还可以改名字

2.4 删除 rm

[-rm [-f] [-r|-R] [-skipTrash] [-safely] <src> ...]
[hadoop@bigdata221 bin]$ hadoop fs -ls /
Found 4 items
drwxr-xr-x   - hadoop supergroup          0 2022-11-15 17:13 /hdfs01
drwxr-xr-x   - hadoop supergroup          0 2022-11-11 23:08 /out
drwxr-xr-x   - hadoop supergroup          0 2022-11-14 18:32 /out2
drwx------   - hadoop supergroup          0 2022-11-14 18:31 /tmp
[hadoop@bigdata221 bin]$ hadoop fs -rm -r /out
Deleted /out
[hadoop@bigdata221 bin]$ hadoop fs -ls /
-skipTrash:跳过hdfs上的回收站,不可恢复

设置hdfs回收站:

文件:core-sit.xml
参数:fs.trash.interval 把0改为10080分钟即7天
生产上:开启回收站,有效期至少7天以上
添加参数:
<property>
		<name>fs.trash.interval</name>
		<value>10080</value>
</property>
停掉服务,重启
完全分布式分发一下core-sit.xml即可

2.5 uri
假设查看的是根目录下的1.log:/1.log
1.hdfs上的文件
1. hdfs://bigdata222:9000/1.log
[hadoop@bigdata223 ~]$ hadoop fs -ls hdfs://bigdata222:9000/1.log
2. /1.log
[hadoop@bigdata223 ~]$ hadoop fs -ls /1.log
2.linux本地local上的文件
file:///1.log:
[hadoop@bigdata223 ~]$ hadoop fs -ls file:home/hadoop/1.log

2.6 上传、下载:
上传:put copyfromlocal :
[hadoop@bigdata223 ~]$ hadoop fs -put ./2.log ./3.log /
[hadoop@bigdata223 ~]$ hadoop fs -ls /

	[hadoop@bigdata223 ~]$ hadoop fs -copyFromLocal ./2.log /data
	[hadoop@bigdata223 ~]$ hadoop fs -ls /data
下载;get copytolocal:
	[hadoop@bigdata223 tmp]$ hadoop fs -get /data ./
	[hadoop@bigdata223 tmp]$ ll
	total 4
	drwxr-xr-x. 2 hadoop hadoop 4096 Nov 15 18:07 data
	[hadoop@bigdata223 tmp]$ hadoop fs -get /data ./datahdfs

2.7 更改权限 chmod
[hadoop@bigdata223 tmp]$ hadoop fs -chmod 664 /1.log
[hadoop@bigdata223 tmp]$ hadoop fs -ls /
chown :拥有者
[hadoop@bigdata223 tmp]$ hadoop fs -chown zihang:DL2262 /1.log
[hadoop@bigdata223 tmp]$ hadoop fs -ls /

2.8 查看文件内容:cat
[hadoop@bigdata223 tmp]$ hadoop fs -cat /1.log
111
222
333

使用java api的方式操作hdfs

<!--添加hadoop依赖,和下载的hadoop版本一致-->
<dependency>
  <groupId>org.apache.hadoop</groupId>
  <artifactId>hadoop-client</artifactId>
  <version>3.3.4</version>
</dependency>
1.java的单元测试
2.使用java api的方式操作hdfs

参数设置的优先级:
 1.默认配置文件

core-default.xml
hdfs-default.xml
mapred-default.xml
yarn-default.xml

 2.生产配置文件

core-site.xml
hdfs-site.xml
mapred-site.xml
yarn-site.xml

 3.代码里面设置的参数

 Configuration

优先级排序:代码里面设置的参数 > 生产配置文件 > 默认配置文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值