Spark SQL 訪問hive 出現異常:org.datanucleus.exceptions.NucleusDataStoreException
異常:
org.datanucleus.exceptions.NucleusDataStoreException: Exception thrown obtaining schema column information from datastore
出現問題原因:
1、hive-site.xml 中配置的是
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.cj.jdbc.Driver</value>
</property>
而com.mysql.cj.jdbc.Driver 需要的是6.0以上的版本,因此pom.xml檔案使用的配置如下:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>6.0.6</version>
</dependency>
解決方法,通過網上搜索:
https://stackoverflow.com/questions/45098841/how-to-use-hive-metastore-with-mysql-for-thrift-server-or-spark-shell/45105368#45105368
建議把版本從6.0.6改為5.1.36,因此修改了hive-site.xml的配置為:
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
pom.xml中的mysql-connector-java版本改為5.1.36就正常了。