HDFS高级功能(防止用户的错误操作 备份 试验/测试 灾难恢复 配额 数据迁移)

介绍HDFS的高级功能:

回收站
快照snapshot(一种备份)
配额
安全模式
回收站

和我们Window系统上的回收站一样,HDFS也是存在的,不过它默认是关闭的,要开启需要配置。具体的配置如下:

vi core-site.xml
<property><name>fs.trash.interval</name>//回收站持续时间为1天(单位是分钟)<value>1440</value>
</property>

开启之后,我们删除/input/a.exe文件

hdfs dfs -rmr /input/a.exe

日志如下:

Moved: ‘hdfs://bigdata113:9000/input/a.exe’ to trash at: hdfs://bigdata113:9000/user/root/.Trash/Current (将/input/a.exe文件移动到了/user/root/.Trash/Current目录下)

我们通过 hdfs dfs -ls /user/root/.Trash/Current/input来查看一下:

下面执行清空回收站的操作:

hdfs dfs -expunge

结果如下:

可以发现,再次查询回收站就已经没有了。

回收站的本质:ctrl+x 移动到一个隐藏目录。可以通过cp操作来恢复!!

使用场景:防止用户的错误操作(因为在一定条件下可恢复)

快照

(除非当前数据很重要,否则不建议开启。因为本身有冗余度)
快照本质上就是一个镜像,用来作备份的。常用命令如下:

//操作命令
[-createSnapshot <snapshotDir> [<snapshotName>]]    创建快照
[-deleteSnapshot <snapshotDir> <snapshotName>]      删除快照
[-renameSnapshot <snapshotDir> <oldName> <newName>] 重命名快照
//管理员命令
[-allowSnapshot <snapshotDir>]      开启快照
[-disallowSnapshot <snapshotDir>]   关闭快照

开启快照(HDFS默认是禁用快照功能的,想要使用需要使用以下命令开启)

hdfs dfsadmin -allowSnapshot /input (/input目录开启快照)

创建快照

hdfs dfs -createSnapshot /input backup_input (为/input目录创建的快照目录为backup_input)

查看快照

hdfs dfs -ls /input/.snapshot/backup_input

对比快照

hdfs snapshotDiff /input backup_input_01 backup_input_02

恢复快照

hdfs dfs -cp /input/.snapshot/backup_input_01/data.txt /input

我们以/input为例,进行以下操作:

打开快照并创建备份

hdfs dfsadmin -allowSnapshot /input (必须是目录)
hdfs dfs -createSnapshot /input backup (若未指定则系统将生成以字符s开头紧跟当前时间戳的名称 )

重命名备份

