《Hive数据仓库应用与实战》课件 项目四-任务三-创建、使用自定义函数_第1页
《Hive数据仓库应用与实战》课件 项目四-任务三-创建、使用自定义函数_第2页
《Hive数据仓库应用与实战》课件 项目四-任务三-创建、使用自定义函数_第3页
《Hive数据仓库应用与实战》课件 项目四-任务三-创建、使用自定义函数_第4页
《Hive数据仓库应用与实战》课件 项目四-任务三-创建、使用自定义函数_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《Hive数据仓库应用与实战》Hive数据仓库应用与实战项目四深入HiveQL任务三创建、使用自定义函数回顾知识点1系统内置函数回顾知识点2常用内置函数回顾任务引入在生产环境中,Hive的内置函数满足不了所有的业务需求。所以Hive提供很多的模块可以自定义功能,比如:自定义函数、serde、输入输出格式等。任务概要任务描述:上一个任务我们学习了使用Hive内置函数的方法,但是在生产环境中,内置函数有时无法满足我们的查询需求,此时我们就要创建自定义函数来满足我们的需求,本任务将讲解如何创建、使用自定义函数。任务教学目标:掌握自定义函数的创建、使用方法一自定义函数介绍二自定义UDF函数实现教学内容自定义函数介绍知识点一(一)自定义函数介绍1、查看系统自带的函数常见的自定义函数的分类有3种:UDF:用户自定义函数,userdefinedfunction。一对一的输入输出。(最常用的)。UDTF:用户自定义表生成函数。userdefinedtable-generatefunction.一对多的输入输出。lateralviewexplodeUDAF:用户自定义聚合函数。userdefinedaggregatefunction。多对一的输入输出countsummax。常用内置函数知识点二自定义Java类并继承org.apache.hadoop.hive.ql.exec.UDF;覆写evaluate函数,evaluate函数支持重载;进入hive客户端,添加jar包;把程序打包放到hive所在服务器;自定义函数的创建步骤(二)常用内置函数Hive命令行中执行查询语句创建关联到Java类的Hive函数;(二)常用内置函数编写一个UDF,关键在于自定义Java类需要继承UDF类并实现evaluate()函数。1、创建java类(二)常用内置函数将项目在eclipes中打包为jar包并命名为HiveUDF.jar,打包后上传到服务器指定目录,此处我们选择/opt/module/datas/HiveUDF目录。2、项目打包(二)常用内置函数进入到hive客户端,创建数据表CREATETABLEIFNOTEXISTSuserinfo(nameSTRING,//姓名bdaySTRING,//出生日期)ROWFORMATDELIMITEDFIELDSTERMINATEDBY',';3、加载样本数据集(二)常用内置函数将样本数据集加载到userinfo表中:hive>LOADDATALOCALINPATH'/opt/module/datas/HiveUDF'>INTOTABLEuserinfo;3、加载样本数据集(二)常用内置函数在hive客户端,将HiveUDF.jar文件加载到类路径:hive(default)>addjar/opt/module/datas/HiveUDF/HiveUDF.jar;4、添加jar包(二)常用内置函数通过CREATEFUNCTION语句定义好使用这个java类的函数:hive(default)>CREATETEMPORARYFUNCTIONHiveUDFAS'com.bigdata.hive.UDFDemo';5、创建关联到Java类的hive函数(二)常用内置函数先看一下HiveUDF()函数的描述hive(default)>DESCRIBEFUNCTIONHiveUDF;HiveUDF(date)-fromtheinputdatestringorseparatemonthanddayarguments,returnsthesignoftheUDFDemo6、执行查询(二)常用内置函数查询userinfo表中的数据hive(default)>SELECTname,bday,HiveUDF(bday)asconstellationfromuserinfo;6、执行查询(二)常用内置函数当我们使用完自定义UDF后,可通过如下命令删除此函数hive(default)>DROPTEMPORARY

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论