hive 自定义函数


 

1.编写java类,继承UDF,注意方法名需要覆盖evaluate方法.之前测试时发现方法名可以任意,后来发现还是不行,所以还是用evalute这个方法名吧

 1 import org.apache.hadoop.hive.ql.exec.UDF;
 2 
 3 public class MyLower extends UDF {
 4     
 5     public String evaluate (final String s) {
 6         
 7         if (s == null) {
 8             return null;
 9         }
10         
11         return s.toString().toLowerCase();
12     }
13 }

2.打成jar包上传到linux上

 

3,启动hive后进行关联

add jar /opt/module/data/jar/test.jar;

注意如果你想对jar替换,最好先delete jar xxx,直接add不会进行覆盖,这样你仍然使用的是旧的jar

 

4.创建函数

create temporary function test as "hive.MyLower";

as之后是你编写的类的全限定名称

 删除临时函数 drop temporary function xxx;

5.测试

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM