Hive UDF 在 Scala 中处理整数数组

Posted

技术标签:

【中文标题】Hive UDF 在 Scala 中处理整数数组【英文标题】:Hive UDF to process array of integers in Scala 【发布时间】:2016-06-21 18:19:22 【问题描述】:

我是 scala 的新手,我需要编写用户定义的函数来处理 Hive 中具有整数数组的列(类型 array<int>)。

我试过了:

import org.apache.hadoop.hive.ql.exec.UDF

class testUDF extends UDF 

  def evaluate(arr: Array[Int], txt: String): Boolean = 
    return false
  


但是当我尝试在 SQL 中调用它时出现错误:

No matching method for class ... with (array<int>, string). Possible choices: _FUNC_(struct<>, string)

我需要在 Scala 中使用什么类型来处理 Hive 中的数组列?

【问题讨论】:

您将需要使用 hadoop 数据类型 (writable) - hadooptutorial.info/hadoop-data-types 【参考方案1】:

经过一些研究,我发现了该案例的特定类别:

import org.apache.hadoop.hive.ql.udf.generic.GenericUDF;

【讨论】:

以上是关于Hive UDF 在 Scala 中处理整数数组的主要内容,如果未能解决你的问题,请参考以下文章

处理 hive udf 中的多行

编写scala版hive的自定义函数

如何在 Scala 中向数组添加元素并查找变量类型?

Hive - 在 Python UDF 中处理 NULL 输入值

[Hive]Hive自定义函数UDF

Python中的自定义数组值Hive UDF?