You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "Matt Foley (JIRA)" <ji...@apache.org> on 2011/03/31 07:20:06 UTC

[jira] [Commented] (HDFS-1070) Speedup NameNode image loading and saving by storing local file names

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

Matt Foley commented on HDFS-1070:
----------------------------------

Hi Hairong, the speedups you measured with this patch are very impressive.  It would be great to have it included in the system.

The patch still applied successfully to current trunk when I tried it.  So can you please go ahead and "submit patch" so we see how it does with test-patch?  And I'll review it, and try to get someone else to also.  Thanks!

> Speedup NameNode image loading and saving by storing local file names
> ---------------------------------------------------------------------
>
>                 Key: HDFS-1070
>                 URL: https://issues.apache.org/jira/browse/HDFS-1070
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: name-node
>            Reporter: Hairong Kuang
>            Assignee: Hairong Kuang
>         Attachments: trunkLocalNameImage.patch, trunkLocalNameImage1.patch, trunkLocalNameImage3.patch, trunkLocalNameImage4.patch, trunkLocalNameImage5.patch
>
>
> Currently each inode stores its full path in the fsimage. I'd propose to store the local name instead. In order for each inode to identify its parent, all inodes in a directory tree are stored in the image in in-order. This proposal also requires each directory stores the number of its children in image.
> This proposal would bring a few benefits as pointed below and therefore speedup the image loading and saving.
> # Remove the overhead of converting java-UTF8 encoded local name to string-represented full path then to UTF8 encoded full path when saving to an image and vice versa when loading the image.
> # Remove the overhead of traversing the full path when inserting the inode to its parent inode.
> # Reduce the number of temporary java objects during the process of image loading or saving and  therefore reduce the GC overhead.
> # Reduce the size of an image.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira