我正在尝试在hadoop hdfs中加载我们的数据。在一些测试运行之后,当检查hadoop web ui时,我意识到在标题下消耗了大量空间"非DFS使用"。事实上,"非DFS使用"超过" DFS使用"。因此,几乎一半的群集都被非DFS数据消耗。
即使重新格式化namenode并重新启动,这个"非DFS"空间没有被释放。
此外,我无法找到这个"非DFS"的目录。存储数据,以便我可以手动删除这些文件。
我在网上阅读了很多线索,但是没有人得到明确的答案。
是否很难清空这个"非DFS"空间?或者我应该不删除它?我怎样才能释放这个空间?
答案 0 :(得分:4)
在HDFS中,非DFS是数据节点中的存储,未被hdfs数据占用。
查看datanode hdfs-site.xml
,在属性中设置的目录 dfs.data.dir 或 dfs.datanode.data.dir 将用于DFS。 datanode中所有其他使用的存储将被视为非DFS存储。
您可以通过从datanode计算机中删除任何不需要的文件来释放它,例如hadoop日志,任何非hadoop相关文件(磁盘上的其他信息)等。使用任何hadoop命令都无法完成。
使用的非DFS使用以下公式
计算非DFS使用=(总磁盘空间 - 保留空间) - 剩余空间 - 使用DFS
在下面找到类似的问题,
答案 1 :(得分:0)
我现在面临同样的问题一段时间了,我的非DFS使用率达到了大约13TB!我为YARN,TEZ,MR2等尝试了很多重新配置但没有成功。相反,使用量不断增加,我的群集使用率几乎达到了90%。这反过来导致在运行我的脚本时出现很多顶点故障,并在配置系统时重新尝试(失败)。
虽然对我有用(有趣的故事),只是简单地重新启动Ambari的所有数据节点!它将非DFS使用率从13TB降至略高于6TB。我的资源管理器已经运行了大约160天,我猜测重新启动数据节点可能只是清除了日志文件。