hdfs dfs -renameSnapshot /input backup backup_input(注意:前面的目录指定到我们上面开启快照时指定的/input即可,不能指定到/input/.snapshot,否则会报错)删除/input下的所有文件,仅保留data.txt,然后重新备份,对比两个备份的差别hdfs dfs -rmr /input/*.exe(删除/input下的所有.exe文件,此时只剩data.txt)hdfs dfs -createSnapshot /input backup_input2(二次备份)hdfs snapshotDiff /input backup_input backup_input2

对比结果如下:

结果显示有三个exe文件被删除。删除原目录,并copy快照回源目录hdfs dfs -rmr /input/data.txt(删除input下data.txt文件)hdfs dfs -cp /input/.snapshot/backup_input/data.txt /input(使用备份恢复/input目录)

使用场景:

防止用户的错误操作
备份
试验/测试
灾难恢复
配额
配额就是HDFS为每个目录分配的大小空间,新建立的目录是没有配额的,最大的配额是Long.Max_Value。配额为1可以强制目录保持为空。

配额quota类型:名称配额、空间配额

1)名称配额:限制某个目录下,文件的个数(管理员命令,即hdfsadmin)

 [-setQuota <quota> <dirname>...<dirname>]   设置名称配额[-clrQuota <dirname>...<dirname>]          清除名称配额hdfs dfsadmin -setQuota 3 /input

此时设置tools目录的名称配额为3,那么它实际上能放置的文件个数为N-1,N为我们设置的配额数,即3

hdfs dfsadmin -clrQuota /input

清除/input目录的名称配额

(2)空间配额:限制某个目录下,文件的大小(管理员命令)

 [-setSpaceQuota <quota> [-storageType <storagetype>] <dirname>...<dirname>]     设置空间配额[-clrSpaceQuota [-storageType <storagetype>] <dirname>...<dirname>]            清除空间配额hdfs dfsadmin -setSpaceQuota 1M /input设置/input目录的空间配额为1Mhdfs dfsadmin -clrSpaceQuota /input清除input目录的空间配额

对于空间配额,设置的值一定不能小于128M(因为HDFS是以数据块来保存数据的,每一个数据块都占有128M的大小,设置小于128M的话,什么文件都放不下)

安全模式
安全模式safemode:hadoop的一种保护机制,用于保证集群中的数据块的安全性。在正常运行情况下,安全模式一定是off;如果是on,HDFS是只读。

当集群启动的时候,会首先进入安全模式。当系统处于安全模式时会检查数据块的完整性。假设我们设置的副本数(即参数dfs.replication)是5,那么在datanode上就应该有5个副本存在,假设只存在3个副本,那么比例就是3/5=0.6。在配置文件hdfs-default.xml中定义了一个最小的副本的副本率0.999,如图:

我们的副本率0.6明显小于0.99,因此系统会自动的复制副本到其他的dataNode,使得副本率不小于0.999.如果系统中有8个副本,超过我们设定的5个副本,那么系统也会删除多余的3个副本。

在命令行下是可以控制安全模式的进入、退出和查看的:

hdfs dfsadmin -safemode get     查看安全模式状态
hdfs dfsadmin -safemode enter   进入安全模式状态
hdfs dfsadmin -safemode leave   离开安全模式

HDFS高级功能(防止用户的错误操作 备份 试验/测试 灾难恢复 配额 数据迁移)相关推荐

  1. 易保全上线“工信部查询”新功能,用户可在工信部直接查询存证数据

    近日,易保全官网上线了"工信部查询"新功能,用户在易保全进行区块链存证.电子签约.知识产权保护的数据,都可在工信部-工业互联网标识解析平台直接查询,提高数据的公信力. 工信部在线查 ...

  2. 远程登录另一个mysql 数据库_Ubuntu中开启MySQL远程访问功能,并将另一个数据库服务器中的数据迁移到新的服务器中...

    技术交流群:233513714 一.开启MyS远程访问功能 1.进入服务器输入netstat -an | grep 3306确认3306是否对外开放,MySQL默认状态下是不对外开放访问功能的.输入以 ...

  3. Ubuntu中开启MySQL远程访问功能,并将另一个数据库服务器中的数据迁移到新的服务器中...

    技术交流群:233513714 一.开启MyS远程访问功能 1.进入服务器输入netstat -an | grep 3306确认3306是否对外开放,MySQL默认状态下是不对外开放访问功能的.输入以 ...

  4. 使用 Android 备份和恢复功能留住用户

    随着移动设备厂商不断推出新的型号,用户更换设备的频率也越来越频繁.替换新机时,最让用户头疼的问题之一就是数据迁移了.那么不完善的数据迁移会给用户带来哪些糟糕体验呢?我们从下面的案例来看看用户的烦恼. ...

  5. RocketMQ 高级功能介绍

    1. 高级功能 1.1 消息存储 分布式队列因为有高可靠性的要求,所以数据要进行持久化存储. 消息生成者发送消息 MQ收到消息,将消息进行持久化,在存储中新增一条记录 返回ACK给生产者 MQ pus ...

  6. 手机浏览器网址_「效率集」自定义网址导航高级功能介绍

    「效率集」是国内仅有的几家提供了个性自定义导航的网站,功能比hao123强,用户体验优于百度导航首页,且支持聚合搜索,方便用户从不同渠道(网页,微博,微信公众号,知乎,维基百科)获取信息:方便用户在网 ...

  7. Kutools for Excel 结合 300 多种高级功能和工具

    Kutools for Excel 是一个方便的 Excel 插件,具有 300 多个高级功能,可将各种复杂的任务简化为 Excel 中的几次点击.例如,Excel 用户可以通过几次单击轻松组合工作表 ...

  8. 抓包工具fiddler都有哪些高级功能,一文带你全面了解它

    介绍与安装 下载地址:官网自己下载 抓包设置 有时候,我们的fiddler启动是正常的,但是就是抓不到包,原因有很多.但多数情况都是因为配置不正确,接下来我们就看下有哪些导致fiddler抓不到的设置 ...

  9. 实现一个可管理、增发、兑换、冻结等高级功能的代币

    本文首发于深入浅出区块链社区 原文链接:实现一个可管理.增发.兑换.冻结等高级功能的代币 本文主要介绍代币高级功能的实现: 代币管理.代币增发.代币兑换.资产冻结.Gas自动补充. 写在前面 在上一篇 ...

最新文章

  1. 香港科技大学谢知遥教授实验组招收机器学习全奖博士生
  2. 中国智慧城市前瞻及开发运营可行性分析报告2022-2027年版
  3. 数据库——关系数据库——交通违规处罚通知书
  4. tkmybatis 子查询_dnssearch 子域名枚举工具
  5. 怎么将aspx网站改为静态页面?
  6. 十大经典排序算法(上)
  7. sql:数据操作语言dml
  8. 鸿蒙应用开发--应用生命周期
  9. centos linux 通过yum安装nginx
  10. 《Entity Framework 6 Recipes》中文翻译系列 (24) ------ 第五章 加载实体和导航属性之查询内存对象...
  11. java打菱形_java打印菱形
  12. 【MATLAB调用Refprop】
  13. 安卓蓝牙键盘按键映射_安卓手游键盘映射工具(凤凰系统键盘映射) v2.0 最新版...
  14. android expandablelistview横向,ExPandableListView实现时间轴效果【Android】
  15. MOSS 2007 功能概述
  16. 讲几个问题,区块链底层架构
  17. 数字货运角逐:满帮化零为整,福佑化整为零
  18. [51nod1074]约瑟夫环V2
  19. CDH 安装,CDH中安装Nifi
  20. 2021_GDUT_新生专题训练_数据结构

热门文章

  1. 基于SDN的环路通信
  2. 为什么要使用git pull --rebase?
  3. 【7.17总结】 匈牙利算法(二分图最大匹配)
  4. 201712-2-游戏
  5. 201604-1折点计数
  6. 【数据结构笔记37】表排序与物理排序
  7. Udp、Tcp、Http Socket
  8. 每个人都应该了解的HTTPS知识
  9. Ros中Remap(话题重映射)的两种使用方法
  10. ubuntu10.04以及10.10安装配置tftp服务