hive编译源码支持自定义UDF函数
发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,在工作中,我们需要用到自定义UDF函数:1.可以创建持久函数2.也可以将其编译在源码中本文档以源码编译的方式使用,下面为编译步骤;下载源码包wget http://archive.cloudera.c
千家信息网最后更新 2024年11月23日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安全错误
数据库的锁怎样保障安全
海南数据库安全箱工程
庆阳市国家网络安全宣传周
蓝孵互联网科技有限公司
阿合奇县融媒体中心网络安全
服务器虚拟化底层防护系统
团员电子数据库怎么审核
优麒麟适合软件开发吗
攀枝花高密度存储服务器厂家
农业银行软件开发面经
安徽益美丽家网络技术有限公司
杉泰健康科技有限公司互联网医疗
oa管理系统需要服务器
数据库用pfile启动
孝感索璞互联网科技有限公司
小学生网络安全法宣传材料
法院网络安全应对举措
籽岷的服务器小游戏
设备网络安全管理规定
怎样才能让服务器稳定
成都 手机软件开发
软件销售与软件开发增值税
软件开发项目验收需要初验吗
进口服务器机柜生产
宁夏手机软件开发报价
usbserver服务器
广东省电脑软件开发学校
揭阳软件开发公司前十
菏泽软件开发服务
天气显示不出数据库
昆仑通态带数据库么