Apache Tajo поддерживает пользовательские / пользовательские функции (UDF). Пользовательские функции могут быть созданы в Python.
Пользовательские функции — это просто простые функции Python с декоратором «@output_type (<tajo sql datatype>)» следующим образом:
@ouput_type(“integer”) def sum_py(a, b): return a + b;
Сценарии python с пользовательскими функциями можно зарегистрировать, добавив приведенную ниже конфигурацию в «tajosite.xml» .
<property> <name>tajo.function.python.code-dir</name> <value>file:///path/to/script1.py,file:///path/to/script2.py</value> </property>
После регистрации сценариев перезапустите кластер, и пользовательские функции будут доступны прямо в запросе SQL следующим образом:
select sum_py(10, 10) as pyfn;
Apache Tajo также поддерживает определенные пользователем агрегатные функции, но не поддерживает определенные пользователем оконные функции.