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

Improve the function system to allow other function implementation types

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 0.10.0, block_iteration
    • Function/UDF
    • 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

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

              Dates

                Created:
                Updated:
                Resolved:

                Slack

                  Issue deployment