hadoop之non dfs used

最近总是被问到ambari上显示的磁盘上磁盘使用率上non dfs used是指什么,之前的回复都是“不是hdfs使用的空间,比如说系统linux本身文件占用的空间等”,朋友表示解释的不够准确。无意间看到一个老外在stackoverflow上写的例子,感觉还是很有道理的,表述如下:
“non dfs used”可以通过如下公式进行计算:

non dfs used = configured capacity - remaining space - reserved space

我认为还是有点小疑惑,之前看到有个配置,这个配置dfs.datanode.du.reserved说是预留给non dfs的空间。
所以,计算公式应该如下:

Non DFS used = ( Total Disk Space - Reserved Space) - Remaining Space - DFS Used

举个例子吧:
如果有100G磁盘,设置dfs.datanode.du.reserved这个值为30G,在该磁盘上系统和其他文件使用了40G,DFS使用了10GB。如果执行df -h,可以看到有效空间是50G.
在HDFS web 界面上,会看到
non dfs user=100(total)-30(reserved)-10(dfs used)-50(remaing)=10G.
所以实际上,你初始预留了30G给non dfs使用,70G给hdfs.然而,实际出来的non dfs使用超过了30G并且吃掉了属于hdfs的10g空间。
“non dfs used”应该这样子定义“how much configured dfs capacity are occupied by non dfs use”.不应该去计算为什么非dfs 在hadoop集群内部使用率是如此高。
可用用‘lsof|grep delete’,该命令可以帮你确认哪些已经打开的文件被删除了。有时候,hadoop的进程(例如hive/yarn/mapred/hdfs等)也会引用这些已经删除的文件。这些引用也会占用磁盘空间。可以用这个命令

du -hsx * | sort -rh | head -10

查看排行10的最大文件夹或是文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值