怎么将hive自定义UDAF函数永久加载到hive里

孤雨 2013-10-13 12:45:45
按网上很多一致的说法步骤如下:
添加函数自定义方法文件$HIVE_HOME/src/ql/src/java/org/apache/hadoop/hive/ql/udf/UDAFFunction.java
修改$HIVE_HOME/src/ql/src/java/org/apache/hadoop/hive/ql/exec/FunctionRegistry.java文件
import org.apache.hadoop.hive.ql.udf.UDAFFunction;
registerUDF(“method”, UDAFFunction.class,false)或是registerGenericUDAF(“method”,new UDAFFunction());
都未能成功。show functions并没有。如果使用临时注册函数方法可以使用。
我的实现的UDAF函数是直接下载hive的udaf的一些内置函数源码修改的。

注:由于是刚接触hive,所以有些疑问。发现这里面并没有class文件,重启hive会自动编译生成吗。还是需要导入jar包,但是手动导入jar包后,也不能用。求哪位成功加入的大神解答。
...全文
923 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
重新编译下hive源码的QL包 新增org.apache.hadoop.hive.ql.udf.yourClass
zuochanxiaoheshang 2013-10-13
  • 打赏
  • 举报
回复
临时加载: 1.首先添加jar包。hive> ADD JAR /dir/dir/*****.jar; 2.创建函数hive> CREATE TEMPORARY FUNCTION myfunction AS 'com.example.MyFunction'; 永久加载: 在.hiverc文件中添加相关语句

20,809

社区成员

发帖
与我相关
我的任务
社区描述
Hadoop生态大数据交流社区,致力于有Hadoop,hive,Spark,Hbase,Flink,ClickHouse,Kafka,数据仓库,大数据集群运维技术分享和交流等。致力于收集优质的博客
社区管理员
  • 分布式计算/Hadoop社区
  • 涤生大数据
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