添加jar到spark submit,以便在hive中使用它

7vhp5slm  于 2021-06-26  发布在  Hive
关注(0)|答案(1)|浏览(302)

我试图在spark代码中执行一个配置单元查询,但是我需要使用jar库来使用配置单元执行这个查询,因为我已经用这个jar创建了表,所以要查询表,我必须导入它。我的Spark代码:

val hiveContext=...
hiveContext.sql("ADD JAR hive-jdbc-handler-2.3.4.jar")
hiveContext.sql("SELECT * FROM TABLE")

在前面的问题之后:如何在我添加到spark的spark作业中使用hivecontext添加jar提交参数:

--jar "LOCAL PATH to hive-jdbc-handler-2.3.4.jar"

在我的应用程序日志中,我收到以下消息:

18/08/02 14:10:41,271 | INFO | 180802140805 | SessionState         | Added   [hive-jdbc-handler-2.3.4.jar] to class path
18/08/02 14:10:41,271 | INFO | 180802140805 | SessionState         | Added resources: [hive-jdbc-handler-2.3.4.jar]
18/08/02 14:10:42,179 | ERROR | 180802140805 | org.apache.hive.storage.jdbc.dao.GenericJdbcDatabaseAccessor | Error while trying to get column names.
org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC driver class 'org.postgresql.Driver'

注意,我想在集群中执行我的应用程序。我能做什么?

hc2pp10m

hc2pp10m1#

我添加jar以在spark中使用它的方法是正确的(在集群模式下不需要使用“addfile”方法)。我得到的错误是由于我正在使用的jar已损坏;我把jar换成了新的,它就起作用了。

相关问题