hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "huaxiang sun (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-18693) adding an option to restore_snapshot to move mob files from archive dir to working dir
Date Tue, 29 Aug 2017 06:24:00 GMT

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

huaxiang sun commented on HBASE-18693:

Thanks [~jingcheng.du]. hdfs move() is a very light operation. I browsed the source code and
also looked at https://stackoverflow.com/questions/34512596/how-does-hdfs-mv-command-work.
As far as I understand, it only involves name node and no real data operation is performed.
Skip hFileLink may not work as some mob hFileLinks need to be compacted to reduce file number
in the directory. If these HFileLinks are compacted always, this will cause lots of unnecessary
IOs as mob files will be created. Please share your thoughts, thanks.

> adding an option to restore_snapshot to move mob files from archive dir to working dir
> --------------------------------------------------------------------------------------
>                 Key: HBASE-18693
>                 URL: https://issues.apache.org/jira/browse/HBASE-18693
>             Project: HBase
>          Issue Type: Improvement
>          Components: mob
>    Affects Versions: 2.0.0-alpha-2
>            Reporter: huaxiang sun
>            Assignee: huaxiang sun
> Today, there is a single mob region where mob files for all user regions are saved. There
could be many files (one million) in a single mob directory. When one mob table is restored
or cloned from snapshot, links are created for these mob files. This creates a scaling issue
for mob compaction. In mob compaction's select() logic, for each hFileLink, it needs to call
NN's getFileStatus() to get the size of the linked hfile. Assume that one such call takes
20ms, 20ms * 1000000 = 6 hours. 
> To avoid this overhead, we want to add an option so that restore_snapshot can move mob
files from archive dir to working dir. clone_snapshot is more complicated as it can clone
a snapshot to a different table so moving that can destroy the snapshot. No option will be
added for clone_snapshot.

This message was sent by Atlassian JIRA

View raw message