0

在删除超过 60 天的日志的例行日志修剪作业中,系统管理员将 CDH 从 4.3 升级到 4.6,(我知道,我知道)...

通常,日志修剪作业会释放大约 40% 的 HDFS 可用存储空间。然而,在升级过程中,datanodes 宕机了,被重启了,各种疯狂。

据了解,HDFS 收到了删除命令,因为 HDFS 文件/文件夹不再存在,但磁盘利用率仍然没有变化。

我的问题是,HDFS 是否可以从 NameNode 的元数据中删除文件,而不实际完成 DataNode 之间的文件块删除,从而有效地孤立文件块?

4

1 回答 1

0

我认为namenode告诉datanode删除孤立的块,一旦它得到他们持有的块的报告并且它注意到其中一些不属于任何文件。

如果您不想删除这些块,可以将系统置于安全模式并尝试手动查看磁盘并复制数据。没有自动执行此操作的方法,但将来可能会添加一个列出孤立块的工具(如本JIRA中所建议的那样)。

此外,您可以尝试使用 Hadoop 的fsck检查名称系统的运行状况。

于 2013-07-18T19:53:26.817 回答