在 Spark 中连接到 Netezza:没有合适的驱动程序错误(但 SPARK_CLASSPATH 中存在驱动程序)
Connect to Netezza in Spark: No suitable driver error (but driver present in SPARK_CLASSPATH)
在启动 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"))
我不断收到著名的 "no suitable driver" 错误。我获得了 JDBC 个连接,可以成功用于 Oracle、Sybase、PostGres 和 MySQL;问题仅出在 Netezza 上。
有没有办法解决这个问题?
看起来您的驱动程序不是 JDBC 4 驱动程序,这意味着它不会自动加载(您可能需要检查是否有可用的更新版本)。
您可以通过将 driver
属性 添加到具有 Netezza JDBC 驱动程序名称作为值的映射来指示要加载的驱动程序。
在启动 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"))
我不断收到著名的 "no suitable driver" 错误。我获得了 JDBC 个连接,可以成功用于 Oracle、Sybase、PostGres 和 MySQL;问题仅出在 Netezza 上。
有没有办法解决这个问题?
看起来您的驱动程序不是 JDBC 4 驱动程序,这意味着它不会自动加载(您可能需要检查是否有可用的更新版本)。
您可以通过将 driver
属性 添加到具有 Netezza JDBC 驱动程序名称作为值的映射来指示要加载的驱动程序。