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

HTable#coprocessorExec always scan the whole table

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 0.94.1, 0.95.0, 0.95.2
    • Fix Version/s: 0.98.0, 0.94.8, 0.95.1
    • Component/s: Coprocessors
    • Labels:
      None
    • Hadoop Flags:
      Reviewed

      Description

      In current logic, HTable#coprocessorExec always scans the entire META table, loading it into memory and then filters the keys to return only those that fall in specified range. The version after the patch only scans the portions of meta that are in the specified key range, and returns them. Put simply – before we did a load-all-then-filter; afterwards we only-scan-what-is-needed.

      The former has low efficiency and greatly impacts the Regionserver carrying .META. when there are many coprocessorExec requests.

        Attachments

        1. hbase-6870v6.patch
          4 kB
          chunhui shen
        2. hbase-6870v5.patch
          7 kB
          chunhui shen
        3. HBASE-6870v3.patch
          6 kB
          chunhui shen
        4. HBASE-6870v2.patch
          5 kB
          chunhui shen
        5. HBASE-6870-testPerformance.patch
          3 kB
          chunhui shen
        6. HBASE-6870.patch
          6 kB
          chunhui shen
        7. hbase-0.95-6870v6.patch
          4 kB
          chunhui shen
        8. hbase-0.94-6870v6.patch
          4 kB
          chunhui shen
        9. 6870-v4.txt
          7 kB
          Ted Yu

          Issue Links

            Activity

              People

              • Assignee:
                zjushch chunhui shen
                Reporter:
                zjushch chunhui shen
              • Votes:
                0 Vote for this issue
                Watchers:
                14 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: