HDFS高级功能
1、回收站
2、快照
3、配额
4、安全
5、权限管理
1、回收站
(*)补充 Oracle的回收站
恢复:闪回
Oracle 11g中有七种闪回
- 闪回表:flashbcak table
- 闪回查询:flashback query
- 闪回删除:flashback drop
- 闪回版本查询:flashback version query
- 闪回事务查询:flashback transaction query
- 闪回数据库:flashback database
- 闪回数据归档:flashback data archive --only 11g
一个事务提交可以被撤销 通过返回的方式是可以被撤销的
(*)HDFS的回收站
(1)默认:禁用
(2)删除数据时的日志:
17/09/10 21:27:53 INFO fs.TrashPolicyDefault: Namenode trash configuration: Deletion interval = 0 minutes, Emptier interval = 0 minutes.
Deleted /output
(3) 本质:把要删除的数据移动到一个隐藏目录
(4) 配置
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
(5)重启HDFS
(6)等待安全模式
(7)删除文件
日志
17/09/15 20:44:35 INFO fs.TrashPolicyDefault: Namenode trash configuration: Deletion interval = 1440 minutes, Emptier interval = 0 minutes.
Moved: 'hdfs://192.168.157.111:9000/folder1' to trash at: hdfs://192.168.157.111:9000/user/root/.Trash/Current
转移到隐藏文件下,如果恢复cp复制 mv剪切
日常不开启
2、快照
本质 拷贝目录到隐藏文件下
(1)是一种备份,防止错误的操作
(2)补充:Oracle数据库中备份:RMAN(Recovery Manage 恢复管理器) backup database ---->联机备份:必须是归档模式
rman target /
target:目标数据库,对那个进行备份
/当前主机的数据库
备份
RMAN>backup database;
cannot backup or copy active file in NOARCHIVELOG
原因:
归档模式:联机备份
非归档模式:默认 离线备份 短备份数据库停机shut down就可以做备份 (3)步骤 第一步:使用管理员开启某个目录快照功能
hdfs dfsadmin -allowSnapshot /students
第二步:使用HDFS操作命令操作快照
hdfs dfs -createSnapshot /student backup_students_01
hdfs dfs -createSnapshot /student backup_students_02
对比快照
hdfs snapshotDiff /students backup_students_01
3、配额
- 名称配额(放几个文件)
- 空间配额(放多大的文件)
(1)名称配额
创建目录
hdfs dfs -mkdir /test1
设置目录的名称配额是3
hdfs dfsadmin -setQuota 3 /test1
(2)空间配额
设置目录的空间大小配额是1M
hdfs dfsadmin -setSpaceQuota 1M /test2
失败
按照数据块128M存储,所以配额值一定大于数据块大小
200M空间配额不可以放150M的大小
4、安全
(1)HDFS启动期间会启动安全模式
(2)正常期间,HDFS一定不能是安全模式
(3).命令
//获取安全模式
hdfs dfsadmin -safemode get
//进入安全模式
hdfs dfsadmin -safemode enter
(4)作用:检查数据块完整性
检查数据块的副本率3/5,如果不满足需求,进行相应的操作,副本少水平复制,副本多删除。
5、权限管理
Hadoop的权限很弱,单独有个框架做安全验证,kebores
- 环境变量改名 root
- -D参数,改环境变量
- 改变文件的chmod
- 修改配置文件,设置权限不检查