You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Elliott Clark (JIRA)" <ji...@apache.org> on 2013/02/14 01:22:12 UTC

[jira] [Created] (HBASE-7842) Add compaction policy that explores more storefile groups

Elliott Clark created HBASE-7842:
------------------------------------

             Summary: Add compaction policy that explores more storefile groups
                 Key: HBASE-7842
                 URL: https://issues.apache.org/jira/browse/HBASE-7842
             Project: HBase
          Issue Type: New Feature
          Components: Compaction
    Affects Versions: 0.96.0
            Reporter: Elliott Clark
            Assignee: Elliott Clark


Some workloads that are not as stable can have compactions that are too large or too small using the current storefile selection algorithm.

Currently:

* Find the first file that Size(fi) <= Sum(0, i-1, FileSize(fx))
* Ensure that there are the min number of files (if there aren't then bail out)
* If there are too many files keep the larger ones.


I would propose something like:

* Find all sets of storefiles where every file satisfies 
** FileSize(fi) <= Sum(0, i-1, FileSize(fx))
** Num files in set =< max
** Num Files in set >= min
* Then pick the set of files that maximizes ((# storefiles in set) / Sum(FileSize(fx)))

The thinking is that the above algorithm is pretty easy reason about, all files satisfy the ratio, and should rewrite the least amount of data to get the biggest impact in seeks.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira