java hive自定义函数,添加 Hive 自定义函数

使用 Java 编写好 UDF 或 UDAF 函数后,Hive 要如何使用这些自定义函数呢?

1 在 HDFS 上创建存放 jar 包的目录

hadoop fs -mkdir -p /hive/private/lib

2 将打包好的 jar 包上传到创建好的目录下

hadoop fs -put gps_to_bd.jar /hive/private/lib

hadoop fs -ls /hive/private/lib # 查看是否上传成功

3 创建函数

Hive 函数分为两种:永久函数与临时函数

临时函数仅在当前会话有效。而永久函数添加一次之后即可永久使用。

创建函数时需要注意:

函数名需要是数据库名.函数名的形式

类名需要完整,即包名.类名

HDFS 上 jar 包的路径需要是全路径,即hdfs://...,并且数据库有权限访问该路径

3.1 永久函数

格式:CREATE FUNCTION '数据库名.函数名' AS '包名.类名' USING JAR 'HDFS全路径'

hive (hadoop)> CREATE FUNCTION hadoop.gps_to_bd AS 'cn.hive.Gps_to_Bd' USING JAR 'hdfs://ns1//hive/private/lib/gps_to_bd.jar';

3.2 临时函数

hive (hadoop)> add jar 'hdfs://ns1//hive/private/lib/gps_to_bd.jar';

hive (hadoop)> CREATE TEMPORARY FUNCTION hadoop.gps_to_bd AS 'cn.hive.Gps_to_Bd';

PS:如果函数名已经存在了,可以使用drop function db_name.fun_name删除创建好的函数。

4 验证函数

最后,别忘了根据函数的功能验证创建好的函数。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值