我们可以从 Hive 中的自定义 UDF 运行查询吗?
Posted
技术标签:
【中文标题】我们可以从 Hive 中的自定义 UDF 运行查询吗?【英文标题】:Can we run queries from the Custom UDF in Hive? 【发布时间】:2012-01-06 13:16:12 【问题描述】:伙计们,我是 Hive 的新手,对此有一些疑问。
通常我们在 Hive 中为特定数量的列编写自定义 UDF。 (考虑 UDF 在 Java 中)。意味着它对该特定列执行一些操作。
我在想我们是否可以编写这样的 UDF,通过它我们可以将特定列作为某个查询的输入,我们是否可以从 UDF 返回该查询,该查询将通过将该列作为输入在 Hive CLI 上执行?
我们可以这样做吗?如果是,请建议我。 感谢和抱歉我的英语不好。
【问题讨论】:
【参考方案1】:这不可能开箱即用,因为在 Hive 查询运行时,已经建立了一个将要执行的计划。您的建议是在该计划运行时动态更改该计划,这不仅因为计划已经构建,而且因为 Hadoop MapReduce 作业已经在运行,这很困难。
您可以做的是让您的初始 Hive 查询将新的 Hive 查询输出到一个文件,然后让某种 bash/perl/python 脚本通过该脚本并制定新的 Hive 查询并将它们传递给 CLI。
【讨论】:
以上是关于我们可以从 Hive 中的自定义 UDF 运行查询吗?的主要内容,如果未能解决你的问题,请参考以下文章