HDFS的高级功能
1、回收站
补充:Oracle的回收站
恢复:闪回(flashback)
(1) 闪回表 flashback table
(2) 闪回删除 flashback drop
(3) 闪回查询 flashback query
(4) 闪回事务查询 flashback transaction query -----> 可以撤销一个已经提交了的事务
(5) 闪回数据库 flashback database
(6) 闪回版本查询 flashback verion query
(7) 闪回数据归档 flashback data archive
HDFS的回收站:默认禁用
参数: core-site.xml
单位:分钟
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
没有回收站
日志:
18/04/09 21:35:40 INFO fs.TrashPolicyDefault: Namenode trash configuration: Deletion interval = 0 minutes, Emptier interval = 0 minutes.
Deleted /tools ---> 成功删除(对比:回收站)
回收站
Moved: 'hdfs://bigdata111:9000/tools/a.zip' to trash at: hdfs://bigdata111:9000/user/root/.Trash/Current
HDFS回收站的本质:ctrl +x 移动到一个隐藏目录
查看回收站
hdfs dfs -lsr /user/root/.Trash/Current
从回收站中恢复
hdfs dfs -cp /user/root/.Trash/Current/tools/a.zip /tools
[-expunge] 清空回收站
2、快照:snapshot(是一种备份)
本质:cp命令
管理命令
[-allowSnapshot <snapshotDir>]
[-disallowSnapshot <snapshotDir>]
操作命令
[-createSnapshot <snapshotDir> [<snapshotName>]]
[-deleteSnapshot <snapshotDir> <snapshotName>]
[-renameSnapshot <snapshotDir> <oldName> <newName>]
(*) 默认禁用
(*) 针对目录开启快照
hdfs dfsadmin -allowSnapshot /students
(*) 创建一个备份
hdfs dfs -createSnapshot /students backup_student_0411_01
日志:Created snapshot /students/.snapshot/backup_student_0411_01
hdfs dfs -put student03.txt /students
hdfs dfs -createSnapshot /students backup_student_0411_02
(*) 对比快照
hdfs snapshotDiff /students backup_student_0411_01 backup_student_0411_02
M .
+ ./student03.txt
hdfs lsSnapshottableDir
通过网页查看
(*)恢复快照
hdfs dfs -cp /input/.snapshot/backup_input_01/data.txt /input
补充:Oracle数据库快照: 一般做异步更新
create snapshot aaaa as 子查询 更新时间
Oracle数据库备份
exp、expdp、数据泵 ----> 逻辑备份 导出数据
rman: recovery manager
3、配额(quota)
(1)名称配额: 限制某个目录下,文件的个数
[-setQuota <quota> <dirname>...<dirname>]
[-clrQuota <dirname>...<dirname>]
hdfs dfs -mkdir /folder1
hdfs dfsadmin -setQuota 3 /folder1
实际是:N-1
(2)空间配额: 限制某个目录下,文件的大小
[-setSpaceQuota <quota> [-storageType <storagetype>] <dirname>...<dirname>]
[-clrSpaceQuota [-storageType <storagetype>] <dirname>...<dirname>]
hdfs dfs -mkdir /folder2
设置空间配额:1M
hdfs dfsadmin -setSpaceQuota 1M /folder2
错误:
The DiskSpace quota of /folder2 is exceeded: quota = 1048576 B = 1 MB but diskspace consumed = 134217728 B = 128 MB
注意:设置的值一定不能小于128M
4、安全模式:safemode
5、简介:HDFS的集群
(1)联盟Federation
(2)HA