当前位置: 首页 > 知识库问答 >
问题:

如何为Hive自定义UDF添加JAR,以便在HDInsight集群上永久可用?

姬经义
2023-03-14

我已经在Hive中创建了一个自定义的UDF,它在Hive命令行中进行了测试,并且工作正常。那么现在我有了用于UDF的jar文件,我需要做什么来使用户能够创建指向它的临时函数呢?理想情况下,我会从Hive的命令提示符执行以下操作:-

hive> add jar myudf.jar;
Added [myudf.jar] to class path
Added resources: [myudf.jar]
hive> create temporary function foo as 'mypackage.CustomUDF';

在这之后,我就可以正确地使用这个函数了。

但是我不想每次执行函数时都添加jar。我应该可以在以下情况下运行此函数:-

  1. 从Visual Studio对HDInsight群集执行配置单元查询
  2. 通过SSH(Linux)或RDP/CMD(Windows)从命令行执行配置单元查询
  3. 从Ambari(Linux)配置单元视图执行配置单元查询
  4. 从HDinsight查询控制台配置单元编辑器(Windows群集)执行配置单元查询

因此,无论我如何执行查询,JAR应该已经可用并添加到路径中。对于Linux和Windows集群来说,确保这一点的过程是什么?

共有1个答案

百里胜泫
2023-03-14

您可以将jar添加到hive etc/conf目录中的hiverc文件中。此文件将在每次配置单元启动时加载。因此,从下一次开始,您不必为该会话单独添加jar。

 类似资料:
  • 问题内容: 我正在尝试为Selenium编写自己的ExpectedConditions,但我不知道如何添加新的selenium。有人有例子吗?我在网上找不到任何教程。 在我目前的情况下,我想等到某个元素存在,可见,启用并且没有attr“ aria-disabled”属性。我知道这段代码行不通: 编辑:一些额外的信息:我遇到的问题是与jQuery选项卡。我在一个禁用的选项卡上有一个表单,它将在该选项

  • 我正在做hazelcast监控服务,我需要为每个集群成员添加客户名称,以了解哪个模块不在集群中。 我想要成员的常量名称,而不是 这能做到吗?

  • 我有一个Flink会话集群(作业管理器任务管理器),版本1.11.1,配置了log4j控制台。属性包括Kafka appender。此外,在作业管理器和任务管理器中,我都启用了flink-s3-fs-hadoop内置插件。 我已经将kafka客户端jar添加到flink/lib目录,这是容器运行所必需的。但在实例化S3插件(并初始化记录器)时,我仍然会遇到类下加载错误。 原因:org.apache

  • 问题内容: 我有一些使用Java的第三方数据库客户端库。我想通过访问它们 例如:通过Java网关使客户端类(不是jdbc驱动程序!)可用于python客户端: 目前尚不清楚将第三方库添加到jvm类路径的位置。我试图添加到compute-classpath.sh,但这似乎并没有奏效:我明白了 另外,与Hive进行比较时:Hive jar文件不会通过compute- classpath.sh加载,这使

  • 因为我想在设置compress:true时替换此方法 为什么我要换掉这个?因为我想弄清楚高速缓存大小是否是在高并发(apache jmeter:50个用户,6个循环,ramup 20)情况下减慢从POI-SXSSF-sheet???.gz到POI-SXSSF-template???.xlsx的写入速度的主要原因。但问题是在初始化SXSSFWorkbook时如何使用我自己的SheetDataWrit

  • 我是新来的。我正试图从我的主实例读取一个文件,但我得到了这个错误。经过研究,我发现要么需要将数据加载到hdfs,要么需要跨集群复制。我找不到执行这两个命令的命令。 ----------------------------------------------------------------------------------------------------------------------