【问题标题】:Determine the language for UDF creation in Hive确定在 Hive 中创建 UDF 的语言
【发布时间】:2019-05-07 00:57:10
【问题描述】:

总结:关注点与 Hive 中的 UDF 创建有关。

亲爱的朋友们,由于我是在 Hive 中创建 UDF 的新手(我已通过 google 阅读过有关此内容,但不是很清楚),我在这里的第一件事是确定哪种方式可能是最好的方式,例如 Java/Python 或任何其他人编写配置单元 UDF。

另一件事是我应该根据什么来分析?我应该寻找哪些参数?

请注意,我几乎没有下面给出的需要编写 UDF 的函数。 1.在需要“不聚合”的情况下,选择另一个功能所需的子句分组。 2.返回需要“聚合”时需要的select和group by子句。 3.对于vector_indexes是SUM,LISTAGG字符串用于数据采集查询 4.返回其他函数使用的WHERE子句。 5 以逗号分隔的字符串返回第 n 项。 6. 窄数据的百分位值函数。 7. 计算给定计数器名称的百分位数。除了百分位数,它还输出计算中使用的样本数、峰值和平均值。

非常感谢您,

【问题讨论】:

    标签: java python hive user-defined-functions


    【解决方案1】:

    这个问题可能不在指南范围内,因为您是在征求意见。

    话虽如此,我会提议:

    A) 你选择一种你知道的语言。

    B) 如果您两者都知道,请根据您需要的功能进行选择。

    C) 考虑性能 - 我相信(但不能确定)编译的 Java Jar 将在不启动 Java 运行时的情况下运行,只是为了支持该 Java 模块(它将在 hive java 实例中运行)。要运行 Python 模块,需要实例化新的 Python 解释器并通过进程间通信传输数据。因此,java 可能性能稍好一些——尤其是在算法简单的情况下。但是,除非您正在处理庞大的数据集,否则您可能根本不会注意到。

    最后,您可能可以使用 Hive 查询语言完成您要求的所有功能。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-16
    • 2020-08-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多