Apache Tajo支持自定义/用户定义的函数(UDF).可以在python中创建自定义函数.
自定义函数只是普通的python函数,其中装饰器"@ output_type(< tajo sql datatype>)" as跟随 :
@ouput_type("integer") def sum_py(a, b): return a + b;
可以通过在"tajosite.xml"中添加以下配置来注册带有UDF的python脚本.
<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也支持用户定义的聚合函数,但不支持用户定义的窗口函数.