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

chenxu commented on HBASE-22888:
--------------------------------

The following changes have been made
(1) make BlockIndexReader Stateless, so we share it between readers
(2) share the FixedFileTrailer between readers
(3) do computeHDFSBlocksDistribution in pread reader only
The performance improvement of Scan is obvious in our test env

> Use separate classe to deal with streaming read and pread
> ---------------------------------------------------------
>
>                 Key: HBASE-22888
>                 URL: https://issues.apache.org/jira/browse/HBASE-22888
>             Project: HBase
>          Issue Type: Improvement
>    Affects Versions: 2.0.0
>            Reporter: chenxu
>            Assignee: chenxu
>            Priority: Major
>
> When switching pread to stream read, new HFileReaderImpl will be create, but 
> the two different readers do not share informations with each other. maybe we 
> can divide HFileReaderImpl into two different class, such as HFilePreadReader 
> and HFileStreamReader. When constructing HFileStreamReader, it will copy some 
> stuffs (fileInfo, index, etc) from an already existing Reader, and no need to 
> do prefetch operations.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

Reply via email to