连接方式应该很多,现在记录本人目前学习到的一种方式。
以下代码将可以将sqlserver中的表加载到databricks视图中,当然也可创建表来接收外部数据。
- %sql
-
- CREATE TEMPORARY VIEW view-name
- USING JDBC
- OPTIONS (
- url "jdbc:sqlserver://
;database=,.;Authentication=;", - dbtable "
", - user '
' , - password '
' - )
可以直接sql操作上一步的数据来直接读取数据
- %sql
-
- select * from view-name
有时候我们需要在notebook为spark的环境下加载数据,可以通过以下方式操作步骤1中建立的视图来读取数据,将数据加载到Dataframe中。
- %python
-
- data_pd = spark.sql("select * from view-name").toPandas()
待测试更新。。。
可以通过以下方式将dataframe数据写入到数据库,url、user、password参数与上文“一”中读取数据时相同。driver为数据库驱动,比如我使用的是sqlserver,driver为
" com.microsoft.sqlserver.jdbc.SQLServerDriver"
- %spark
-
- spark.createDataFrame(data_pd).write \
- .mode("append") \
- .format("jdbc") \
- .option("url", url) \
- .option("dbtable", dbtable) \
- .option("user", user) \
- .option("password", password) \
- .option("driver", driver) \
- .save()