1 fs.trash.interval
vim core-site.xml
<property>
<name>fs.trash.interval</name>
<value>360</value>
</property>
<property>
<name>fs.trash.checkpoint.interval</name>
<value>360</value>
</property>
#fs.trash.interval 是文件被move到trash的这个目录下面,而并未立即被删。等到回收周期360分钟到了hdfs才会将数据删除。默认的单位是分钟;fs.trash.checkpoint.interval则是指垃圾回收的检查间隔,应<=fs.trash.interval。
#官方文档:
http://hadoop.apache.org/docs/r2.8.4/hadoop-project-dist/hadoop-common/core-default.xml
[root@node104 ~]# hdfs dfs -ls /user/root/.Trash/Current
Found 1 items
drwx------ - root hdfs 0 2021-04-22 14:00 /user/root/.Trash/Current/warehouse
2 恢复误删除的文件
[hadoop@hadoop000 ~]$ hdfs dfs -mv /user/root/.Trash/Current/test.log /test.log
3 hdfs上的日志文件清理
[root@node117 ~]# hadoop fs -du -h /
22.9 M 68.6 M /app-logs
311.8 M 5.4 G /apps
0 0 /ats
5.2 M 15.5 M /atsv2
1.3 G 3.8 G /hdp
0 0 /livy2-recovery
0 0 /mapred
19.5 M 58.5 M /mr-history
0 0 /root
298.6 M 895.8 M /spark-yarn
1.4 G 4.1 G /spark2-history
358.5 M 1.1 G /tmp
124.8 M 374.4 M /user
19.9 G 60.5 G /warehouse
说明:
1 第一列是单个文件大小。第二列是 单个文件大小*备份副本数。第三列是目录名。
2 一般手动二种方法可以一次性清理。一是hdfs -rmr ,另外是上面截图里图形化操作(强力推荐)。
3 hdfs文件副本数调整
[root@node117 ~]# hdfs dfs -du -h /
226.4 M 679.1 M /app-logs
263.5 G 265.3 G /apps
0 0 /ats
5.2 M 5.2 M /atsv2
1.3 G 1.3 G /hdp
0 0 /livy2-recovery
0 0 /mapred
15.9 M 21.3 M /mr-history
0 0 /root
298.6 M 298.6 M /spark-yarn
909.9 M 2.7 G /spark2-history
433.3 M 583.0 M /tmp
192.4 M 332.9 M /user
19.7 G 59.9 G /warehouse
[root@node104 ~]# hdfs dfs -setrep -R -w 1 /apps
[root@node117 ~]# hdfs dfs -du -h /
226.8 M 680.4 M /app-logs
261.7 G 266.9 G /apps
0 0 /ats
5.2 M 5.2 M /atsv2
1.3 G 1.3 G /hdp
0 0 /livy2-recovery
0 0 /mapred
15.9 M 21.3 M /mr-history
0 0 /root
298.6 M 298.6 M /spark-yarn
934.3 M 3.9 G /spark2-history
743.8 M 3.0 G /tmp
193.0 M 334.6 M /user
19.7 G 59.9 G /warehouse
4 HBase修改table压缩格式
- hbase shell命令使其:
`disable 'table_name'`
- 修改表的压缩格式:
`alter 'table_name' , NAME => '列族名' , COMPRESSION => 'snappy'`
- 再enable表:
`enable 'table_name'`
- 还需要一个动作:
`major_compact 'table_name'`
- 建错的列族可以删除:
`alter 'table_name' , {NAME=> '列族名' , METHOD=> 'delete' }`