Hive进阶_开发Hive的自定义函数
2024-08-24 06:01:41
Hive中的自定义函数简介
(1) 在类中创建自定义函数。自定义UDF需要继承'org.apache.hadoop.hive.ql.exec.UDF',实现evaluate函数,evaluate函数支持重载。
(2) 将该类所在的包导出成jar包,放入linux目录下。
(3) 进入hive客户端,删除旧的jar包
hive> delete jar /dir/.jar;
(4) 添加新的jar包
hive> add jar /dir/.jar
(5) 创建临时函数,指向jar包中的类
hive> create temporary function <函数名> as 'java类名';
(6) 使用临时函数
select <函数名> (参数);
drop temporary function <函数名>;
Hive中的自定义函数案例
package demo.udf; import org.apache.hadoop.hive.ql.exec.UDF;
import org.apache.hadoop.io.Text; public class ConcatString extends UDF {
// string can not translation in hadoop
public Text evaluate(Text a, Text b) {
return new Text(a.toString() + "*******" + b.toString());
}
}
hive> delete jar /root/pl62716/hive/contactString.jar;
Deleted [/root/pl62716/hive/contactString.jar] from class path
hive> add jar /root/pl62716/hive/contactString.jar;
Added [/root/pl62716/hive/contactString.jar] to class path
Added resources: [/root/pl62716/hive/contactString.jar]
hive> create temporary function myconcat as 'demo.udf.ConcatString';
OK
Time taken: 2.747 seconds
hive> select myconcat('HELLO','world');
OK
HELLO*******world
Time taken: 0.598 seconds, Fetched: row(s)
最新文章
- LINQ系列目录
- PHP 正则表达式 修饰符
- FreeRTOS和Ucos在打开关闭中断的区别
- jQuery立体式数字动态增加(animate方法)
- ios UIScrollView 中控件自动增加间隔
- asp.net 后台获取input的值
- illustrator将图片转换成ai路径
- Magento文件系统目录结构
- JAVA小笔记
- SqlServer之存储过程
- java工程师联通XX面试题目
- 一个很好玩的命令:stty
- Deep Q-Network 学习笔记(一)—— Q-Learning 学习与实现过程中碰到的一些坑
- 2015 多校联赛 ——HDU5344(水)
- Windows上模拟Linux环境的软件Cygwin
- uWSGI、WSGI和uwsgi
- 21.Buffer Pool与压缩页/CheckPoint/LSN
- ubuntu apt-get 出现NO_PUBKEY的解决方案
- OpenCV 学习笔记 06 SIFT使用中出现版权问题error: (-213:The function/feature is not implemented)
- 百度“搜索设置”之基于定位下拉框或者需要点击link才显示的下拉框,二次定位与多次定位实现的实际效果区别