You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "binlijin (JIRA)" <ji...@apache.org> on 2016/12/01 02:54:58 UTC

[jira] [Updated] (HBASE-16398) optimize HRegion computeHDFSBlocksDistribution

     [ https://issues.apache.org/jira/browse/HBASE-16398?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

binlijin updated HBASE-16398:
-----------------------------
    Attachment: HBASE-16398_v2.patch

> optimize HRegion computeHDFSBlocksDistribution
> ----------------------------------------------
>
>                 Key: HBASE-16398
>                 URL: https://issues.apache.org/jira/browse/HBASE-16398
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: binlijin
>            Assignee: binlijin
>         Attachments: HBASE-16398.patch, HBASE-16398_v2.patch, LocatedBlockStatusComparison.java
>
>
> First i assume there is no reference and link in a region family's directory. 
> Without the patch to computeHDFSBlocksDistribution for a region family, there is 1+2*N rpc call, N is hfile numbers, The first rpc call is to DistributedFileSystem#listStatus to get hfiles, for every hfile there is two rpc call DistributedFileSystem#getFileStatus(path) and then DistributedFileSystem#getFileBlockLocations(status, start, length).
> With the patch to computeHDFSBlocksDistribution for a region family, there is 2 rpc call, they are DistributedFileSystem#getFileStatus(path) and  DistributedFileSystem#listLocatedStatus(final Path p, final PathFilter filter).
> So if there is at least one hfile, with the patch, the rpc call will less.



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