gpt4 book ai didi

apache-spark - Tez 上的 Hive 在 Spark 2 中不起作用

转载 作者:行者123 更新时间:2023-12-04 05:27:06 26 4
gpt4 key购买 nike

当使用带有 spark 1.6.2 的 HDP 2.5 时,我们使用带有 Tez 的 Hive 作为其执行引擎并且它工作正常。

但是当我们使用 spark 2.1.0 迁移到 HDP 2.6 时,Hive 无法使用 Tez 作为其执行引擎,并且在 DataFrame.saveAsTable 时抛出以下异常API 被调用:

java.lang.NoClassDefFoundError: org/apache/tez/dag/api/SessionNotRunning at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:529) at org.apache.spark.sql.hive.client.HiveClientImpl.<init> HiveClientImpl.scala:188)

在查看 this 的答案后问题,我们将 Hive 执行引擎切换为 MR(MapReduce)而不是 Tez,并且它有效。

但是,我们希望在 Tez 上使用 Hive。为了让 Hive on Tez 正常工作,解决上述异常需要什么?

最佳答案

当 spark 作业在 YARN CLUSTER 模式下运行时,我遇到了同样的问题,并且在将正确的 hive-site.xml 添加到(添加到 spark-default 配置)“spark.yarn.dist.files”

基本上有两个不同的 hive-site.xml 文件,一个用于配置单元配置:/usr/hdp/current/hive-client/conf/hive-site.xml另一个是 spark 的较轻版本(只有 spark 与 hive 一起使用的详细信息):/etc/spark//0/hive-site.xml(请检查一次路径以进行设置)

我们需要为 spark.yarn.dist.files 使用第二个文件。

关于apache-spark - Tez 上的 Hive 在 Spark 2 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43757969/

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