hive编译源码支持自定义UDF函数
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,在工作中,我们需要用到自定义UDF函数:1.可以创建持久函数2.也可以将其编译在源码中本文档以源码编译的方式使用,下面为编译步骤;下载源码包wget http://archive.cloudera.c
千家信息网最后更新 2025年02月01日hive编译源码支持自定义UDF函数
在工作中,我们需要用到自定义UDF函数:
1.可以创建持久函数
2.也可以将其编译在源码中
本文档以源码编译的方式使用,下面为编译步骤;
下载源码包
wget http://archive.cloudera.com/cdh6/cdh/5/hive-1.1.0-cdh6.7.0-src.tar.gztar xf hive-1.1.0-cdh6.7.0-src.tar.gzcd hive-1.1.0-cdh6.7.0/
进入UDF代码的目录
cd ql/src/java/org/apache/hadoop/hive/ql/udf/------这里我们可以看到好多的UDF代码,以UDFXXX.java开头
将UDF的代码上面的目录下
helloUDF.javapackage com.ruozedata.hadoop.udf;import org.apache.hadoop.hive.ql.exec.UDF;public class HelloUDF extends UDF{ public String evaluate(String input) { //TODO...此处为开发业务逻辑的地方 return "Hello:" + input; } //下面为测试代码 public static void main(String[] args) { HelloUDF udf = new HelloUDF(); String output = udf.evaluate("测试数据"); System.out.println(output); }}
在源代码中注册自定义的UDF函数
cd ql/src/java/org/apache/hadoop/hive/ql/exec/#vim FunctionRegistry.javaimport org.apache.hadoop.hive.ql.udf.HelloUDF;
在176行增加如下内容
system.registerUDF("HelloUDF", HelloUDF.class,false);
编译hive
[root@hadoop001 exec]# pwd/opt/sourcecode/hive-1.1.0-cdh6.7.0[root@hadoop001 hive-1.1.0-cdh6.7.0]#mvn clean package -DskipTests -Phadoop-2 -Pdist
编译后的文件为:
1.packaging/target/apache-hive-1.1.0-cdh6.7.0-bin.tar.gz
2. ./lib/hive-exec-1.1.0-cdh6.7.0.jar
使用方式
方式一:将apache-hive-1.1.0-cdh6.7.0-bin.tar.gz重新部署
方式二:将编译后的/lib/hive-exec-1.1.0-cdh6.7.0.jar复制到${HIVE_HOME}/lib/目录下
编译
代码
方式
函数
源码
目录
测试
业务
内容
地方
开头
数据
文件
步骤
源代码
逻辑
面的
工作
开发
支持
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
u8 数据库不符合
网络安全公司工资待遇
服务器20防护
广州服务器电源工厂
服务器配置与管理课程设计
个性特长专业计算机网络技术
网络安全法48条
上海运行智慧医院软件开发
江津区易推网络技术中心
长宁区正规软件开发市场
服务器屏幕点不亮怎么回事
龙族幻想在哪个服务器上
浙江软件开发大概多少价格
软件开发部部门经理季度汇报
电子商务发展需要的网络技术
校园网络安全论文选题
如何避免电脑清除数据库
如何填写数据库信息表
服务器raid5配置
聊天软件数据库设计
中东国家网络安全
数据库非负数怎么设置
网络安全专项组
山东大学网络安全专业评级
泰和网络技术有限公司
长城宽带服务器无响应
石家庄小班软件开发培训学校
财务信息化开发服务器
浙江互联网软件开发哪家可靠
软件开发销售没有进项怎么办