0

Вот мой код:Как получить доступ к таблице postgres из pyspark в IBM Data Science Experience?

uname = "xxxxx" 
pword = "xxxxx" 
dbUrl = "jdbc:postgresql:dbserver" 
table = "xxxxx" 
jdbcDF = spark.read.format("jdbc").option("url", dbUrl).option("dbtable",table).option("user", uname).option("password", pword).load() 

Я получаю сообщение об ошибке "Нет подходящего драйвера" после добавления банки драйвера Postgres (% Addjar -f https://jdbc.postgresql.org/download/postgresql-9.4.1207.jre7.jar). Есть ли рабочий пример загрузки данных из postgres в pyspark 2.0 на DSX?

ответ

1

Пожалуйста сделайте использование менеджера PixieDust пакета для установки драйвера Postgres на уровне искры обслуживания.

http://datascience.ibm.com/docs/content/analyze-data/Package-Manager.html

Поскольку PixieDust поддерживается только искры 1.6, запустите

pixiedust.installPackage("https://jdbc.postgresql.org/download/postgresql-9.4.1207.jre7.jar")

После установки этого рестарта ядро, а затем Переключить на искру 2.0 для запуска соединения Postgres, чтобы получить искру dataframe с использованием sparksession.

uname = "username"

pword = "xxxxxx"

dbUrl = "jdbc:postgresql://hostname:10635/compose?user="+uname+"&password="+pword

table = "tablename"

Df = spark.read.format('jdbc').options(url=dbUrl,database='compose',dbtable=table).load()

houseDf.take(1)

Рабочий ноутбук: -

https://apsportal.ibm.com/analytics/notebooks/8b220408-6fc7-48a9-8350-246fbbf10ac8/view?access_token=7297af80b2e4109087a78365e7df3205f6ed9d0840c0c46d2208bc00ed0b0274

Спасибо, Чарльз.

+0

Это сработало! Спасибо. –

0

Просто укажите опцию драйвера

option("driver", "org.postgresql.Driver") 
+0

У вас есть пример того, как я могу это сделать на ноутбуке в Data Science Experience? –