You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by Brahma Reddy Battula <br...@huawei.com> on 2016/03/28 06:26:16 UTC
[HDFS-9038] Non-Dfs used Calculation
Hi All,
Chris Nauroth / Arpit / Vinay and me discussing this calculation.
There is a disagreement on the definition of non-DFS used space, because of which Issue is not making progress.
Essentially, it's a question of whether this metric means "Raw Non-DFS Used" or "Unplanned Non-DFS Used".
Here is the summary of the conversation, by Arpit.
The pre HDFS-5215 calculation had two bugs.
1. It incorrectly subtracted reserved space from the non-DFS used. (net negative). Chris suggests this is not really an issue as non-DFS used should be shown as zero unless it exceeds the DFS reserved value.
2. It used File#getUsableSpace to calculate the volume free space instead of File#getFreeSpace. (net positive)
The net effect was that non-DFS used was displayed as zero unless the actual non-DFS used exceeded DFS reserved - system reserved.
HDFS-5215 fixed the first issue and the value that is now erroneously counted towards non-DFS used is in fact the system reserved 5%.
>From the testing it was found that, "Ext derivatives hold back 5% free space while XFS does not."
Proposed calculation to report the exact Non-DFS Usage:
non-DFS used = getCapacity() + reserved - getDfsUsed() - totalFreeSpace
= usage.getCapacity() - reserved + reserved - getDfsUsed() - totalFreeSpace
= usage.getCapacity() - getDfsUsed() - totalFreeSpace
= File#getTotalSpace - getDfsUsed() - File#getFreeSpace
Chris Nauroth thinks we should subtract "dfs.datanode.du.reserved" for non-dfs used because it allowed to monitor for unexpected non-zero non-DFS usage and react.
Even Akira given "+0" on above calculation.
We would like take inputs from you to see some progress on the issue.
Please let me know your thoughts on this issue.
Thanks
--Brahma Reddy Battula