Hive 自定义函数UDF入门
1.为什么要用自定义函数
1.1 hive的内置函数满足不了的业务需求,这时候就需要使用自定义函数
1.2 hive的自定义函数有那些
1.UDF 一对一输出输入(本章使用)
2.UDTF 一对多输出输入
3.UDAF 多对一输出输入
2.函数的实现
结合需求进行介绍讲解
需求 :根据字符输出性别 1为男,2为女,反之则未定义
ID NAME AGE SEX
1 张三 10 1
2 李四 20 2
3 王五 38 1
4 赵六 45 2
5 田七 50 1
6 马八 66 2
7 吴九 70 1
8 黄一 40 0
9 黄二 15 1
10 黄三 18 2
11 黄四 52 1
12 黄五 33 0
13 黄六 27 1
2.1 hive中准备好对应的表,下边开始自定义函数第一个案例
2.2 编写程序
2.2.1 打开IDEA 创建MAVEN项目,导入对应的依赖包
<dependencies><dependency><groupId>org.apache.hive</groupId><artifactId>hive-exec</artifactId><version>3.1.2</version></dependency></dependencies>
2.2.2 编写对应的程序,这里要数以注意的是:继承UDF函数,并且实现 evaluate 方法
2.2.3 将编写好的程序进行打包
2.2.4 将打包好的jar包上传至hdfs,这里是我上传的路径
hdfs dfs -put ./per-1.0-SNAPSHOT.jar /function/udf
2.2.5 在hive中注册永久udf自定义函数
create function get_sex as 'com.hive.udf.PersonUDF' using jar 'hdfs://hadoop001/function/udf/per-1.0-SNAPSHOT.jar' ;
解析: create function 自定义函数名 as 'java写的类全限定名' using jar 'jar包在hdfs上的绝对路径'
3.测试函数
可以看到,在使用自定义函数后,它的输出和我们上边写的java程序逻辑吻合,则说明我们的思路是对的。
3.1 自定义函数的基本操作
删除函数
drop function 函数名;
创建临时函数
create temporary function 函数名 as '类全限定名';
模糊查询
show function like '*函数字段*';
4.可能会涉及的报错
4.1 比如创建函数的时候出现连接失败,这时候不要慌,一般来说重启虚拟机就可以解决
Hive 自定义函数UDF入门相关推荐
- hive自定义函数UDF的使用方法
虽然Hive已经提供了很多内置的函数,比如count().sum(),但是还是不能满足用户的需求,因此提供了自定义函数供用户自己开发函数来满足自己的需求.本实例通过编写自己的UDF,实现通过一个人的出 ...
- Hive自定义函数UDF、UDAF、UDTF
0.依赖 <dependencies><!--添加hive依赖--><dependency><groupId>org.apache.hive</g ...
- Hive内置运算函数,自定义函数(UDF)和Transform
4.Hive函数 4.1 内置运算符 内容较多,见<Hive官方文档> 4.2 内置函数 内容较多,见<Hive官方文档> https://cwiki.apache.org ...
- hive 元数据 自定义_如何在Hive中创建自定义函数UDF及如何直接通过Impala的同步元数据重用UDF的jar文件-阿里云开发者社区...
如何在Hive中创建自定义函数UDF及使用 如何在Impala中使用Hive的自定义函数 UDF函数开发 使用Intellij工具开发Hive的UDF函数,进行编译: 1.使用Intellij工具通过 ...
- Hive自定义函数入门实例
概念 UDF函数一共分为三种类型: UDF-一进一出,给定一个参数,输出一个处理后的数据 UDAF-多进一出,属于聚合函数,类似于count.sum等函数 UDTF-一进多出,属于一个参数,返 ...
- Hive 自定义函数编写(UDF,UDAF,UDTF)
Hive自带了一些函数,比如:max/min等,但是数量有限,自己可以通过自定义 UDF来方便的扩展. 当 Hive提供的内置函数无法满足你的业务处理需要时,此时就可以考虑使用用户自定义函数. 1. ...
- 2021年大数据Hive(八):Hive自定义函数
全网最详细的Hive文章系列,强烈建议收藏加关注! 后面更新文章都会列出历史文章目录,帮助大家回顾知识重点. 目录 系列历史文章 前言 Hive自定义函数 一.概述 1.UDF(User-Define ...
- Hive 史上最全面的大数据学习第九篇(五) Hive 自定义函数 每一天都是美好的一天!
Hive概述 & 安装方式详解 Hive表操作 Hive表分类 Hive Sql 操作 Hive 自定义函数 Hive On HBase 六.Hive 自定义函数 在Hive当中又系统自带的函 ...
- hive自定义函数-身份证号合法性判断
hive自定义函数-身份证号合法性判断 简要 代码 简要 身份证号合法性判断: 若为18位身份证号: 1.第18位数字,应该在身份证号最后一位校验位数字中 2.前17为数字分别乘以对应的加权因子,累加 ...
最新文章
- 12.1 Bootstrap介绍
- 会话(session)
- 设置easyui input默认值
- python开发最受欢迎的十款工具
- Java中,异常处理try catch的作用域是局部的
- Jade linux 位置,jade 6.5 安装教程
- VS2003添加.BMP资源
- go-redis 读和存储json数组
- Linux性能优化——如何测试网络延迟
- gateway集成swagger
- JSP常用内置对象及抽奖功能
- 关于hadoop运行成功但是无法链接web页面
- Dijkstra(迪杰斯特拉)算法求单源最短路径问题
- 量化分析入门5:列表和收盘价的移动平均的示例
- 用Python自动计算Excel排班表的工时
- 解决windows10 ping不通问题(请求超时)
- win10 安装oracle11g完整教程
- 2013年最具技术影响力原创图书TOP10
- 在微软Azure的服务器上创建Windows虚拟机的教程
- z-libirary登录入口_z-libirary在线检测可用检测
热门文章
- POI之SXSSFWorkbook大量数据导出至excel有关内存溢出
- White Noise 白噪音:帮你提高工作注意力的 Chrome 扩展
- 为什么全世界都要鼓励青少儿学习编程?
- java时间减一秒钟_科学家将量子计算机变成一台时光机-至少要花一秒钟的时间...
- linux安装nignx
- 虚拟桌面网络设置技巧
- python漫画滤镜怎么实现的_基于Python实现的ComicReaper漫画自动爬取脚本
- 【EUI】乐视2 游戏开发版 卡片后台 调温控舒适度 xposed黑阈 游戏内核
- 怎么看协议属于哪一层?
- java 进程 突然死掉_一次 java 进程猝死的原因分析