2017-06-02 2 views
0

Ich folge einem IBM Demo-Notebook. Ich habe ein neues Notebook in einer neuen Instanz von DSX erstellt, die ich in Bluemix geöffnet habe. DSX scheint meine bestehende DSX-Instanz mit der neuen kombiniert zu haben.DSX "HILFE: Der JDBC-Treiber für IBM dashDB/DB2 konnte nicht gefunden werden."

Wenn ich versuche, eine Verbindung zur dashDB-Instanz herzustellen, erhalte ich eine Fehlermeldung, dass die Klasse jdbc DB2Driver nicht gefunden wird. Es schlägt vor, die Gläser zum Pfad/usr/local/... hinzuzufügen. Wie kann ich das richtige DB2 Driver (db2jcc4.jar) jar zu einer neuen Bluemix-Instanz von DSX hinzufügen? Brauche ich auch db2jcc_license_cu.jar?

+0

Können Sie den Link zum Demo-Notizbuch teilen und angeben, welchen Kernel Sie verwenden? – ptitzler

+0

https://apsportal.ibm.com/analytics/notebooks/b12aa9a7-3957-46d0-883f-5fc0ed300179/view?access_token=359e55b101b22e4d9936d84f7948aea1c6d5fd956b4955937132a93116582ed0 Kernel ist Python 2 mit Funken 2.0 – JABrooks

+0

@JABrooks verstecken Sie bitte Ihre dash Anmeldeinformationen von Notebook –

Antwort

1

Option 1 Die erste Standardinstallation von ibmdbpy ist in/usr/local/.... vorhanden. Sie können dort db2jcc jar nicht hinzufügen. Wenn Sie ibmdbpy deinstallieren, das bereits installiert ist, und ibmdbpy anschließend installieren, installieren Sie es im Verzeichnis .local des Benutzers (Spark Tenant).

!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

Das funktionierte. Ref: - https://github.com/ibmdbanalytics/ibmdbpy-notebooks/blob/master/ibmdbPyDemo.ipynb

Option 2

Wenn Sie in Ordnung sind alternative Methode zu verwenden, gibt es Python-Anschluss auf DSX zur Verfügung. 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() 

Diese Sie Datenrahmen, wenn das ist Funke gibt, was Sie interessiert sind.

Danke, Charles.

+0

Ich möchte ibmdbpy verwenden. Ich habe das Notebook heruntergeladen, auf das Sie verwiesen haben, und dann ein neues Notizbuch aus dieser Datei erstellt, und es ist mit demselben Fehler fehlgeschlagen. /usr/local/src/conda3_runtime.v9/4.1.1/lib/python3.5/site-packages/jpype/_jclass.py in JClass (name) 53 jc = _jpype.findClass (name) 54, wenn jc ist None: ---> 55 raise _RUNTIMEEXCEPTION.PYEXC ("Klasse% s nicht gefunden" % name) 57 return _getClassFor (jc) java.lang.ExceptionPyRaisable: java.lang.Exception : Klasse com.ibm.db2.jcc.DB2Driver nicht gefunden – JABrooks

Verwandte Themen