Hive中如何添加自定义UDF函数以及oozie中使用hive的自定义函数
操作步骤:
1. 修改.hiverc文件
在hive的conf文件夹下面,如果没有.hiverc文件,手工自己创建一个。
参照如下格式添加:
add jar /usr/local/hive/external_lib/gw-hive-udf.jar;
create temporary function myexp as 'com.gw.hive.udf.udtf.ExplodeEx';
第一行为自定义jar包存放的路径。
第二行为定义的funtion全类名,并且指定函数名为myexp;
2.上传jar包
将jar包上次到上面的目录中/usr/local/hive/external_lib
重启hive就可以使用。
3.oozie中安装
如果在oozie中调度hive的脚本时,需要用到该自定义包,则需要单独配置。
oozie调用时,使用到的依赖都包是保存在hdfs上的。
如果是hive通用的jar包,则放到hdfs上的oozie指定的hive目录中。
/user/oozie/share/lib/hive
如果属于某个程序单独用的依赖jar包,则上传到程序所在目录的lib文件夹中。
比如:/user/oozie/app/guba_loginlog/lib/,比如
然后需要使用以下命令刷新oozie的共享包。
oozie admin -sharelibupdate
在oozie调用的脚本中同样需要添加:
create temporary function myexp as 'com.gw.hive.udf.udtf.ExplodeEx';
190806更新:
1. 准备条件
上传文件到hdfs上:
# 上传文件到hdfs
hdfs dfs -put encryptAll-1.0.jar /user/hive/udf/
2.1 hive中添加临时自定义函数
#临时
add jar hdfs://ns1/user/hive/udf/udf/encryptAll-1.0.jar;
或者
add jar /opt/local/hive/udf/encryptAll-1.0.jar; # 创建函数:
create temporary function encrypt_all as 'com.test.udf.EncryptAll';
create temporary function decrypt_all as 'com.test.udf.DecryptAll';
2.2 hive中添加永久自定义函数
#永久:
create function encrypt_all as 'com.test.udf.EncryptAll' using jar 'hdfs://ns1/user/hive/udf/encryptAll-1.0.jar';
create function decrypt_all as 'com.test.udf.DecryptAll' using jar 'hdfs://ns1/user/hive/udf/encryptAll-1.0.jar';
Hive中如何添加自定义UDF函数以及oozie中使用hive的自定义函数的更多相关文章
- Hive自定义函数的学习笔记(1)
前言: hive本身提供了丰富的函数集, 有普通函数(求平方sqrt), 聚合函数(求和sum), 以及表生成函数(explode, json_tuple)等等. 但不是所有的业务需求都能涉及和覆盖到 ...
- Entity Framework 6 Recipes 2nd Edition(10-5)译 -> 在存储模型中使用自定义函数
10-5. 在存储模型中使用自定义函数 问题 想在模型中使用自定义函数,而不是存储过程. 解决方案 假设我们数据库里有成员(members)和他们已经发送的信息(messages) 关系数据表,如Fi ...
- oozie中调度mapreduce
mapreduce可以直接对hdfs进行清洗和计算,这里介绍oozie中如何调度使用. 操作步骤如下: 1. 写一个mapper和reduce类,并且打包成jar包 2. 在workflow中引用ma ...
- PHP中call user func()和call_user_func_array()调用自定义函数小结
call_user_func() 和 call_user_func_array(),通过传入字符串函数,可以调用自定义函数,并且支持引用,都允许用户调用自定义函数并传入一定的参数: 1.mixed c ...
- [原创]java WEB学习笔记42:带标签体的自定义标签,带父标签的自定义标签,el中自定义函数,自定义标签的小结
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- 浅谈Excel开发:六 Excel 异步自定义函数
上文介绍了Excel中的自定义函数(UDF ),它极大地扩展了Excel插件的功能,使得我们可以将业务逻辑以Excel函数的形式表示,并可以根据这些细粒度的自定义函数,构建各种复杂的分析报表. 普通的 ...
- 【转】MYSQL入门学习之十三:自定义函数的基本操作
转载地址:http://www.2cto.com/database/201212/177382.html 一.自定义函数(UDF)的特性和功能 www.2cto.com 函数能分 ...
- MySQL从删库到跑路_高级(二)——自定义函数
作者:天山老妖S 链接:http://blog.51cto.com/9291927 一.自定义函数简介 自定义函数(user-defined function UDF)是一种对MySQL扩展的途径,其 ...
- excel自定义函数添加和使用方法
第一,excel自定义函数简介 Excel自带很多函数供使用,但有些问题用内置函数解决起来很复杂,甚至是无能为力,这时就可以利用VBA开发自定义函数. 第二,excel如何添加自定义函数 excel自 ...
随机推荐
- 如何发布开源自己的框架或类库到CocoaPods - 图文讲解
当自己的库已经上传GitHub后,那么如何快速简单的开源自己的库呢? 这里就是介绍如何将自己的类库上传到pods管理库,以便开源所有人都能方便使用. 准备前提: - 项目已上传到GitHub (注意, ...
- 老毛桃pe装机工具备份系统
电脑故障可以说是难以避免的,误操作或者修改了哪个设置系统就莫名其妙崩溃了.这在日常使用当中并不鲜见,许多用户就会寻求备份系统方法.有没有好的一键备份系统教程可以参考呢?在本篇教程中,就容我跟大家讲讲怎 ...
- mybatis启动报错Result Maps collection already contains value forxxx
ssm搭建过程中启动tomcat,报错: Cause: java.lang.IllegalArgumentException: Result Maps collection already conta ...
- HDUOJ----A Computer Graphics Problem
A Computer Graphics Problem Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (J ...
- SYS_R12 MOAC多组织的四个应用(案例)
2014-05-31 Created By BaoXinjian
- Python 字典 pop() 方法
描述 Python 字典 pop() 方法删除给定键所对应的键/值对,并返回被删除的值.给定键如果不在字典中,则必须设置一个default值,否则会报错,此时返回的就是default值. 语法 pop ...
- [转]Windows 7自带很好用的磁盘检查与修复的环境
大家可能都知道Windows 7自带很好用的检查与修复的环境.在启动系统前按F8(就是进入安全模式的方法),Windows 7会有一个修复计算机的选项.选择进入,装载一些必要的文件之后,选择语言.登陆 ...
- unity, shader input and output
http://wiki.unity3d.com/index.php?title=Shader_Code
- CPD轮播广告库的简单算法
在广告的领域中,有一种广告形式,采用的是CPD的售卖模式,为了对流量进行拆分,媒体方会对广告位进行轮播拆分.比如一个广告位,被拆成了10轮播,那么在广告主来预订广告位的时候,这个时候就可以告诉广告主, ...
- oracle ORA-00119和ORA-00132解决方法
ORA-00119 ORA-00132解决方法. 思路:*.local_listener错误导致.要*.local_listener就要修改spfile文件,因为oracle默认是以spfile文件启 ...