【问题标题】:Processing multiple rows in an hive udf处理 hive udf 中的多行
【发布时间】:2017-05-08 09:34:14
【问题描述】:

如何在 hive-udf 中获取多行?我需要在函数内部有一整列name,以便可以将它添加到 UDF 内的 ArrayList 中。以下是列名:

Name
jhon
jone 
mike

我想获取 UDF 内列中的所有名称。

【问题讨论】:

  • collect_set() 和 collect_list() 返回数组

标签: hive hive-udf


【解决方案1】:

看起来您正在寻找聚合函数。

首先,检查是否有任何现有的聚合函数可以满足您的需求 - Built-in Aggregate Functions

如果没有,您必须创建自定义 UDAF,这需要您:

  • 编写自己的求值器和解析器(参见本教程 - Custom UDAF),
  • 编译它们,
  • 将二进制文件添加到 hive 类路径,
  • 使用CREATE FUNCTION (Create Function) 在hive 中注册函数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-12
    • 2016-01-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多