三个高级特性——快照、配额、回收站

一、快照(snapshot):是一种备份,默认关闭  

  1、应用场景:

    防止用户错误操作

    备份

    试验/测试

    灾难恢复 

  2、命令:

    管理命令:

      -allowsnapshot

      -disallowsnapshot

    操作命令:
      -createshapshot

    举例:

      打开快照功能(以/folder文件夹为例)

        hdfs dfsadmin -allowsnapshot /folder

      创建快照

        hdfs dfs -createsnapshot /folder folder_20180503_01   第一份快照

        hdfs dfs -createsnapshot /folder foldert_20180503_02 第二份快照

      查看快照

        hdfs -lssnapshottableDir

      对比快照

        hdfs -snapshotdiff /folder folder_20180503_01 folder_20180503_02

      恢复快照

        hdfs dfs -cp /folder/.snapshot/folder_20180503_01/data.txt /folder (补充知识:快照会在元文件夹下,以隐藏目录的方式存在(如folder/.snapshot/folder_20180503_01))

   

  3、其他:

    快照信息可以在webconsole 上查看

    快照的本质:将目录拷贝了一份

二、Quota(配额):

  1、名称配额:限定hdfs目录下存放文件/目录的个数

    命令(都是hdfs dfsadmin 命令):

        -setQuota  <quota> dirName1 dirName2 dirName3   文件夹实际能够存放的文件/文件夹数量为quota-1 个

        -clrQuota dirName1 dirName2 dirName3

    举例(以/myQuota1文件夹为例):

        hdfs dfsadmin -setQuota 3 /myquota1    设置/myquota1文件夹下最大的文件/文件夹数量为3-1=2个

        hdfs dfsadmin -clrQuota /myquota1

  2、空间配额:限定hdfs目录下,文件的大小

    命令:

           -setSpaceQuota <quota> [-storageType storagetype] dirName1 dirName2 dirName3

             -clrSpaceQuota [-storageType storagetype] dirName1 dirName2 dirName3

    举例(以/myquota2为例):

        hdfs dfsadmin -setSpaceQuota 2M /myquota2  设置/myquota2文件夹存储的文件,大小不超过2M

        注意:数据块上传时,即使文件本身小于2M,该数据块实际在hdfs上占用的空间也为128M,上传会失败。因此在设定文件夹空间配额时,不要小于128M。

        hdfs dfsadmin -clrSpaceQuota /myquota2

    

三、回收站(默认是关闭的)

  1、配置回收站

    在core-site.xml中配置回收站

    <property>

      <name>dfs.trash.interval</name>

      <value>1440</value>        注:1440 代表一天 (1440分钟)

    </property>

  2、开启回收站后,执行hdfs dfs -rm -R /folder 操作前后,控制台打印日志的对比

    开启前:Deleted /folder

    开启后:Moved "hdfs://192.168.**.**:9000/folder" to trash " hdfs://192.168.**.**:9000/user/root/.Trash/Current"

        相当于做了一次“剪切”操作,所以要找回删除的文件,直接做一次  hdfs dfs -cp ** 操作即可

    同样的,oracle数据库也有回收站,当一个表被删除后,进入回收站,可以通过flashback(闪回)恢复表。

  

      

  

