scala之为什么即使提交了 JAR,Spark 也没有建立 JDBC 驱动程序依赖性

jpfss 阅读:154 2025-06-02 22:19:02 评论:0

<分区>

在将 spark 作业提交到集群之前,我正在尝试将 jdbc jar 提交到 Spark shell 进行初步分析。 这就是我正在做的 - 在 Windows 中 -

 C:\spark>spark-shell --driver-class-path C:\tera\terajdbc4.jar,C:\tera\tdgssconfig.jar --jars C:\tera\terajdbc4.jar,C:\tera\tdgssconfig.jar 

查看 Spark 文档 ( https://spark.apache.org/docs/latest/sql-programming-guide.html#jdbc-to-other-databases ) - 这应该可行。

但是当我尝试

val jdbcDF = spark.read.format("jdbc").option("url", "jdbc:teradata://xxxxx/TMODE=TERA").option("dbtable", "dummy").option("user", "xxxx").option("password", "xxxx").load() 

我明白了

java.sql.SQLException: No suitable driver 
  at java.sql.DriverManager.getDriver(DriverManager.java:315) 
  at org.apache.spark.sql.execution.datasources.jdbc.JDBCOptions$$anonfun$7.apply(JDBCOptions.scala:84) 
  at org.apache.spark.sql.execution.datasources.jdbc.JDBCOptions$$anonfun$7.apply(JDBCOptions.scala:84) 
  at scala.Option.getOrElse(Option.scala:121) 
  at org.apache.spark.sql.execution.datasources.jdbc.JDBCOptions.<init>(JDBCOptions.scala:83) 
  at org.apache.spark.sql.execution.datasources.jdbc.JDBCOptions.<init>(JDBCOptions.scala:34) 
  at org.apache.spark.sql.execution.datasources.jdbc.JdbcRelationProvider.createRelation(JdbcRelationProvider.scala:34) 
  at org.apache.spark.sql.execution.datasources.DataSource.resolveRelation(DataSource.scala:307) 
  at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:178) 
  at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:146) 
  ... 48 elided 

如果有人能告诉我正确的方法,那就太好了。


标签:Spark
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号