Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-7842

Add compaction policy that explores more storefile groups



    • New Feature
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.98.0, 0.95.1
    • Compaction
    • None
    • Reviewed
    • Default compaction policy has been changed to a new policy that will explore more groups of files and is more strict about enforcing the size ratio requirements.


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


      • 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.


        1. HBASE-7842-0.patch
          9 kB
          Elliott Neil Clark
        2. HBASE-7842-2.patch
          8 kB
          Elliott Neil Clark
        3. HBASE-7842-3.patch
          8 kB
          Elliott Neil Clark
        4. HBASE-7842-4.patch
          8 kB
          Elliott Neil Clark
        5. HBASE-7842-5.patch
          8 kB
          Elliott Neil Clark
        6. HBASE-7842-6.patch
          48 kB
          Elliott Neil Clark
        7. HBASE-7842-7.patch
          48 kB
          Elliott Neil Clark
        8. HBASE-7842-ADD.patch
          2 kB
          Elliott Neil Clark

        Issue Links



              eclark Elliott Neil Clark
              eclark Elliott Neil Clark
              0 Vote for this issue
              14 Start watching this issue