[ 实现 ] Hive简单创建UDF

本文介绍了如何使用Maven创建Hive自定义函数(UDF),包括编写代码、打包、加载到Hive及调用的过程。重点讲解了三种类型的UDF:一进一出(UDF)、多进一出(UDAF)和一进多出(UDTF),并提供了具体实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


  

一、Hive自定义函数介绍:

  UDF:一进一出

  UDAF:多进一出,例如:countmaxmin

  UDTF:一进多出,例如:explode()

二、新建一个 Maven-quick start

在这里插入图片描述

参数修改

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

三、Maven依赖

<!-- hive-exec -->
<dependency>
  <groupId>org.apache.hive</groupId>
  <artifactId>hive-exec</artifactId>
  <version>1.1.0</version>
</dependency>

四、操作步骤

1.编辑UDF函数代码

import org.apache.hadoop.hive.ql.exec.UDF;
import java.util.UUID;

public class GeneratorUUID extends UDF {
    public String evaluxxate(){
        String uuid = UUID.randomUUID().toString().replaceAll("-","");
        return uuid;
    }
}

2.打包

  如果你为了最后文件名显示的比较规范,那你可以在 pom 文件里的 <build> 添加下方代码。

<finalName>uuidUDF</finalName>

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

3.Hive 添加 jar包

  • 启动服务
  • 将打好的 jar 包 上传至 linux
  • 启动 hive
add jar /opt/myudf.jar

在这里插入图片描述

4.创建/销毁临时函数

create temporary function guuid as 'com.nj.myudf.GeneratorUUID';
  • as 后面跟的是红框里的项目路径
    在这里插入图片描述

  • 创建完成
    在这里插入图片描述

  • 销毁函数

drop temporary function guuid;

5.调用函数

select guuid();

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值