以创建转换字符串大小写为例:
1、搭建java项目,把hive安装包下libjar包添加进去。
2、创建转换字符串大小类,必须继承UDF类
package com.zsy.hive.udf;
import org.apache.commons.lang.StringUtils;
import org.apache.hadoop.hive.ql.exec.UDF;
/**
* 转换小写或者大写
*
* @author zhaoshouyun
*
*/
public class TolowerOrUpperCase extends UDF {
/**
*
* @param field 字段名
* @param i 0大写 1小写 , 默认小写
* @return
*/
public String evaluate(String val, int i) {
if (StringUtils.isBlank(val)) {
return "";
} else if (i == 0) {
return val.toUpperCase();
} else {
return val.toLowerCase();
}
}
}
第三,导出jar
第四,上传到hive所在的服务器上,并在hive命令行执行加载jar命令:
add JAR /home/hadoop/udf.jar;
第五,创建hive函数,create temporary function toLowOrUpper as 'com.zsy.hive.udf.TolowerOrUpperCase';
第六,测试自定义函数
总结:其他函数,基本上用这个模板即可
---------------------
【转载】
作者:云游遍天下
原文:https://blog.csdn.net/u011410254/article/details/83244374
|
|