[ 
https://issues.apache.org/jira/browse/HDFS-8710?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14613014#comment-14613014
 ] 

Xinwei Qin  commented on HDFS-8710:
-----------------------------------

[~aw], thanks for your comment.
The du value will be recalculated after 600 seconds, we don't need to 
calculated a precise value on startup. The current project cannot also 
recalculate du value when the disk structure changed if the {{dfsUsed}} value 
is less than 600 seconds old.

In a large cluster, the DU can even cost several or tens of minutes, which 
slows down startup speed of  the whole cluster, so quick startup is necessary. 
Maybe always skip DU is radical, add a quick-restart configuration(default is 
true to skip DU) for datanode is more reasonable, when disk structure is 
changed, user can turn off quick-restart configuration to trigger DU to 
recalculate dfsused value. Any thoughts?

> Always read DU value from the cached "dfsUsed" file on datanode startup
> -----------------------------------------------------------------------
>
>                 Key: HDFS-8710
>                 URL: https://issues.apache.org/jira/browse/HDFS-8710
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>            Reporter: Xinwei Qin 
>            Assignee: Xinwei Qin 
>         Attachments: HDFS-8710.001.patch
>
>
> Currently, DataNode will cache DU value in "dfsUsed" file termly. When 
> DataNode starts or restarts, it will read in the cached DU value from 
> "dfsUsed" file if the value is less than 600 seconds old, otherwise, it will 
> run DU command, which is a very time-consuming operation(may up to dozens of 
> minutes) when DataNode has huge number of blocks.
> Since slight imprecision of dfsUsed is not critical, and the DU value will be 
> updated every 600 seconds (the default DU interval) after DataNode started, 
> we can always read DU value from the cached file (Regardless of whether this 
> value is less than 600 seconds old or not) and skip DU operation on DataNode 
> startup to significantly shorten the startup time.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to