`
thomas0988
  • 浏览: 474211 次
  • 性别: Icon_minigender_1
  • 来自: 南阳
社区版块
存档分类
最新评论

编写hive udf函数

 
阅读更多

udf编写入门
大写转小写
package com.afan;
import org.apache.hadoop.hive.ql.exec.UDF;
import org.apache.hadoop.io.Text;

public class UDFLower extends UDF{
    public Text evaluate(final Text s){
        if (null == s){
            return null;
        }
        return new Text(s.toString().toLowerCase());
    }
}

1加载udf jar包
afan@ubuntu:/usr/local/hadoop/hive$ bin/hive
Hive history file=/tmp/afan/hive_job_log_afan_201105150623_175667077.txt
hive> add jar udf_hive.jar;
Added udf_hive.jar to class path
Added resource: udf_hive.jar
2 创建udf函数
hive> create temporary function my_lower as 'com.afan.UDFLower';
OK
Time taken: 0.253 seconds
3 创建测试数据
hive> create table dual (info string);
OK
Time taken: 0.178 seconds
hive> load data local inpath 'data.txt' into table dual;
Copying data from file:/usr/local/hadoop/hive/data.txt
Copying file: file:/usr/local/hadoop/hive/data.txt
Loading data to table default.dual
OK
Time taken: 0.377 seconds
hive> select info from dual;
Total MapReduce jobs = 1
Launching Job 1 out of 1
Number of reduce tasks is set to 0 since there's no reduce operator
Starting Job = job_201105150525_0003, Tracking URL = http://localhost:50030/jobdetails.jsp?jobid=job_201105150525_0003
Kill Command = /usr/local/hadoop/bin/../bin/hadoop job  -Dmapred.job.tracker=localhost:9001 -kill job_201105150525_0003
2011-05-15 06:46:05,459 Stage-1 map = 0%,  reduce = 0%
2011-05-15 06:46:10,905 Stage-1 map = 100%,  reduce = 0%
2011-05-15 06:46:13,963 Stage-1 map = 100%,  reduce = 100%
Ended Job = job_201105150525_0003
OK
WHO
AM
I
HELLO
worLd

Time taken: 14.874 seconds
4使用udf函数
hive> select my_lower(info) from dual;
Total MapReduce jobs = 1
Launching Job 1 out of 1
Number of reduce tasks is set to 0 since there's no reduce operator
Starting Job = job_201105150525_0002, Tracking URL = http://localhost:50030/jobdetails.jsp?jobid=job_201105150525_0002
Kill Command = /usr/local/hadoop/bin/../bin/hadoop job  -Dmapred.job.tracker=localhost:9001 -kill job_201105150525_0002
2011-05-15 06:43:26,100 Stage-1 map = 0%,  reduce = 0%
2011-05-15 06:43:34,364 Stage-1 map = 100%,  reduce = 0%
2011-05-15 06:43:37,484 Stage-1 map = 100%,  reduce = 100%
Ended Job = job_201105150525_0002
OK
who
am
i
hello
world

Time taken: 20.834 seconds

http://blog.sina.com.cn/s/blog_61c463090100rh4j.html

分享到:
评论

相关推荐

    hive自定义UDF编写函数.docx

    hive的udf函数实现

    HIVE自定义UDF函数

    而自定义用户定义函数(UDF)是 Hive 中的一个重要功能,允许用户根据自己的需求编写自定义函数,以便在 Hive 查询中使用。 如何在 Hive 中创建自定义 UDF 函数: 步骤一:编写 Java 程序 首先,您需要编写一个 ...

    hive的自定义函数

    简单介绍了hive自定义函数的编写步骤以及使用。

    hive-udf-tools:hive udf 部署工具,开发工具...

    hive-udf-hook UDF开发及发布过程 1 用户编写UDF实现类 2 编写完成后,在UDFHooks类中调用相关注册函数: 调用 FunctionRegistry.registerUDF 注册udf 调用 FunctionRegistry.registerUDAF 注册udaf 调用...

    Hive自定义函数

    Hive自定义函数 一. UDF(user defined function) 背景 系统内置函数无法解决所有的实际业务问题,需要开发者自己编写函数实现自身的业务实现诉求。 应用场景非常多,面临的业务不同导致个性化实现很多,故udf...

    大数据运维技术第6章 Hive组件安装配置课件.pptx

    Hive相关知识; Hive是基于Hadoop的数据仓库工具,可以用来对HDFS中存储的数据...Hive还允许用户编写自己定义的函数UDF,用来在查询中使用。;;;6.2 Hive组件架构;6.2 Hive组件架构;6.2 Hive组件架构;;6.3 下载和解压安装

    Scriptis是一款支持在线写SQLPysparkHiveQL等脚本提交给Linkis执行的数据分析Web工具

    Scriptis是一款支持在线写SQL、Pyspark、HiveQL等脚本,提交给Linkis执行的数据分析Web工具,且支持UDF、函数、资源管控和智能诊断等企业级特性。

    Hive大数据离线应用开发

    本章将为大家解答以下问题:基于Hadoop的Hive工具的基本概念以及配置和启动。Hive的数据类型、表以及数据操作。如何用Hive进行数据查询。...Hive的UDF自定义函数介绍和应用。azkaban的介绍和实际应用。

    java数组笔试题-transport:用于编写可在各种引擎(包括ApacheSpark、ApacheHive和Presto)之间移植的高性能

    Transport是一个用于编写高性能用户定义函数 (UDF) 的框架,这些函数可在各种引擎之间移植,包括 、 和 。 传输 UDF 还能够直接处理以序列化格式(例如 Apache Avro)存储的数据。 使用 Transport,开发人员只需使用...

    Hadoop权威指南(中文版)2015上传.rar

    1.8.1 编写UDF 1.8.2 编写UDAF 第13章 HBase 2.1 HBasics 2.1.1 背景 2.2 概念 2.2.1 数据模型的"旋风之旅" 2.2.2 实现 2.3 安装 2.3.1 测试驱动 2.4 客户机 2.4.1 Java 2.4.2 Avro,REST,以及Thrift 2.5 示例 ...

    大数据场景化解决方案.pdf

    当Hive提供的内置函数⽆法满⾜业务处理需要时,此时就可以考虑使⽤⽤户⾃定义函数,编写处理代码并在查询中使⽤。 UDF(User-Defined-Function) ⽤于接收单个数据⾏,并产⽣⼀个数据⾏作为输出。 UDAF(User-Defined...

    Hadoop权威指南 第二版(中文版)

     1.8.1 编写UDF  1.8.2 编写UDAF 第13章 HBase  2.1 HBasics  2.1.1 背景  2.2 概念  2.2.1 数据模型的“旋风之旅”  2.2.2 实现  2.3 安装  2.3.1 测试驱动  2.4 客户机  2.4.1 Java  2.4.2 Avro,REST...

    Hadoop实战中文版

    10.5.3 关系型运算符 10.5.4 执行优化 10.6 用户定义函数 10.6.1 使用UDF 10.6.2 编写UDF 10.7 脚本 10.7.1 注释 10.7.2 参数替换 10.7.3 多查询执行 10.8 Pig 实战——计算相似专利的例子 10.9 小结 第...

    Hadoop实战(陆嘉恒)译

    用Pig编程10.1 像Pig 一样思考10.1.1 数据流语言10.1.2 数据类型10.1.3 ...函数10.6.1 使用UDF10.6.2 编写UDF10.7 脚本10.7.1 注释10.7.2 参数替换10.7.3 多查询执行10.8 Pig 实战——计算相似专利的例子10.9 小结第11...

    Hadoop硬实战 [(美)霍姆斯著][电子工业出版社][2015.01]_PDF电子书下载 带书签目录 高清完整版.rar )

    技术点65 编写UDF 和压缩分区表 10.2.3 数据合并 技术点66 优化Hive 合并 10.2.4 分组、排序和explain 10.3 本章小结 11 Pig 流管道 11.1 Pig 基础 11.1.1 安装 11.1.2 架构 11.1.3 PigLatin...

    Hadoop实战(第2版)

    10.2.1 序列化和反序列化技术点64 载入日志文件10.2.2 UDF、分区、分桶和压缩技术点65 编写UDF 和压缩分区表10.2.3 数据合并技术点66 优化Hive 合并10.2.4 分组、排序和explain 10.3 本章小结11 ...

    Hadoop实战

    18710.5.3 关系型运算符 18910.5.4 执行优化 19610.6 用户定义函数 19610.6.1 使用UDF 19610.6.2 编写UDF 19710.7 脚本 19910.7.1 注释 19910.7.2 参数替换 20010.7.3 多查询执行 20110.8 Pig实战——计算相似专利的...

    尚gg大数据项目实战电商数仓系统开发教程.txt

    62_用户行为数仓_自定义UDF函数(解析公共字段).avi7 Q/ i) X8 O6 S0 M( V' m- ]- M 63_用户行为数仓_自定义UDTF函数(解析事件日志基础明细表).avi 64_用户行为数仓_DWD层数据解析脚本.avi 65_用户行为数仓_DWD层...

    Hadoop实战中文版.PDF

    18910.5.4 执行优化 19610.6 用户定义函数 19610.6.1 使用UDF 19610.6.2 编写UDF 19710.7 脚本 19910.7.1 注释 19910.7.2 参数替换 20010.7.3 多查询执行 20110.8 Pig实战——计算相似专利的例子 ...

Global site tag (gtag.js) - Google Analytics