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

Andrew Kyle Purtell commented on HBASE-27049:
---------------------------------------------

The development of an HFile v4 could be beneficial for a number of reasons:

- It would let us improve the hfile block header structure. It should be 
converted into protobuf encoded structures. Or keep the header a simple fixed 
structure and add a footer that is protobuf encoded. Then in the future we 
could make some types of changes without breaking readers. Developer effort 
would be lower too, a change would involve updating the proto file and a few 
lines of code. Today the same type of change would require updating many lines 
of code.
- It would open a window for improving efficiency of compression and 
encryption. If the binary output must change as a result, fine, it's a new file 
format already. I realize it is a larger scope that what you are thinking now 
[~chenfengge] but your concerns fit in here.
- It would let us introduce to the HFile some modern features of database data 
files like counts and statistics, as a new type of meta block. 
- Currently HFiles have indexes optimized for binary search but could 
consider/support alternate indexes like compressed bitmaps.

> Decrease memory copy when decompress data
> -----------------------------------------
>
>                 Key: HBASE-27049
>                 URL: https://issues.apache.org/jira/browse/HBASE-27049
>             Project: HBase
>          Issue Type: Improvement
>          Components: regionserver
>            Reporter: chenfengge
>            Priority: Minor
>
> HBase RegionServer use createDecompressionStream in class 
> org.apache.hadoop.hbase.io.compress.Compression, which cause extra memory 
> copy during decompression.We can offer interface for block decompression, 
> like "void decompress(ByteBuff src, ByteBuff dst);", and offer default 
> implementation for all algorithms.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to