Hadoop版本:2.7.3 Datanodes:32 BlockSize:512米 复制:3
我使用该命令清除了HDFS中的所有数据
hdfs dfs -rm -r /*
清除HDFS群集后,很少数据节点仍显示Block pool used
,但块为零。
hdfs fsck /
的输出如下
Connecting to namenode via http://ip-10-0-2-7:50070/fsck?ugi=ubuntu&path=%2F
FSCK started by ubuntu (auth:SIMPLE) from /10.0.2.7 for path / at Tue Jul 18 04:34:19 UTC 2017
Status: HEALTHY
Total size: 0 B
Total dirs: 1
Total files: 0
Total symlinks: 0
Total blocks (validated): 0
Minimally replicated blocks: 0
Over-replicated blocks: 0
Under-replicated blocks: 0
Mis-replicated blocks: 0
Default replication factor: 3
Average block replication: 0.0
Corrupt blocks: 0
Missing replicas: 0
Number of data-nodes: 32
Number of racks: 1
FSCK ended at Tue Jul 18 04:34:19 UTC 2017 in 1 milliseconds
The filesystem under path '/' is HEALTHY
我知道块删除是异步过程,但是Block Pool Used
未设置为0的数据节点需要花费大量时间来释放块。
任何人都可以帮我弄清楚,为什么在这些服务器上,块删除速度很慢,或者因为正在使用这些块而导致任何其他问题。
答案 0 :(得分:0)
有几个可能的原因:
hdfs dfsadmin -rollingUpgrade
。之后,DataNodes将开始删除块文件(异步)。hdfs fsck
参数运行-includeSnapshots
可以显示是否正在使用快照。