【问题标题】:Connect to Netezza in Spark: No suitable driver error (but driver present in SPARK_CLASSPATH)连接到 Spark 中的 Netezza:没有合适的驱动程序错误(但驱动程序存在于 SPARK_CLASSPATH 中)
【发布时间】:2017-07-30 23:24:22
【问题描述】:

在启动 spark-shell 之前,我已在 SPARK_CLASSPATH 中添加了我的 Netezza jar (nzjdbc3.jar)。

这就是我在 Scala 中连接到 Netezza 的方式:

scala>> val mytable = sqlContext.load("jdbc", Map("url" -> "jdbc:netezza://host:port/dbName?user=xxxxxx&password=xxxxxx", "dbtable" -> "table_name"))

我不断收到著名的“没有合适的驱动程序”错误。我让 JDBC 连接成功地为 Oracle、Sybase、PostGres 和 MySQL 工作;问题仅在于 Netezza。

有没有办法解决这个问题?

【问题讨论】:

  • 根据驱动程序,您想尝试将driver 属性添加到映射(将 Netezza JDBC 驱动程序的名称作为值)。
  • @MarkRotteveel 添加您的评论作为答案。成功了!

标签: scala apache-spark jdbc driver netezza


【解决方案1】:

您的驱动程序似乎不是 JDBC 4 驱动程序,这意味着它不会自动加载(您可能需要检查是否有更新的版本可用)。

您可以通过将 driver 属性添加到映射中来指示加载驱动程序,并将 Netezza JDBC 驱动程序的名称作为值。

【讨论】:

  • 感谢您的建议完美运行。 sqlContext.load("jdbc", Map("url" -> "xxxxx", "dbtable" -> "yyyyy", "driver" -> "org.netezza.Driver"))
猜你喜欢
  • 2012-09-18
  • 1970-01-01
  • 2014-09-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-25
  • 2020-01-05
  • 2021-08-04
相关资源
最近更新 更多