[ 
https://issues.apache.org/jira/browse/HADOOP-713?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12542616
 ] 

dhruba borthakur commented on HADOOP-713:
-----------------------------------------

We experimented on a system that has 6 million files. A "du /" with recursion 
implemented on the namenode took less than 2 seconds. There was no measure-able 
change in CPU usage or GC on the nameode when this command was run.

A "lsr /" on the same cluster took 13 minutes. The CPU on the namenode 
increased from its normal of 4% to 10%. We saw garbage collection occuring but 
the Eden-Heap-Space on the namenode remained within its normal limits.

Given the above, I propose that we accept this patch into 0.15 and trunk so 
that the immediate performance bottleneck on the namenode is fixed. I will 
create a new JIRA that describes that du should be implemented at the namenode 
using one RPC call.



> dfs list operation is too expensive
> -----------------------------------
>
>                 Key: HADOOP-713
>                 URL: https://issues.apache.org/jira/browse/HADOOP-713
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: dfs
>    Affects Versions: 0.8.0
>            Reporter: Hairong Kuang
>            Assignee: dhruba borthakur
>            Priority: Blocker
>             Fix For: 0.15.1
>
>         Attachments: optimizeComputeContentLen.patch
>
>
> A list request to dfs returns an array of DFSFileInfo. A DFSFileInfo of a 
> directory contains a field called contentsLen, indicating its size  which 
> gets computed at the namenode side by resursively going through its subdirs. 
> At the same time, the whole dfs directory tree is locked.
> The list operation is used a lot by DFSClient for listing a directory, 
> getting a file's size and # of replicas, and getting the size of dfs. Only 
> the last operation needs the field contentsLen to be computed.
> To reduce its cost, we can add a flag to the list request. ContentsLen is 
> computed If the flag is set. By default, the flag is false.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to