Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-2000 Coprocessors
  3. HBASE-2001

Coprocessors: Colocate user code with regions



    • Sub-task
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.92.0
    • Coprocessors
    • None
    • Reviewed


      Support user code that runs run next to each region in table. As regions split and move, coprocessor code should automatically move also.

      Use classloader which looks on HDFS.

      Associate a list of classes to load with each table. Put this in HRI so it inherits from table but can be changed on a per region basis (so then those region specific changes can inherited by daughters).

      Not completely arbitrary code, should require implementation of an interface with callbacks for:

      • Open
      • Close
      • Split
      • Compact
      • (Multi)get and scanner next()
      • (Multi)put
      • (Multi)delete

      Add method to HTableInterface for invoking coprocessor methods and retrieving results.

      Add methods in o.a.h.h.regionserver or subpackage which implement convenience functions for coprocessor methods and consistent/controlled access to internals: store access, threading, persistent and ephemeral state, scratch storage, etc.

      GitHub: https://github.com/trendmicro/hbase/tree/coprocessor

      Please see the latest attached package-info.html for updated description.


        1. asm-transformations.pdf
          76 kB
          Andrew Kyle Purtell
        2. HBASE-2001.patch.gz
          23 kB
          Andrew Kyle Purtell
        3. HBASE-2001-RegionObserver.patch
          75 kB
          Andrew Kyle Purtell
        4. HBASE-2001-RegionObserver-2.patch
          85 kB
          Mingjie Lai
        5. packge-info.html
          12 kB
          Mingjie Lai
        6. packge-info.html
          13 kB
          Mingjie Lai
        7. packge-info.html
          13 kB
          Mingjie Lai
        8. HBase-2001-final.patch
          161 kB
          Mingjie Lai

        Issue Links



              mingjielai Mingjie Lai
              apurtell Andrew Kyle Purtell
              1 Vote for this issue
              20 Start watching this issue