HDFS中的Trash垃圾桶回收机制

Trash垃圾桶回收机制

文件系统垃圾桶背景

  • 回收站(垃圾桶)是windows操作系统里的一个系统文件夹,主要用来存放用户历史删除的文档文件资料,存放在回收站的文件可以恢复
  • 回收站的功能给了我们一剂"后悔药"。回收站保存了删除的文件,文件夹,图片等。这些项目将一直保留在回收站中,直到清空回收站
  • HDFS本身也是一个文件系统,那么就会涉及到文件数据的删除操作
  • 默认情况下,HDFS中是没有回收站垃圾桶概念的,删除操作的数据将会被直接删除

功能概述

  • HDFS Trash机制,目的防止无意中删除某些东西。默认情况下是不开启的
  • 启用Trash功能之后,从HDFS中删除某些内容时,文件或目录不会立即被清楚,他们将被移动到回收站Current目录中(/user/${username}.Trash/current)
  • .Trash中的文件在用户可配置的时间延迟后被永久删除
  • 也可以简单的讲回收站里的文件移动到.Trash目录之外的位置来恢复回收站中的文件和目录

Trash Checkpoint

  • 检查点仅仅是用户回收站下的一个目录,用于存储在创建检查点之前删除的所有文件或目录
  • 回收站目录在/user/${username}/.Trash/{timestamp_of_checkpoint_creation}
  • 最近删除的文件被移动到回收站Current目录,并且在可配置的时间间隔内,HDFS会为Current回收站目录下的文件创建检查点/user/${username}/.Trash/<日期>,并在过期时删除旧的检查点

Trash功能开启

关闭HDFS集群

  • 在node1节点上,执行一建关闭HDFS集群命令:stop-dfs.sh

修改core-site.xml

  • 在node1节点上修改core-site.xml文件添加下面两个属性
  • fs.trash.interval:回收站中的文件多少分钟后会被系统永久的删除。如果为0,trash功能将被禁用
  • fs.trash.checkpoint.interval:前后两次检查点爱你的创建时间间隔(也是分钟),新的检查点被创建后,随之久的检查点就会被系统永久删除。如果为0,则将该值设置为fs.trash.interval的值

删除文件到trash

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

删除文件跳过

  • 在执行删除操作的时候添加一个参数:-skipTrash,不需要经过回收站直接删除

从trash中恢复文件

  • 回收站里面的文件,在到期被自动删除之前,都可以通过命令恢复出来
  • 使用mv,cp命令把数据文件从trash目录下复制移动出来就可以了

清空trash

  • 除了fs.trash.interval参数控制到期自动删除之外,用户还可以通过命令手动清空回收站,释放HDFS磁盘存储空间
  • HDFS提供了一个命令行工具来完成这个工作:Hadoop fs -expunge.该命令立即从文件系统中删除过期检查点
相关推荐
朗心心理2 小时前
朗心科技:以数智化引领心理健康服务新标杆
大数据·人工智能·科技·心理健康·朗心科技·数智化心理育人·一站式心理中心建设
无忧智库2 小时前
破局与重构:大型集团化协同管理平台的全景式深度解构(PPT)
大数据
码云数智-大飞4 小时前
进程、线程与协程:并发模型的演进与 Go 语言的 GMP 革命
大数据
XiaoMu_0015 小时前
基于大数据的糖尿病数据分析可视化
大数据·数据挖掘·数据分析
阿里云大数据AI技术5 小时前
Celeborn 如何让 EMR Serverless Spark 的 Shuffle 舒心、放心、安心
大数据·spark
AI营销快线5 小时前
AI营销获客难?原圈科技深度解析SaaS系统增长之道
大数据·人工智能
星幻元宇VR6 小时前
VR环保学习机|科技助力绿色教育新模式
大数据·科技·学习·安全·vr·虚拟现实
CryptoPP7 小时前
开发者指南:构建实时期货黄金数据监控系统
大数据·数据结构·笔记·金融·区块链
ZGi.ai8 小时前
生产级 Agent 编排 从单一 LLM 调用到多智能体工作流的工程设计
大数据·数据库·人工智能
天远数科8 小时前
分布式系统实战:基于天远二手车估值API构建高可用车辆估值微服务
大数据·微服务·云原生·架构