【问题标题】:SparkSQL Hive Error : "HikariCP" not found in the CLASSPATHSparkSQL Hive 错误:在 CLASSPATH 中找不到“HikariCP”
【发布时间】:2019-07-24 02:53:25
【问题描述】:

我将 Hive 配置为 mySQL 作为我的元存储。我可以进入hive shell并成功创建表。

Spark 版本:2.4.0

Hive 版本:3.1.1

当我尝试使用 spark submit 运行 SparkSQL 程序时,出现以下错误。

2019-03-02 15:43:41 WARN  HiveMetaStore:622 - Retrying creating default database after error: Error creating transactional connection factory
javax.jdo.JDOFatalInternalException: Error creating transactional connection factory
......
......
Exception in thread "main" org.apache.spark.sql.AnalysisException: java.lang.RuntimeException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient;
......
......
org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient;
Caused by: org.datanucleus.exceptions.NucleusException: Attempt to invoke the "HikariCP" plugin to create a ConnectionPool gave an error : The connection pool plugin of type "HikariCP" was not found in the CLASSPATH!

如果有人可以在这方面帮助我,请告诉我。

【问题讨论】:

    标签: apache-spark hive apache-spark-sql


    【解决方案1】:

    我不知道你是否已经解决了这个问题。这是我的建议。

    默认的数据库连接是 hive-site.xml 中的 HikariCP。您可以在 hive-site.xml 中搜索:datanucleus.connectionPoolingType。值为 HikariCP。因此,您需要将其更改为 dbcp,因为您使用 Mysql 作为元存储。

    最后,不要忘记将 mysql-connector-java-5.x.x.jar 添加到路径中,例如 /home/hadoop/spark-2.3.0-bin-hadoop2.7/jars

    【讨论】:

      猜你喜欢
      • 2016-08-06
      • 2017-07-05
      • 2015-07-27
      • 1970-01-01
      • 2020-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多