0

我正在关注 IBM 演示笔记本。我在 Bluemix 中打开的 DSX 新实例中创建了一个新笔记本。DSX 似乎将我现有的 DSX 实例与新的 DSX 实例结合在一起。

当我尝试连接到 dashDB 实例时,我收到一个错误,即找不到 jdbc DB2Driver 类。它建议将罐子添加到 /usr/local/... 路径。如何将正确的 DB2 驱动程序 (db2jcc4.jar) jar 添加到 DSX 的新 Bluemix 实例?我还需要 db2jcc_license_cu.jar 吗?

4

1 回答 1

1

选项 1 首先,ibmdbpy 的默认安装存在于 /usr/local/...中。您不能在此处添加 db2jcc jar。卸载已安装的 ibmdbpy,然后安装 ibmdbpy 将其安装在用户(spark 租户)的 .local 目录中。

!pip install --user lazy !pip install --user jaydebeapi !pip uninstall --yes ibmdbpy !pip install ibmdbpy --user --ignore-installed --no-deps !wget -O $HOME/.local/lib/python2.7/site-packages/ibmdbpy/db2jcc4.jar https://ibm.box.com/shared/static/lmhzyeslp1rqns04ue8dnhz2x7fb6nkc.zip

这行得通。参考:- https://github.com/ibmdbanalytics/ibmdbpy-notebooks/blob/master/ibmdbPyDemo.ipynb

选项 2

如果您可以使用替代方法,DSX 上有可用的 python 连接器。 https://datascience.ibm.com/docs/content/analyze-data/python_load.html#ibm-dashdb

from ingest.Connectors import Connectors


dashDBloadOptions = { Connectors.DASHDB.HOST              : 'hostname',
                  Connectors.DASHDB.DATABASE          : 'BLUDB',
                  Connectors.DASHDB.USERNAME          : 'username',
                  Connectors.DASHDB.PASSWORD          : 'XXXXX',
                  Connectors.DASHDB.SOURCE_TABLE_NAME : 'schema.MYTABLE'}


dashdbDF = sqlContext.read.format("com.ibm.spark.discover").options(**dashDBloadOptions).load()
dashdbDF.printSchema()
dashdbDF.show()

如果这就是你感兴趣的,这会给你火花数据框。

谢谢,查尔斯。

于 2017-06-02T21:13:42.840 回答