Apache Tajo - Пользовательские функции

Apache Tajo поддерживает настраиваемые / определяемые пользователем функции (UDF). Пользовательские функции могут быть созданы на Python.

Пользовательские функции - это простые функции Python с декоратором. “@output_type(<tajo sql datatype>)” следующим образом -

@ouput_type(“integer”) 
def sum_py(a, b): 
   return a + b;

Скрипты python с UDF могут быть зарегистрированы, добавив приведенную ниже конфигурацию в “tajosite.xml”.

<property> 
   <name>tajo.function.python.code-dir</name> 
   <value>file:///path/to/script1.py,file:///path/to/script2.py</value> 
</property>

После регистрации сценариев перезапустите кластер, и UDF будут доступны прямо в запросе SQL следующим образом:

select sum_py(10, 10) as pyfn;

Apache Tajo также поддерживает определенные пользователем агрегатные функции, но не поддерживает определенные пользователем оконные функции.