news 2026/7/16 4:55:12

【赵渝强老师】Hadoop HDFS的回收站和快照

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【赵渝强老师】Hadoop HDFS的回收站和快照

Hadoop的HDFS除了最基本的上传数据和下载数据的功能以外,还提供了很多高级特性用于方便使用和操作,主要有:回收站、快照、配额管理、安全模式、权限管理,同时从Hadoop 3.x开始还提供了纠删码技术。

视频讲解如下

【赵渝强老师】Hadoop HDFS的回收站和快照

下面分别介绍HDFS提供的回收站和快照。

一、 HDFS的回收站

在默认的情况下,HDFS的回收站功能是关闭的。可以通过在core-site.xml中添加fs.trash.interval来配置时间阀值,从而启用HDFS的回收站。例如:

<property><name>fs.trash.interval</name><value>1440</value></property><!-- 由于修改了HDFS的配置文件,需要重启HDFS。 -->

启用回收站后,当删除HDFS文件时,其本质是将要删除的文件或者目录放入回收站对应的目录。例如,当删除/input/data.txt文件时,将看到如下的日志信息。

2026-01-15 20:55:31,387 INFO fs.TrashPolicyDefault: Moved:'hdfs://bigdata111:9000/input/data.txt'to trash at: hdfs://bigdata111:9000/user/root/.Trash/Current/input/data.txt

回收站里的文件可以快速恢复。但当回收站里文件的存放时间超过返个阈值,就被彻底删除,并且释放占用的数据块。例如,在上面的设置中设置的时间阈值是1440分钟,即一天的时间。下面列举了一些HDFS回收站的基本操作。
(1)查看回收站。

hdfs dfs-lsr/user/root/.Trash/Current

(2)从回收站中恢复。

hdfs dfs-cp/user/root/.Trash/Current/input/data.txt/input

(3)清空回收站。

hdfs dfs-expunge

二、 HDFS的快照

一个快照(Snapshot)是一个全部文件系统、或者某个目录在某一时刻的镜像。这里其实可以把HDFS的快照理解成是HDFS提供的一种备份机制。快照应用在以下场景中:

  • 防止用户的错误操作
  • 备份
  • 试验/测试
  • 灾难恢复

由于HDFS的快照功能是针对的目录,因此需要首先使用HDFS的管理员命令开启目录的快照功能,再使用HDFS的操作命令创建目录的快照。

#与快照相关的HDFS管理命令[-allowSnapshot <snapshotDir>][-disallowSnapshot <snapshotDir>]#与快照相关的HDFS操作命令[-createSnapshot <snapshotDir>[<snapshotName>]][-deleteSnapshot <snapshotDir> <snapshotName>][-renameSnapshot <snapshotDir> <oldName> <newName>]

下面通过具体的步骤来演示如何使用HDFS的快照。
(1)开启/input目录的快照功能。

hdfs dfsadmin-allowSnapshot/input

(2)为/input目录创建第一个快照。

hdfs dfs-createSnapshot/input bk_input_20260115_01# 在创建HDFS快照的时候,最好遵循一个良好的命名规则。# 例如,这里创建的快照名称为bk_input_20260115_01,# 表示在2026年1月15日为input目录创建的第一个快照。

(3)上传一个新的文件到/input目录,如:data1.txt。

hdfs dfs-put data1.txt/input

(4)为/input目录创建第二个快照。

hdfs dfs-createSnapshot/input bk_input_20260115_02

(5)对比/input目录的两个快照。

hdfs snapshotDiff/input bk_input_20260115_01 bk_input_20260115_02# 输出的信息如下:Difference between snapshot bk_input_20260115_01 and snapshot bk_input_20260115_02 under directory/input: M.+./data1.txt# 通过对比快照可以看出第二个快照比第一个快照多了一个文件data1.txt。

(6)通过HDFS的Web Console也可以查看快照的相关信息,如下图所示。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/16 4:54:59

C++移动构造函数:原理、实现与性能优化实践

1. 项目概述如果你写过C&#xff0c;尤其是处理过动态内存或者大型对象&#xff0c;肯定对深拷贝带来的性能开销深有体会。每次复制一个包含指针的类对象&#xff0c;都要重新分配内存、拷贝数据&#xff0c;这在处理容器&#xff08;比如std::vector&#xff09;或者函数返回值…

作者头像 李华
网站建设 2026/7/16 4:53:08

C++入门指南:从零开始掌握编程核心与底层逻辑

1. 项目概述&#xff1a;为什么从C开始你的算法之旅&#xff1f;如果你点开了这篇文章&#xff0c;大概率是想踏踏实实学点东西&#xff0c;无论是为了找工作、打比赛&#xff0c;还是单纯想搞懂计算机到底是怎么工作的。在众多编程语言里&#xff0c;我为什么建议你&#xff0…

作者头像 李华
网站建设 2026/7/16 4:52:02

Cursor + MCP:地理空间开发的自然语言新范式

1. 项目概述&#xff1a;为什么“Cursor 中使用MCP”正在成为地理智能开发的新分水岭最近两周&#xff0c;我在三个不同行业的客户现场做技术方案支持&#xff0c;从智慧物流调度系统到城市规划数字孪生平台&#xff0c;再到一个农业遥感数据处理工具链&#xff0c;几乎每场技术…

作者头像 李华
网站建设 2026/7/16 4:51:45

C++性能优化实战:深入缓存原理与数据结构设计提升程序效率

1. 项目概述&#xff1a;为什么缓存优化是C性能的“胜负手”干了十几年C&#xff0c;从桌面应用到嵌入式&#xff0c;再到高并发服务器&#xff0c;我踩过最大的坑&#xff0c;往往不是算法逻辑写错&#xff0c;而是性能瓶颈藏在你意想不到的地方。很多时候&#xff0c;代码逻辑…

作者头像 李华
网站建设 2026/7/16 4:51:11

LSTM中文文本处理:Tokenizer选择与优化实践指南

1. 为什么LSTM项目需要修改tokenizer在自然语言处理项目中&#xff0c;tokenizer&#xff08;分词器&#xff09;是决定模型能否正确理解输入文本的关键组件。特别是对于LSTM这类序列模型&#xff0c;tokenizer的质量直接影响模型对文本特征的提取能力。很多人在跑LSTM项目时会…

作者头像 李华
网站建设 2026/7/16 4:51:04

Linux桌面GUI自动化测试实战:基于Dogtail与Python的完整指南

1. 为什么需要Linux桌面GUI自动化测试在Linux桌面应用开发过程中&#xff0c;手动测试往往效率低下且容易遗漏。想象一下每次版本更新都要手动点击几十个按钮、输入各种测试数据&#xff0c;不仅耗时耗力&#xff0c;还难以保证测试覆盖率。这时候GUI自动化测试就显得尤为重要。…

作者头像 李华