Как подключиться к DashDB из ноутбука Jupyter в DSX?
Я пытаюсь извлечь некоторые данные из базы данных DashDB и проанализировать их в блокноте Jupyter, все в рамках Data Science Experience (DSX). В идеале мы создали бы DataPrame Pandas для анализа.
2 ответа
Вот как я смог это сделать:
# First import the relevant libraries
import jaydebeapi
from ibmdbpy import IdaDataBase
from ibmdbpy import IdaDataFrame
Создайте хеш с учетными данными:
credentials_dashdb = {
'host':'bluemix05.bluforcloud.com',
'port':'50000',
'user':'dash123456',
'password':"""mypassword""",
'database':'BLUDB'
}
Построить соединение:
dsn="DASHDB;Database=BLUDB;Hostname=" + credentials_dashdb["host"] + ";Port=50000;PROTOCOL=TCPIP;UID=" + credentials_dashdb["user"] + ";PWD=" + credentials_dashdb["password"]
idadb=IdaDataBase(dsn)
Импортируйте данные:
# See all the table names in the database
df=idadb.show_tables(show_all = True)
# Show the table names
df.head(100)
# create a pandas dataframe from the table, show the first few rows
pandas_df = IdaDataFrame(idadb, 'MY_TABLE')
pandas_df.head()
Надеюсь, что это помогает кому-то. Большое спасибо Свену Хафенегеру и этому ноутбуку за это решение!
Мэтт, вы можете отбросить "import jaydebeapi", потому что вы используете ODBC-драйвер dashDB вместе с dsn, который вы создаете (что также является рекомендуемым способом использования ibmdbpy в DSX).
Ссылка на блокнот Свена указывает на блокнот R. Не уверен, что это то, что вы хотели. В любом случае, вот мой официальный пример ноутбука DSX для ibmdbpy, который освещает решение, которое вы описали выше.