Hive UDF开发 第一个例子
package udf; import org.apache.hadoop.hive.ql.exec.UDF; public class helloudf extends UDF{
public String evaluate(String str){
try {
return "HelloWorld " + str;
} catch (Exception e) {
// TODO: handle exception
return null;
}
}
} 上面是一个java project 写的 udf 程序的意思大家应该都明白 打包成jar: 用fat jar 博客之前发过jar包了,然后导出成jar 传到Linux本地目录 进入hive
add jar /home/hadoop/udf_1_fat.jar; //注意,这个地址为Linux本地地址,不是hdfs地址 传到hdfs是接收不到的 除非你加上hdfs链接(没有测试)
CREATE TEMPORARY FUNCTION helloworld AS 'udf.helloudf'
show functions 可以看到所有支持的方法,里面会有helloworld
找一个表,里面有点数据的
我这边找的一个表,我查出来的数据为:
hive> select * from hive1 limit 10;
OK
1 百花家园 张云龙 18001295207 155 2室1厅1卫 94 2/5层 南北 sina 河北链家地
2 中国铁建原香小镇 高伟 13501061874 210 3室2厅1卫 115 6/6层 南北 sina 凯利门
3 金泰城丽湾 马丰收 18210989857 1200 5室3厅3卫 258 18/19层 南北 sina 21世纪
4 恋日绿岛 于洪梁 13366126543 430 3室2厅2卫 149 2/4层 南北 sina 如一房产
5 怡海花园恒泰园 史润生 18401296028 520 2室2厅2卫 136 15/28层 西 sina 我爱我家
6 高教新城观宇园 张超 18910750910 180 2室1厅1卫 89 14/18层 南北 sina 晨建顺房屋
7 东润枫景 孙心源 13501365333 380 2室1厅1卫 91 1/20层 东南 sina 我爱我家
8 北苑家园望春园 刘韬 18311385981 245 1室1厅1卫 69 17/25层 东南 sina 城承物业
9 中央公园广场 吕德辉 15010507970 5800 1室0厅0卫 672 2/26层 南 sina 华清永泰
10 上上城第二季 杨瑞平 15001210716 200 4室1厅2卫 155 6/15层 南北 sina 河北链家地 字段对应就不说了 下面就是结果了
hive> select helloworld(hive1.large) from hive1 limit 10;
OK
HelloWorld 94
HelloWorld 115
HelloWorld 258
HelloWorld 149
HelloWorld 136
HelloWorld 89
HelloWorld 91
HelloWorld 69
HelloWorld 672
HelloWorld 155
Time taken: 0.131 seconds, Fetched: 10 row(s)
hive> select helloworld(hive1.price) from hive1 limit 10;
OK
HelloWorld 155
HelloWorld 210
HelloWorld 1200
HelloWorld 430
HelloWorld 520
HelloWorld 180
HelloWorld 380
HelloWorld 245
HelloWorld 5800
HelloWorld 200
Time taken: 0.111 seconds, Fetched: 10 row(s)
hive> select helloworld(hive1.id) from hive1 limit 10;
OK
HelloWorld 1
HelloWorld 2
HelloWorld 3
HelloWorld 4
HelloWorld 5
HelloWorld 6
HelloWorld 7
HelloWorld 8
HelloWorld 9
HelloWorld 10
Time taken: 0.115 seconds, Fetched: 10 row(s) ok,大家都懂什么意思了吧
Hive UDF开发 第一个例子的更多相关文章
- Hive UDF开发-简介
Hive进行UDF开发十分简单,此处所说UDF为Temporary的function,所以需要hive版本在0.4.0以上才可以. Hive的UDF开发只需要重构UDF类的evaluate函数即可.例 ...
- Hive UDF开发指南
编写Apache Hive用户自定义函数(UDF)有两个不同的接口,一个非常简单,另一个...就相对复杂点. 如果你的函数读和返回都是基础数据类型(Hadoop&Hive 基本writable ...
- Hive UDF开发实例学习
1. 本地环境配置 必须包含的一些包. http://blog.csdn.net/azhao_dn/article/details/6981115 2. 去重UDF实例 http://blog.csd ...
- 04springMVC结构,mvc模式,spring-mvc流程,spring-mvc的第一个例子,三种handlerMapping,几种控制器,springmvc基于注解的开发,文件上传,拦截器,s
1. Spring-mvc介绍 1.1市面上流行的框架 Struts2(比较多) Springmvc(比较多而且属于上升的趋势) Struts1(即将被淘汰) 其他 1.2 spring-mv ...
- 最强最全面的Hive SQL开发指南,超四万字全面解析
本文整体分为两部分,第一部分是简写,如果能看懂会用,就直接从此部分查,方便快捷,如果不是很理解此SQL的用法,则查看第二部分,是详细说明,当然第二部分语句也会更全一些! 第一部分: hive模糊搜索表 ...
- HIVE udf实例
本例中udf来自<hive编程指南>其中13章自定义函数中一个例子. 按照步骤,第一步,建立一个项目,创建 GenericUDFNvl 类. /** * 不能接受第一个参数为null的情况 ...
- 使用Akka.net开发第一个分布式应用
系列主题:基于消息的软件架构模型演变 既然这个系列的主题是"基于消息的架构模型演变",少不了说说Actor模型.Akka.net是一个基于Actor模型的分布式框架.如果你对分布式 ...
- emberjs学习一(环境和第一个例子)
code { margin: 0; padding: 0; white-space: pre; border: none; background: transparent; } code, pre t ...
- 【翻译习作】 Windows Workflow Foundation程序开发-第一章03
1.2.2.Visual Studio 2005扩展包 微软也为Windows Workflow开发者提供了Visual Studio 2005扩展包.扩展包将许多功能集成到Visual Studio ...
随机推荐
- Stacktack overview
class Lifecycle(models.Model): """The Lifecycle table is the Master for a group of ...
- Secret Code
Secret Code 一.题目 [NOIP模拟赛A10]Secret Code 时间限制: 1 Sec 内存限制: 128 MB 提交: 10 解决: 6 [提交][状态][讨论版] 题目描述 ...
- Redis源码研究:哈希表 - 蕫的博客
[http://dongxicheng.org/nosql/redis-code-hashtable/] 1. Redis中的哈希表 前面提到Redis是个key/value存储系统,学过数据结构的人 ...
- MySQL复制:主从和双主配置
对比Replication和Cluster 应用层中间件的负载均衡 异步的复制过程 MySQL官方使用Replication场景
- 从性能的角度谈SQL Server聚集索引键的选择
简介 在SQL Server中,数据是按页进行存放的.而为表加上聚集索引后,SQL Server对于数据的查找就是按照聚集索引的列作为关键字进行了.因此对于聚集索引的选择对性能的影响就变得十分重要 ...
- Merge 2
在SQL2008中,新增了一个关键字:Merge,这个和Oracle的Merge的用法差不多,只是新增了一个delete方法而已.下面就是具体的使用说明: 首先是对merge的使用说明: merge ...
- 第一个DirectX程序include、lib设置问题
1.fatal error LNK1104: cannot open file "d3d9.lib" 解决方案: (1)项目 -->属性 --> 配置属性 --> ...
- 理解WCF(第一部分,有參考他人)
依舊不廢話 上乾貨! 1.什么是WCF? WCF全名是:WindowsCommunication Foundation ,是一个运行库和一组 API,用于创建在服务与客户端之间发送消息的系统.它使用 ...
- 20180907_网络差_天安微信token请求超时
一.异常现象 token请求时,显示请求超时. 二.原因分析 这个异常有如下几个原因: (1)服务器没有开通 qyapi.weixin.qq.com 的外网权限 (2)服务器网络太慢 三.异常解决 ...
- .net core结合Consul集群&Docker实现服务治理
实战中的asp.net core结合Consul集群&Docker实现服务治理 https://www.cnblogs.com/guolianyu/p/9614050.html 0.目录 整体 ...