前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >用户自定义函数UDAF

用户自定义函数UDAF

作者头像
十里桃花舞丶
发布2021-09-10 11:13:27
4300
发布2021-09-10 11:13:27
举报
文章被收录于专栏:桥路_大数据

SQL DDL:用户自定义函数UDAF

UDAF的创建与实现

Hive UDAF有两种实现方式,可以继承UDAF或者AbstractGenericUDAFResolver类,也可以实现GenericUDAFResolver2接口。 其中直接继承UDAF类,功能实现较为简单,但在运行时使用Hive反射机制,导致性能有损失。

在较新版本中org.apache.hadoop.hive.ql.exec.UDAF类已经废弃,但因为其实现方便,在很多开发者中较为流行。

通过AbstractGenericUDAFResolver和GenericUDAFResolver2实现UDAF,更加灵活,性能也更出色,是社区推荐的写法。

而AbstractGenericUDAFResolver是GenericUDAFResolver2接口的实现类,所以一般建议直接继承AbstractGenericUDAFResolver类进行UDAF的编写。

UDAF实现方式一:继承UDAF类

UDAF开发流程

继承UDAF类进行UDAF的开发流程是:

  1. 继承org.apache.hadoop.hive.ql.exec.UDAF类
  2. 以静态内部类方式实现org.apache.hadoop.hive.ql.exec.UDAFEvaluator接口
  3. 实现接口中的init、iterate、terminatePartial、merge、terminate方法

其中UDAFEvaluator接口中的方法具体描述为:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/08/18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • SQL DDL:用户自定义函数UDAF
    • UDAF的创建与实现
      • UDAF实现方式一:继承UDAF类
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档