Hive中实现自定义函数UDF及打包

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

Hive的UDF,其实很类似Mysql之类的自定义函数

不过它需要用java来编写,而不是用传统的SQL来完成

实现一个UDF的步骤如下:

  1. 实现一个Java Class,继承自UDF
  2. 打成jar包,并加入到Hive的ClassPath中
  3. 生成自定义函数,执行select
  4. 删除刚才创建的临时函数

下面这个UDF,是我给hive的array增加的一个函数

用来判断array中是否包含某个值,hive的标准函数中并没有此功能函数

package com.sohu.hadoop.hive.udf;
import java.util.*;
import org.apache.hadoop.hive.ql.exec.UDF;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.io.BooleanWritable;
import org.apache.hadoop.io.Text;   public final class ArrayContains extends UDF {   public BooleanWritable evaluate(ArrayList
 
   arr,Text ele)
    {
        BooleanWritable rtn = new BooleanWritable(false);
        if (arr == null || arr.size() < 1)
        {
            return rtn;
        }
        try {
            String cstr = ele.toString();   
            for (String str : arr)
            {
                if (str.equals(cstr))
                {
        
HIVE UDF函数开发流程 HIVE UDF函数开发流程。 阅读详情

相关推荐

Hive 自定义UDF函数

在使用hive中,有时要根据业务需求自定义一些函数,下面是自定义函数的步骤 1.新建一个maven项目,在项目的pom文件中引入依赖 <dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-exec</a...

muyingmiao的专栏 664

hive 学习系列四(用户自定义函数

如果入参是简单的数据类型,直接继承UDF实现一个或者多个evaluate 方法。 具体流程如下: 1,实现大写字符转换成小写字符的UDF package com.example.hive.udf; import org.apache.hadoop.hive.ql.exec.UDF; import org.apache.hadoop.io.Text; public class L...

一杯派蒙的博客 763

hive自定义函数UDF-其他实例参考

官网实例 : 实例1:自定义一个 大写转小写函数 第一步: idea创建maven项目,并在pom中添加依赖: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=...

不花的花和尚的博客 1359

Hive自定义UDF函数及使用

UDF全称:User-Defined Functions,即用户自定义函数,在Hive SQL编译成MapReduce任务时,执行java方法,类似于像MapReduce执行过程中加入一个插件,方便扩展。

小健的博客 5533

Hive之系统内置函数&自定义函数UDF、UDAF、UDTF)介绍和案例(附带完整代码)、IDEA运行Hive

1.1 系统内置函数 1.查看系统自带的函数 hive (default)> show functions; 2.显示自带的函数的用法 hive (default)> desc function upper; 3.详细显示自带的函数的用法 hive (default)> desc function extended upper; 1.2 自定义函数 1)Hive 自带了一些函数,比如:max/min 等,但是数量有限(大概二、三百个),自己可以通过自定义 UDF来方便的

Allenzyg的博客 5010

hive-UDF/UDTF/UDAF

hive udf udtf udaf

xiaopihaierletian的博客 1621

hive中如何自定义编写UDF函数

有时候hive提供的内置函数无法满足我们的需求,这时候我们就可以自定义函数了,步骤如下: 1、编写UDF代码 2、打包jar包然后上传到服务器 3、将jar包添加到hive中 4、创建临时函数与写好的class绑定 5、使用我们自定义函数 6、销毁不需要的函数 1、编写UDF代码: 我们使用eclipse编写java代码,首先我们需要导包,将hive安装目录下lib目录

彪彪的博客 2086

Hive自定义函数

UDF 是用户定义函数,英文全程(User Defined Function),它工作性质是一条数据进入函数,处理后一条处理好的数据输出,简称——“一进一出”,古有赵子龙的七进七出,今有 UDF 的一进一出。回归正题, UDFHive 自定义函数中最常见的函数,使用率最高,接下来我们一起来看 UDF 是怎么使用的吧!

r7867的博客 911

Hive从入门到放弃——Hive 用户自定义函数UDF简介(十二)

背 景   

LXWalaz1s1s的博客 789

Hive通过自定义UDF函数实现分词

一、所需依赖 <dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-exec</artifactId> <version>1.1.0</version> </dependency> <dependency&gt

手提青灯觅佳人的博客 793

hive添加永久udf函数

maven依赖 <dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-exec</artifactId> <version>1.2.1</version> ...

weixin_37589026的博客 1203

HiveUDF实现两种简单方法+通过编译源码添加UDF

目录 一、实现简单的say_hello 1、打开IDE在pom.xml中添加如下 2、新建 UDFHello.java 3、打包 4、上传jar包至hive的lib下,并赋权 5、进入Hive,添加jar包 6、创建临时函数对应我们的jar包 7、测试一下 8、总结 二、将UDF函数注册到元数据里 1、在一的基础上退出hive重新进入,会发现添加的UDF函数没有了,不能用了 2、在HDFS上创建一个文件夹将我们的jar包上传上去 3、在hive上执行如下语句 4、查看m...

qq_43476430的博客 4323

hive udf 源码 连接mysql_hiveUDF函数编程详解

UDF的定义UDF(User-Defined Functions)即是用户定义的hive函数hive自带的函数并不能完全满足业务需求,这时就需要我们自定义函数UDF的分类UDF:one to one,进来一个出去一个,row mapping。是row级别操作,如:upper、substr函数UDAF:many to one,进来多个出去一个,row mapping。是row级别操作,如sum/...

weixin_39996739的博客 301

hive自定义udf函数

1.创建一个简单的maven项目 2.pom文件设置需要的依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.

id_angle的博客 1063

HIVE添加UDF函数

Hive添加自定义UDF函数 Java代码编写 自定义编写UDF需要的继承类 开发自定义UDF函数需要继承’org.apache.hadoop.hive.ql.exec.UDF’类。 Maven的pom依赖 <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncod...

ITwangnengjie的博客 1135

大数据 java01 hive udf函数(手机号码脱敏)

这里写自定义目录标题Hive UDF 函数1 POM 文件2.UDF 函数3 利用idea打包4 添加hive udf函数4.1 上传jar包到集群4.2 修改集群hdfs文件权限4.3 注册UDF4.4 使用UDF Hive UDF 函数 1 POM 文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://

weixin_41734687的博客 1713

hive自定义udf函数超详细版(可变参数传参)

1、创建maven项目,添加pom依赖,版本应与hive版本保持一致。 <?xml version="1.0" encoding="UTF-8"?>xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http...

不朽的少年有着放肆的梦 2754

Hive 用户自定义函数(UDF)

Hive 用户自定义函数UDF一、定义二、解释三、实例3.1 导入相应的包3.2 编写代码3.3 打包3.4 上传jar 、编译、打包jar 包并添加到 Hive 中四、验证 一、定义 在Hive中,用户可以自定义一些函数用于扩展HiveQL的功能,这类函数叫作UDF (用 户自定义函数) 。 二、解释 Hive可以允许用户编写自己定义的函数UDF,来在查询中使用。Hive中有3种UDF: U...

一直打铁 997

Hive创建自定义函数

一、概述 如果hive的内置函数不够用,用户也可以自己定义函数来使用,这样的函数称为hive的用户自定义函数,简称UDF UDF使得Hive的可扩展性增强 二、实现步骤: 新建java工程,导入hive相关包,导入hive相关的lib 创建类继承UDF 自己编写一个evaluate方法,返回值和参数任意。 import org.apache.hadoop.hive.ql.exec.UDF...

Arno的博客 2094
上一篇: 执行shell脚本的几种方法
下一篇: CentOS 5.5 中 Python 升级到 2.6.5
superxgl
博客等级 码龄18年 100粉丝 166原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值