hive UDF实操及解析说明
来源:互联网 发布:淘宝代运营公司诈骗 编辑:程序博客网 时间:2024/06/05 08:05
hive类UDF工作原理
要继承org.apache.hadoop.hive.ql.exec.UDF类,实现evaluate方法
代码如下:
自定义函数调用过程:
1.添加jar包(在hive命令行里面执行)
Hive自身查询语言HQL能完成大部分的功能,但遇到特殊需求时,需要自己写UDF实现。以下是一个完整的案例。
要继承org.apache.hadoop.hive.ql.exec.UDF类,实现evaluate方法
代码如下:
package cn.itcast.hive.udf;import java.util.HashMap;import java.util.Map;import org.apache.hadoop.hive.ql.exec.UDF;import org.apache.hadoop.io.Text;public class NationUDF extends UDF{ public static MapnationMap = new HashMap (); static { nationMap.put("China", "中国"); nationMap.put("Japan", "小日本"); nationMap.put("USA", "美帝"); } Text text = new Text(); // 1000 sum(income) // 中国 getNation(nation) public Text evaluate(Text nation){ String nation_e = nation.toString(); String name = nationMap.get(nation_e); if (name == null){ name = "火星人"; } text.set(name); return text;}
自定义函数调用过程:
1.添加jar包(在hive命令行里面执行)
add jar /root/NUDF.jar;2.创建临时函数
create temporary function getNation as 'cn.itcast.hive.udf.NationUDF';3.调用
select id, name, getNation(nation) from beauties;4.将查询结果保存到另外一张表中
create table result row format delimited fields terminated by '\t' as select * from beauties order by id desc;5.使用UDF,将查询结果输出到另外一张表中
create table result_beauties row format delimited fields terminated by '\t' as select id, getNation(nation) from beauties;
阅读全文
1 0
- hive UDF实操及解析说明
- Hive的UDF实现及注意事项
- hive自定义UDF、UDAF、UDTF及使用
- Hive UDF函数开发及企业规范
- Hive中的UDF及自定义函数示例
- hive udf
- hive-udf
- hive UDF
- hive UDF
- hive UDF
- hive udf
- hive udf
- Hive UDF
- HIVE UDF
- hive udf
- hive UDF
- Hive中实现自定义函数UDF及打包
- Hive自带Function使用及UDF编程
- Class org.apache.struts2.json.JSONWriter can not access a member of class
- 微信图片预览的小经验
- mui框架 页面无法滚动解决方法
- hive安装过程全程解析、hive常规操作、说明
- 最不擅长等分布局
- hive UDF实操及解析说明
- iOS 简单工厂模式、抽象工厂模式~详解
- 关于phantomjs evaluate沙盒环境的点击事件
- myisamchk命令使用总结
- day14_Math
- 串口缓冲区管理分析
- 99%的人都理解错了HTTP中GET与POST的区别
- IntelliJ IDEA Mac下快捷键
- Python进程的创建