前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >hive(3)——在hive中使用自己写的函数(python实现)

hive(3)——在hive中使用自己写的函数(python实现)

作者头像
gzq大数据
发布2020-11-11 17:00:58
1.1K0
发布2020-11-11 17:00:58
举报
文章被收录于专栏:大数据那些事

如果我们想在hive中添加自己写的函数,可用如下方法: 前提:已经开启hdfs,yarn服务,并且关闭safe模式,打开mysql ps:udf是mapper类型的,进来一个数据,出去一个数据 (1)用python写好想要实现的函数 这里我的测试表是这样一份表,我想让此表的state字段都变成大写,所以我编辑了如下python脚本:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

编辑的脚本py_udf(udf前面已经解释)如下:

在这里插入图片描述
在这里插入图片描述
代码语言:javascript
复制
import sys
for line in sys.stdin:
        line = line.strip()
        team,state,rank = line.split()
        state = state.upper()
        print( ' '.join([team,state,str(rank)]))

(2)加入路径(至关重要的一步) 这份文件在本地路径下

在这里插入图片描述
在这里插入图片描述

(3)实现语句TRANSFORM

在这里插入图片描述
在这里插入图片描述

可见,california和colorado已经大写,成功输出,这里要使用TRANSFORM 前面的‘()’的参数是你表中的字段,也就是desc查出来的字段,而后面的‘()’的参数是你pyhon脚本里输出的参数。 可以在yarn可视化界面查看该任务:

在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/10/11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档