gpt4 book ai didi

hadoop - Non DFS Used 到底是什么意思?

转载 作者:可可西里 更新时间:2023-11-01 14:07:46 29 4
gpt4 key购买 nike

这是最近在Web UI上看到的

 Configured Capacity     :   232.5 GB
DFS Used : 112.44 GB
Non DFS Used : 119.46 GB
DFS Remaining : 613.88 MB
DFS Used% : 48.36 %
DFS Remaining% : 0.26 %

我很困惑,非dfs Used占用了一半以上的容量,

我认为这意味着一半的 hadoop 存储被浪费了

在浪费了无意义的时间搜索之后,我只是格式化了namenode,然后从头开始。

然后我从本地复制了一个巨大的文本文件(大约19GB)到HDFS(成功)。

现在 UI 显示

Configured Capacity  :   232.5 GB
DFS Used : 38.52 GB
Non DFS Used : 45.35 GB
DFS Remaining : 148.62 GB
DFS Used% : 16.57 %
DFS Remaining% : 63.92 %

复制前,DFS Used和Non DFS Used均为0。

因为使用的 DFS 大约是原始文本文件大小的两倍,而且我配置了 2 个副本,

我猜 DFS Used 是由 original 和 meta 的 2 个副本组成的。

但我仍然不知道 Non DFS Used 从何而来,为什么它占用的容量比 DFS Used 多。

发生了什么事?我弄错了吗?

最佳答案

“未使用 DFS”的计算公式如下:

未使用 DFS = 配置容量 - 剩余空间 - 使用 DFS

它仍然令人困惑,至少对我而言。

因为配置容量 = 总磁盘空间 - 预留空间。

所以使用的非 DFS =(总磁盘空间 - 保留空间)- 剩余空间 - 使用的 DFS

举个例子。假设我有 100 GB 的磁盘,我将保留空间 (dfs.datanode.du.reserved) 设置为 30 GB。

在磁盘中,系统和其他文件使用了 40 GB,DFS 使用了 10 GB。如果你运行 df -h,您将看到该磁盘卷的可用空间为 50GB。

在HDFS web UI中,会显示

未使用 DFS = 100GB(总计)- 30GB(保留)- 10GB(使用 DFS)- 50GB(剩余) = 10 GB

所以这实际上意味着,您最初配置为为非 dfs 使用保留 30G,为 HDFS 使用保留 70G。然而,事实证明非dfs使用超过了30G预留,吃掉了本应属于HDFS的10GB空间!

术语“未使用 DFS”确实应该重命名为类似“非 dfs 使用占用了多少已配置的 DFS 容量”

并且应该停止尝试弄清楚为什么非 dfs 在 hadoop 中的使用率如此之高。

一个有用的命令是 lsof | grep delete,这将帮助您识别那些已被删除的打开文件。有时,Hadoop 进程(如 hive、yarn、mapred 和 hdfs)可能会引用那些已删除的文件。而这些引用会占用磁盘空间。

还有 du -hsx * |排序-rh | head -10 帮助列出前十名最大的文件夹。

关于hadoop - Non DFS Used 到底是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18477983/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com