首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

12、HDFS Trash垃圾桶回收介绍与示例Hadoop系列文章目录一、介绍二、HDFS Trash功能开启三、HDFS Trash功能验证

  • 23-09-04 16:01
  • 3914
  • 13866
blog.csdn.net

Hadoop系列文章目录

1、hadoop3.1.4简单介绍及部署、简单验证
2、HDFS操作 - shell客户端
3、HDFS的使用(读写、上传、下载、遍历、查找文件、整个目录拷贝、只拷贝文件、列出文件夹下文件、删除文件及目录、获取文件及文件夹属性等)-java
4、HDFS-java操作类HDFSUtil及junit测试(HDFS的常见操作以及HA环境的配置)
5、HDFS API的RESTful风格–WebHDFS
6、HDFS的HttpFS-代理服务
7、大数据中常见的文件存储格式以及hadoop中支持的压缩算法
8、HDFS内存存储策略支持和“冷热温”存储
9、hadoop高可用HA集群部署及三种方式验证
10、HDFS小文件解决方案–Archive
11、hadoop环境下的Sequence File的读写与合并
12、HDFS Trash垃圾桶回收介绍与示例
13、HDFS Snapshot快照
14、HDFS 透明加密KMS
15、MapReduce介绍及wordcount
16、MapReduce的基本用法示例-自定义序列化、排序、分区、分组和topN
17、MapReduce的分区Partition介绍
18、MapReduce的计数器与通过MapReduce读取/写入数据库示例
19、Join操作map side join 和 reduce side join
20、MapReduce 工作流介绍
21、MapReduce读写SequenceFile、MapFile、ORCFile和ParquetFile文件
22、MapReduce使用Gzip压缩、Snappy压缩和Lzo压缩算法写文件和读取相应的文件
23、hadoop集群中yarn运行mapreduce的内存、CPU分配调度计算与优化


文章目录

  • Hadoop系列文章目录
  • 一、介绍
  • 二、HDFS Trash功能开启
    • 1、关闭HDFS集群
    • 2、修改core-site.xml文件
    • 3、同步集群配置文件
      • 4、启动HDFS集群
  • 三、HDFS Trash功能验证
    • 1、删除文件并验证
    • 2、不进回收站的删除
    • 3、从Trash中恢复文件
    • 4、清空Trash


本文主要介绍HDFS Trash垃圾桶回收。
前提依赖:hadoop可以正常使用。
本文分为三部分,即介绍、配置以及验证。

一、介绍

  • 默认情况下,HDFS中Trash是没有开启的,删除操作的数据将会被直接删除
  • 启用Trash功能后,从HDFS中删除某些内容时,文件或目录不会立即被清除,它们将被移动到回收站Current目录中(/user/${username}/.Trash/current)
  • .Trash中的文件在用户可配置的时间延迟后被永久删除
  • 可以简单地将回收站里的文件移动到.Trash目录之外的位置来恢复回收站中的文件和目录
  • Trash Checkpoint仅仅是用户回收站下的一个目录,用于存储在创建检查点之前删除的所有文件或目录
  • Trash Checkpoint目录在/user/${username}/.Trash/{timestamp_of_checkpoint_creation}
  • 最近删除的文件被移动到回收站Current目录,并且在可配置的时间间隔内,HDFS会为在Current回收站
  • 目录下的文件创建检查点/user/${username}/.Trash/<日期>,并在过期时删除旧的检查点

二、HDFS Trash功能开启

按照以下步骤进行操作,在server1上alanchan用户执行stop-dfs.sh命令。

1、关闭HDFS集群

[alanchan@server1 ~]$ jps
15154 QuorumPeerMain
32722 Jps
19075 NameNode
20780 DFSZKFailoverController
28893 ResourceManager
[alanchan@server1 ~]$ stop-dfs.sh
Stopping namenodes on [server1 server2]
Stopping datanodes
Stopping journal nodes [server4 server3 server2]
Stopping ZK Failover Controllers on NN hosts [server1 server2]
[alanchan@server1 ~]$ jps
15154 QuorumPeerMain
28893 ResourceManager
1679 Jps
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

2、修改core-site.xml文件


	<property>    
		<name>fs.trash.intervalname>    
		<value>1440value>
	property>
	<property>    
		<name>fs.trash.checkpoint.intervalname>    
		<value>0value>
	property>
#fs.trash.interval:回收站中的文件多少分钟后会被系统永久删除。如果为零,Trash功能将被禁用。
#fs.trash.checkpoint.interval:前后两次检查点的创建时间间隔(单位也是分钟),新的检查点被创建后,随之旧的检查点就会被系统永久删除。如果为零,则将该值设置为fs.trash.interval的值
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

3、同步集群配置文件

scp -r /usr/local/bigdata/hadoop-3.1.4/etc/hadoop/core-site.xml server2:/usr/local/bigdata/hadoop-3.1.4/etc/hadoop
scp -r /usr/local/bigdata/hadoop-3.1.4/etc/hadoop/core-site.xml server3:/usr/local/bigdata/hadoop-3.1.4/etc/hadoop
scp -r /usr/local/bigdata/hadoop-3.1.4/etc/hadoop/core-site.xml server4:/usr/local/bigdata/hadoop-3.1.4/etc/hadoop
  • 1
  • 2
  • 3

