UDF 全称为 User Defined Function,即用户自定义函数。MaxCompute 提供很多内建函数来满足您的计算需求,同时您还可以通过创建自定义函数来满足不同的计算需求。UDF 在使用上与普通的 内建函数 类似,Java 和 MaxCompute 的数据类型的对应关系,请参见 参数与返回值类型。
1、用户编写自定义函数
package com.lh.udf;
import org.apache.hadoop.hive.ql.exec.Description;
import org.apache.hadoop.hive.ql.exec.UDF;
/**
* 用户自定义函数
*
* 需求:传2-3个参数,返回相加的结果
*
* */
@Description(name="add",
value = "addTest(int a,int b)=====> return a+b"
)
public class MyUDF extends UDF {
public int evaluate(int v1,int v2){
return v1+v2;
}
public int evaluate1(int v1,int v2,int v3){
return v1+v2+v3;
}
}
2、导出jar包
由于不用main方法可直接导出!!!!
3、把jar包上传到linux集群上(可以指定目录)
4、把jar包添加到hive中
5、创建临时函数
6、查询函数是否创建成功
7、使用函数