大数据笔记(五)——HDFS的高级特性
一.HDFS的回收站: recyclebin
1.HDFS的回收站默认是关闭的
2.启用回收站:去core-site.xml配置
路径:/root/training/hadoop-2.7.3/etc/hadoop
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
3.配置完成后删除目录 hdfs dfs -rmr /folder1
日志:
18/02/26 23:08:03 INFO fs.TrashPolicyDefault: Namenode trash configu ration: Deletion interval = 1440 minutes, Emptier interval = 0 minut es.
Moved: 'hdfs://bigdata11:9000/folder1' to trash at: hdfs://bigdata11 :9000/user/root/.Trash/Current
本质:删除数据的时候,实际是一个ctrl+x操作
4.查看回收站:hdfs dfs -lsr /user/root/.Trash/Current

5.恢复:实际就是拷贝 hdfs dfs -cp /user/root/.Trash/Current/input/data.txt /input
6.清空:hdfs dfs -expunge
二.HDFS的快照 snapshot:备份
1.默认:HDFS的快照是禁用的
2.开启快照第一步:管理员开启某个目录的快照功能
[-allowSnapshot <snapshotDir>]
[-disallowSnapshot <snapshotDir>]
hdfs dfsadmin -allowSnapshot /aaa
3.第二步:使用HDFS的操作命令,创建快照
[-createSnapshot <snapshotDir> [<snapshotName>]]
[-deleteSnapshot <snapshotDir> <snapshotName>]
[-renameSnapshot <snapshotDir> <oldName> <newName>]
hdfs dfs -createSnapshot /aaa aaa_backup_01
日志:Created snapshot /aaa/.snapshot/aaa_backup_01
本质:将数据拷贝一份到当前目录的一个隐藏目录下
4.对比快照:hdfs snapshotDiff /aaa aaa_backup_01 aaa_backup_02

