我想创建一个独立的Jupyter笔记本,该笔记本使用h2o导入和建模关系数据库中的数据。 The docs显示了一个示例,其中使用JDBC驱动程序在类路径中启动h2o,例如
java -cp <path_to_h2o_jar>:<path_to_jdbc_driver_jar> water.H2OApp
我宁愿从笔记本电脑开始h2o,因为笔记本电脑是可复制的独立工件,而不是在运行笔记本电脑之前采取特殊步骤来准备环境。如果我运行以下代码段:
import h2o
h2o.init()
connection_url = "jdbc:mysql://mysql.woolford.io/mydb"
select_query = "SELECT description, price FROM mytable"
username = "myuser"
password = "b@dp@ss"
mytable_data = h2o.import_sql_select(connection_url, select_query, username, password)
... import_sql_select
方法失败,因为未加载驱动程序:
Server error java.lang.RuntimeException:
Error: SQLException: No suitable driver found for jdbc:mysql://mysql.woolford.io/mydb
在进行h2o.init()
调用时是否可以加载驱动程序?或对此的最佳做法?
答案 0 :(得分:2)
h2o.init()
采用名为extra_classpath
的参数。您可以使用此参数提供JDBC驱动程序的路径,H2O将随该驱动程序启动。
此选项的设计目的完全是为了不必在笔记本计算机界面之外启动H2O。
示例:
import h2o
h2o.init(extra_classpath=["/Users/michal/Downloads/apache-hive-2.2.0-bin/jdbc/hive-jdbc-2.2.0-standalone.jar"])