等待下一个秋

  • Spark
  • Flink
  • Hive
  • 数据仓库
  • ClickHouse
  • 收徒弟
  • Java
    • Spring
    • Mybatis
    • SpringBoot
    • 面试题
  • Python
    • Python基础
    • 爬虫
    • Numpy
    • matplotlib
    • Flask
  • 技术杂谈
    • Linux知识
    • Docker
    • Git教程
    • Redis教程
    • mysql
    • 前端
    • R语言
    • 机器学习
  • 关于我
  • 其它
    • 副业挣钱
    • 资料下载
    • 资料文档
专注于Hadoop/Spark/Flink/Hive/数据仓库等
关注公众号:大数据技术派,获取更多学习资料。
  1. 首页
  2. 技术杂谈
  3. 大数据
  4. 正文

HDFS的快照

2021年10月10日 900点热度 0人点赞 0条评论

一个snapshot(快照)是一个全部文件系统、或者某个目录在某一时刻的镜像,使用vmware类似软件的同学指定,快照可以为虚拟机保存某个状态,如果做了更改,或者系统被折腾坏,还有个复原的操作。

快照应用在如下场景中:

  • 防止用户的错误操作;
  • 备份:给hdfs目录做快照,然后复制快照里面的文件到备份;
  • 试验/测试
  • 灾难恢复

HDFS的快照操作

这里测试的Hadoop3.0版本,也是我的线上版本。

  1. 开启快照
hdfs dfsadmin -allowSnapshot /data/test/test_snapshot

[hdfs@cdh-003 ~]$ hdfs dfs -ls /data/test/test_snapshot
-rw-r--r--   2 hdfs supergroup         88 2021-10-08 16:59 /data/test/test_snapshot/ods_user1.txt

这里开启目录/data/test/test_snapshot快照功能,该目录当前有一个文件ods_user1.txt。

  1. 创建快照

给目录/data/test/test_snapshot创建了一个快照,名为backup01。

hdfs dfs -createSnapshot /data/test/test_snapshot backup01

[hdfs@cdh-003 ~]$ hdfs dfs -ls /data/test/test_snapshot/.snapshot/backup01
Found 1 items
-rw-r--r--   2 hdfs supergroup         88 2021-10-08 16:59 /data/test/test_snapshot/.snapshot/backup01/ods_user1.txt

可以看到实际上是在开启快照的目录下新建了一个文件夹.snapshot,下面有个目录backup01,里面有一个文件,相当于复制了一份文件。

  1. 查看快照
hdfs lsSnapshottableDir

再上传一个文件

hdfs dfs -put data/urls.txt /data/test/test_snapshot

再创建一个快照

 hdfs dfs -createSnapshot /data/test/test_snapshot backup02

这里又新建了一个快照backup02,.snapshot下面有两个目录,分别是backup01和backup02。

[hdfs@cdh-003 ~]$ hdfs dfs -ls /data/test/test_snapshot/.snapshot
Found 3 items
drwxr-xr-x   - hdfs supergroup          0 2021-10-08 17:04 /data/test/test_snapshot/.snapshot/backup01
drwxr-xr-x   - hdfs supergroup          0 2021-10-08 17:12 /data/test/test_snapshot/.snapshot/backup02
  1. 对比快照

因为后来又上传了一个文件,所以快照backup02下面有2个文件了,比backup01多一个文件urls.txt。

[hdfs@cdh-003 ~]$ hdfs snapshotDiff /data/test/test_snapshot backup01 backup02
Difference between snapshot backup01 and snapshot backup02 under directory /data/test/test_snapshot:
M   .

+   ./urls.txt
  1. 恢复快照
    如果不小心把文件删除了,这个文件就被移动到回收站(如果开启了回收站),如果回收站到期清理了或者没有开启回收站,这个时候快照的作用就发挥出来了,直接cp过去。
hdfs dfs -cp /data/test/test_snapshot/.snapshot/backup01/ods_user1.txt /data/test/test_snapshot
标签: 大数据
最后更新:2021年10月10日

等待下一个秋

待我代码写成,便娶你为妻!专注于Hadoop/Spark/Flink/Hive/数据仓库等,关注公众号:大数据技术派,获取更多学习资料。

打赏 点赞
< 上一篇
下一篇 >

文章评论

取消回复

等待下一个秋

待我代码写成,便娶你为妻!专注于Hadoop/Spark/Flink/Hive/数据仓库等,关注公众号:大数据技术派,获取更多学习资料。

搜一搜
微信
最新 热点 随机
最新 热点 随机
ChatGPT可以做什么 ClickHouse 自定义分区键 ClickHouse数据副本引擎 ClickHouse ReplacingMergeTree引擎 ClickHouse MergeTree引擎 clickhouse简介
Matplotlib 默认字体 R语言里面的因子 paddleocr安装教程快速开始 Python安装及Python双版本安装详细教程 推荐几个能挣钱的SpringBoot项目 R语言学习之矩阵
标签聚合
大数据 数据仓库 Python Redis Java Flink 算法 挣钱 Hive 书籍 R语言 mysql
文章归档
  • 2023年2月
  • 2022年12月
  • 2022年11月
  • 2022年9月
  • 2022年7月
  • 2022年6月
  • 2022年5月
  • 2022年4月
  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月
  • 2021年8月
  • 2021年6月
  • 2021年5月
  • 2021年4月
  • 2021年3月
  • 2021年2月
  • 2021年1月
  • 2020年12月
  • 2020年11月
  • 2020年10月
  • 2020年9月
  • 2020年8月
  • 2020年7月
  • 2020年5月
  • 2020年4月
  • 2020年1月
  • 2019年9月
  • 2019年8月
  • 2019年7月
  • 2019年6月
  • 2019年5月
  • 2019年4月
  • 2019年3月
  • 2019年1月
  • 2018年12月
  • 2017年5月

©2022 ikeguang.com. 保留所有权利。

鄂ICP备2020019097号-1

鄂公网安备 42032202000160号