HDFS(一) 高级特性的更多相关文章

  1. 大数据笔记(五)——HDFS的高级特性

    一.HDFS的回收站: recyclebin 1.HDFS的回收站默认是关闭的 2.启用回收站:去core-site.xml配置 路径:/root/training/hadoop-2.7.3/etc/ ...

  2. (升级版)Spark从入门到精通(Scala编程、案例实战、高级特性、Spark内核源码剖析、Hadoop高端)

    本课程主要讲解目前大数据领域最热门.最火爆.最有前景的技术——Spark.在本课程中,会从浅入深,基于大量案例实战,深度剖析和讲解Spark,并且会包含完全从企业真实复杂业务需求中抽取出的案例实战.课 ...

  3. Spark Streaming高级特性在NDCG计算实践

    从storm到spark streaming,再到flink,流式计算得到长足发展, 依托于spark平台的spark streaming走出了一条自己的路,其借鉴了spark批处理架构,通过批处理方 ...

  4. HBase高级特性、rowkey设计以及热点问题处理

    在阐述HBase高级特性和热点问题处理前,首先回顾一下HBase的特点:分布式.列存储.支持实时读写.存储的数据类型都是字节数组byte[],主要用来处理结构化和半结构化数据,底层数据存储基于hdfs ...

  5. ActiveMQ中的Destination高级特性(一)

    ---------------------------------------------------------------------------------------- Destination ...

  6. Python3学习(二)-递归函数、高级特性、切片

    ##import sys ##sys.setrecursionlimit(1000) ###关键字参数(**关键字参数名) ###与可变参数不同的是,关键字参数可以在调用函数时,传入带有参数名的参数, ...

  7. 云端卫士实战录 | Java高级特性之多线程

    <实战录>导语 一转眼作为一名Java开发者已经四年多时间了,说长不长说短不短,对于java的感情还是比较深的,主要嘛毕竟它给了我饭吃.哈哈,开个玩笑.今天我想借此机会来和大家聊聊Java ...

  8. javascript高级特性

    01_javascript相关内容02_函数_Arguments对象03_函数_变量的作用域04_函数_特殊函数05_闭包_作用域链&闭包06_闭包_循环中的闭包07_对象_定义普通对象08_ ...

  9. Visual Studio 2015 速递(4)——高级特性之移动开发

    系列文章 Visual Studio 2015速递(1)——C#6.0新特性怎么用 Visual Studio 2015速递(2)——提升效率和质量(VS2015核心竞争力) Visual Studi ...

随机推荐

  1. 【spotlight安装监控】

    参考博客: https://www.cnblogs.com/ceshi2016/p/9012646.html http://blog.sina.com.cn/s/blog_1517220f20102x ...

  2. Python 调用 C# dll库最简方法

    1.为什么要跨平台编程?双平台编程或多平台编程,只是为提供更好开发更兼容的解决方案的一种手段,编程时服务于产品和客户的,也是因地制宜. 先安装python所需的库clr ,我这里已经安装了,可以去对应 ...

  3. 破解360doc个人图书馆网站的右键、复制方法

    chrome浏览器如下做法: 右上角菜单按钮→设置→显示高级设置→隐私设置下的 内容设置按钮→javascript下的管理例外情况→添加 [*.]360doc.com 设置为禁止 →完成

  4. go-switch特点

    程序中遇到有枚举分支逻辑时,需要用到 switch 代替多个 if else 判断. 学习过程遇到一些与C#不同点,记录下. 语法: switch expr { case x1 : //expr为x1 ...

  5. CSDN去广告插件

    因为避免不了与代码打交道,所以经常要上网搜代码,一般搜索到的资源都指向了CSDN,然而,好好的一篇博文,上面有很多广告,看着很不舒服,冲vip是不可能的,穷的的要死,怎么办呢?写个插件把! 去广告原理 ...

  6. ASP.NET MVC WebAPI Put和Delete请求出现405(Method not allowed)错误

    解决办法: 在站点根目录下的web.config设置如下(主要参考添加项): <system.webServer> <modules> <remove name=&quo ...

  7. vue-router的简单理解

    Vue-router原理了解一下: 找到一篇文章,分析的很透彻 从vue-router看前端路由的两种实现,文章写的很好,看完这篇文章 ➕ 看源码应该可以理解,这里根据我浅显的理解概括一下: vue- ...

  8. Unity日常记录-本地保存未来时间实现倒计时

    本地保存未来时间实现倒计时 TimeTool工具类:获取当前时间.未来时间.两时间差 using System; using UnityEngine; public class TimeTool { ...

  9. 二、Python数据类型(一)

    一.Python的基本输入与输出语句 (一)输出语句 print() 示例: print('你好,Python') print(4+5) a = 10 print(a) 输出的内容可以是字符串,变量, ...

  10. 关于Struts2的通配方法、转发重定向

    1.通配符 在配置struts.xml文件的时候,需要很多action,这时可以用到通配符找到与之对应的方法和类,当然实际开发中很少用到这种方法 struts.xml: <!--通配方法 *_* ...