
下面我们将给出一个完整的开发 UDF 流程示例,例如,实现一个字符小写转换功能的 UDF,需要经过以下几个步骤:
package org.alidata.odps.udf.examples;
import com.aliyun.odps.udf.UDF;
public final class Lower extends UDF{
public String evaluate(String s){
if(s==null){
return s.toLowerCase();
}
}
}
将这个 jar 包命名为“my_lower.jar”。
添加资源:在运行 UDF 之前,必须指定引用的 UDF 代码 。用户代码通过资源的形式添加到 MaxCompute 中 。Java UDF 必须被打成 jar 包,以 jar 资源添加到 MaxCompute 中,UDF 框架会自动加载 jar 包,运行用户自定义的 UDF 。
add jar my_lower.jar;
CREATE FUNCTION test_lower AS org.alidata.odps.udf.examples.Lower USING my_lower.jar;
在sql中使用此函数:
select test_lower('A') from my_test_table;