三.HDFS的配额:quota
1.名称配额: 规定某个目录下,存放文件(目录)的个数
实际的个数:N-1个
[-setQuota <quota> <dirname>...<dirname>]
[-clrQuota <dirname>...<dirname>]
hdfs dfs -mkdir /quota1
设置该目录的名称配额:3
hdfs dfsadmin -setQuota 3 /quota1
当我们放第三个文件的时候
hdfs dfs -put data.txt /quota1
put: The NameSpace quota (directories and files) of directory /quota1 is exceeded: quota=3 file count=4
2.空间配额: 规定某个目录下,文件的大小
[-setSpaceQuota <quota> [-storageType <storagetype>] <dirname>...<dirname>]
[-clrSpaceQuota [-storageType <storagetype>] <dirname>...<dirname>]
hdfs dfs -mkdir /quota2
设置该目录的空间配额是:10M
hdfs dfsadmin -setSpaceQuota 10M /quota2
正确的做法:hdfs dfsadmin -setSpaceQuota 130M /quota2
放一个小于10M的文件,会出错
Caused by: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.hdfs.protocol.DSQuotaExceededException): The DiskSpace quota of /quota2 is exceeded: quota = 10485760 B = 10 MB but diskspace consumed = 134217728 B = 128 MB
注意:尽管数据不到128M,但是占用的数据块依然是128M
切记:当设置空间配额的时候,这个值不能小于128M
四.HDFS的权限
drwxr-xr-x - root supergroup 0 2018-02-26 23:30 /aaa
权限 用户名 组名 文件目录
参考命令链接:http://blog.csdn.net/feeltouch/article/details/46538277
五.HDFS的安全模式
一种保护机制,用于保护数据块的安全性。
大数据笔记(五)——HDFS的高级特性的更多相关文章
- C#可扩展编程之MEF学习笔记(五):MEF高级进阶
好久没有写博客了,今天抽空继续写MEF系列的文章.有园友提出这种系列的文章要做个目录,看起来方便,所以就抽空做了一个,放到每篇文章的最后. 前面四篇讲了MEF的基础知识,学完了前四篇,MEF中比较常用 ...
- 大数据笔记(二十六)——Scala语言的高级特性
===================== Scala语言的高级特性 ========================一.Scala的集合 1.可变集合mutable 不可变集合immutable / ...
- 大数据笔记(十五)——Hive的体系结构与安装配置、数据模型
一.常见的数据分析引擎 Hive:Hive是一个翻译器,一个基于Hadoop之上的数据仓库,把SQL语句翻译成一个 MapReduce程序.可以看成是Hive到MapReduce的映射器. Hive ...
- 大数据 --> 分布式文件系统HDFS的工作原理
分布式文件系统HDFS的工作原理 Hadoop分布式文件系统(HDFS)是一种被设计成适合运行在通用硬件上的分布式文件系统.HDFS是一个高度容错性的系统,适合部署在廉价的机器上.它能提供高吞吐量的数 ...
- 大数据入门第六天——HDFS详解
一.概述 1.HDFS中的角色 Block数据: HDFS中的文件在物理上是分块存储(block),块的大小可以通过配置参数( dfs.blocksize)来规定,默认大小在hadoop2.x版本中是 ...
- 大数据基础总结---HDFS分布式文件系统
HDFS分布式文件系统 文件系统的基本概述 文件系统定义:文件系统是一种存储和组织计算机数据的方法,它使得对其访问和查找变得容易. 文件名:在文件系统中,文件名是用于定位存储位置. 元数据(Metad ...
- 《OD大数据实战》HDFS入门实例
一.环境搭建 1. 下载安装配置 <OD大数据实战>Hadoop伪分布式环境搭建 2. Hadoop配置信息 1)${HADOOP_HOME}/libexec:存储hadoop的默认环境 ...
- 大数据笔记01:大数据之Hadoop简介
1. 背景 随着大数据时代来临,人们发现数据越来越多.但是如何对大数据进行存储与分析呢? 单机PC存储和分析数据存在很多瓶颈,包括存储容量.读写速率.计算效率等等,这些单机PC无法满足要求. 2. ...
- 大数据小白系列——HDFS(4)
这里是大数据小白系列,这是本系列的第四篇,来看一个真实世界Hadoop集群的规模,以及我们为什么需要Hadoop Federation. 首先,我们先要来个直观的印象,这是你以为的Hadoop集群: ...
随机推荐
- Spring源码深度解析
Spring源码分析 Spring Web入门及源码学习 [Spring源码分析]Bean加载流程概览 Spring Framework 实现原理与源码解析系统 Spring源码分析--水门 Spri ...
- Linux命令学习(0)
作为一名前端,可能接触到linux的机会并不多,但这不代表就不需要学.对我而言,学习linux主要是为了方便部署我的项目到服务器,我并没有花时间去学这些,只是上网查怎么部署项目,然后按教程一步一步来, ...
- 打印页面内容,<input>不好使,用<textarea> 代替
<textarea class="sld-textarea" onchange="changeTextareaValue(this)">123< ...
- c++ Oracle OCCI 编程
转载备忘:http://blog.sina.com.cn/s/blog_53a72add01015zj4.html 关于occi编程可以参考的链接: http://blog.itpub.net/162 ...
- 搜索专题: HDU1428漫步校园
漫步校园 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- 使用mysql的source批量导入多个sql文件
需求: 有一个文件,文件里面包含100多个sql文件,想要把这些sql文件都导入到mysql中 做法: 使用 mysql 的 source 可以将文件导入到 mysql 中,但是一次只能导入一个 sq ...
- 机器学习-KNN算法详解与实战
最邻近规则分类(K-Nearest Neighbor)KNN算法 1.综述 1.1 Cover和Hart在1968年提出了最初的邻近算法 1.2 分类(classification)算法 1.3 输入 ...
- 原生js格式化json和格式化xml的方法
在工作中一直看各位前辈的博客解决各种问题,对我的帮助很大,非常感谢! 之前一直比较忙没有写博客,终于过年有了点空闲时间,可以把自己积累的东西分享下,笔记中的部分函数不是自己写的,都是工作中一点点积累的 ...
- Gcc如何知道文件类型。
Linux系统不区分扩展名,但是GCC编译器通过扩展名区分. GCC是根据扩展名来编译源文件的.
- Qt项目中main主函数及其作用
http://c.biancheng.net/view/1821.html main.cpp 是实现 main() 函数的文件,下面是 main.cpp 文件的内容. #include "w ...