Uploaded image for project: 'Tajo'
  1. Tajo
  2. TAJO-1092

Improve the function system to allow other function implementation types

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.10.0, block_iteration
    • Component/s: Function/UDF
    • Labels:
      None

      Description

      In the current function system, each function implementation is a single Java class subclassed from org.apache.tajo.catalog.function.Function.

      In this approach, there are many rooms for improvement. This approach always uses Datum as input and output values of functions, creating unnecessary objects. It does not likely to exploit given information included query statements; for example, some parameters are constants or variables.

      In this issue, I propose the improvement to allow the function system to support other function implementation types. In addition, I propose three function implementation types:

      • legacy Java class function provided by the current Tajo
      • static method in Java class
      • code generation by ASM

      Later, we could expand this feature to allow Pig or Hive functions in Tajo.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                hyunsik Hyunsik Choi
                Reporter:
                hyunsik Hyunsik Choi
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: