gpt4 book ai didi

hadoop - 由于缺少 jar,无法配置 hive.exec Hook

转载 作者:可可西里 更新时间:2023-11-01 17:00:46 26 4
gpt4 key购买 nike

我正在尝试使用 Hive 并使用“use db”命令切换数据库。我的设置是 Hadoop 2.4.0 和 Hive 0.13.1。我将以下 3 个属性添加到 .settings 文件

set hive.exec.failure.hooks=org.apache.hadoop.hive.ql.hooks.ATSHook;
set hive.exec.post.hooks=org.apache.hadoop.hive.ql.hooks.ATSHook;
set hive.exec.pre.hooks=org.apache.hadoop.hive.ql.hooks.ATSHook;

然后我打开 hive 命令行,通过“hive -i my.settings”传入 .settings 文件,然后我得到:

hive> use db;
hive.exec.pre.hooks Class not found:org.apache.hadoop.hive.ql.hooks.ATSHook
FAILED: Hive Internal Error: java.lang.ClassNotFoundException(org.apache.hadoop.hive.ql.hooks.ATSHook)
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)

我的类路径中似乎缺少一个 jar。我尝试在网上搜索包含“org.apache.hadoop.hive.ql.hooks.ATSHook”类的 jar,但没有成功。我尝试通过以下方式将所有带有 jar 的路径从 HIVE_HOME 添加到 yarn-site.xml:

<property>
<name>yarn.application.classpath</name>
<value>
...
/apps/hive/hive-0.13.1/hcatalog/share/hcatalog/*,
/apps/hive/hive-0.13.1/hcatalog/share/hcatalog/storage-handlers/hbase/lib/*,
/apps/hive/hive-0.13.1/hcatalog/share/webhcat/java-client/*,
/apps/hive/hive-0.13.1/hcatalog/share/webhcat/svr/lib/*,
/apps/hive/hive-0.13.1/lib/*
</value>
</property>

仍然没有运气。有谁知道我需要一些额外的步骤来配置这些属性吗?

最佳答案

显然,该 jar 仅在尚未发布的 Hive 0.14.0 中可用。所以我必须根据 Hive Wiki 上的说明下载并构建 Hive .这很简单:

mvn clean install -DskipTests -Phadoop-2

构建完成后,我就可以做到这一点:

  hive> add jar <HIVE_HOME>/ql/target
> ;

或者通过将此属性添加到 hive-site.xml

    <property>
<name>hive.aux.jars.path</name>
<value>file:///<HIVE_HOME>/ql/target/hive-exec-0.14.0-SNAPSHOT.jar</value>
</property>

我还找到了一个关于 plugins 的幻灯片分享演示文稿。 .

关于hadoop - 由于缺少 jar,无法配置 hive.exec Hook ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24316492/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com