4、启动HDFS集群

[alanchan@server1 ~]$ start-dfs.sh
Starting namenodes on [server1 server2]
Starting datanodes
Starting journal nodes [server4 server3 server2]
Starting ZK Failover Controllers on NN hosts [server1 server2]
[alanchan@server1 ~]$ jps
16561 NameNode
15154 QuorumPeerMain
17187 DFSZKFailoverController
28893 ResourceManager
17519 Jps
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

至此已经完成了环境的配置,接下来将进行验证。

三、HDFS Trash功能验证

1、删除文件并验证

开启Trash功能后,正常执行删除操作,文件实际并不会被直接删除,而是被移动到了垃圾回收站

[alanchan@server1 ~]$ hadoop fs -ls /test
Found 3 items
drwxr-xr-x   - alanchan supergroup          0 2022-09-09 11:32 /test/data_o
-rw-r--r--   3 alanchan supergroup       8728 2022-09-13 09:19 /test/temp.txt
drwxr-xr-x   - alanchan supergroup          0 2022-09-09 17:01 /test/test2

#文件已经移动到垃圾桶中
[alanchan@server1 ~]$ hadoop fs -rm /test/temp.txt
2022-09-13 09:20:14,311 INFO fs.TrashPolicyDefault: Moved: 'hdfs://HadoopHAcluster/test/temp.txt' to trash at: hdfs://HadoopHAcluster/user/alanchan/.Trash/Current/test/temp.txt

#文件已经删除
[alanchan@server1 ~]$ hadoop fs -ls /test
Found 2 items
drwxr-xr-x   - alanchan supergroup          0 2022-09-09 11:32 /test/data_o
drwxr-xr-x   - alanchan supergroup          0 2022-09-09 17:01 /test/test2

#在垃圾桶内查看该文件
[alanchan@server1 ~]$ hadoop fs -ls /user/alanchan/.Trash/Current/test
Found 1 items
-rw-r--r--   3 alanchan supergroup       8728 2022-09-13 09:19 /user/alanchan/.Trash/Current/test/temp.txt
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

在这里插入图片描述

2、不进回收站的删除

希望直接把文件删除,不需要再经过Trash回收站了

可以在执行删除操作的时候添加一个参数:-skipTrash.

[alanchan@server1 ~]$ hadoop fs -ls /test
Found 3 items
drwxr-xr-x   - alanchan supergroup          0 2022-09-09 11:32 /test/data_o
drwxr-xr-x   - alanchan supergroup          0 2022-09-09 17:01 /test/test2
-rw-r--r--   3 alanchan supergroup       1408 2022-09-13 09:24 /test/user.sql
#删除文件
[alanchan@server1 ~]$ hadoop fs -rm -skipTrash /test/user.sql
Deleted /test/user.sql
[alanchan@server1 ~]$ hadoop fs -ls /test
Found 2 items
drwxr-xr-x   - alanchan supergroup          0 2022-09-09 11:32 /test/data_o
drwxr-xr-x   - alanchan supergroup          0 2022-09-09 17:01 /test/test2
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

3、从Trash中恢复文件

回收站里面的文件,在到期被自动删除之前,都可以通过命令恢复出来

使用mv、cp命令把数据文件从Trash目录下复制移动出来就可以了

4、清空Trash

除了fs.trash.interval参数控制到期自动删除之外,用户还可以通过命令手动清空回收站,释放HDFS磁盘存储空间

删除整个回收站目录,将会清空回收站

HDFS提供了一个命令行工具来完成这个工作:hadoop fs -expunge。该命令立即从文件系统中删除过期的检查点

[alanchan@server1 ~]$ hadoop fs -ls /user
Found 1 items
drwx------   - alanchan supergroup          0 2022-09-13 09:20 /user/alanchan
[alanchan@server1 ~]$ hadoop fs -expunge /user
2022-09-13 09:28:30,888 INFO fs.TrashPolicyDefault: TrashPolicyDefault#deleteCheckpoint for trashRoot: hdfs://HadoopHAcluster/user/alanchan/.Trash
2022-09-13 09:28:30,888 INFO fs.TrashPolicyDefault: TrashPolicyDefault#deleteCheckpoint for trashRoot: hdfs://HadoopHAcluster/user/alanchan/.Trash
2022-09-13 09:28:30,896 INFO fs.TrashPolicyDefault: TrashPolicyDefault#createCheckpoint for trashRoot: hdfs://HadoopHAcluster/user/alanchan/.Trash
2022-09-13 09:28:30,940 INFO fs.TrashPolicyDefault: Created trash checkpoint: /user/alanchan/.Trash/220913092830
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

以上,完成了回收站的介绍、配置以及验证。

文章知识点与官方知识档案匹配,可进一步学习相关知识
云原生入门技能树首页概览14749 人正在系统学习中
注:本文转载自blog.csdn.net的一瓢一瓢的饮 alanchan的文章"https://blog.csdn.net/chenwewi520feng/article/details/130359929"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top