添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

如何将Azure SQL数据库与Azure Databricks连接起来

1 人关注

我想把Azure SQL数据库和Azure Databricks连接起来。没有给出任何选项。连接的技术是什么。任何人都可以帮助我。非常感谢。

1 个评论
azure-sql-database
azure-databricks
John
John
发布于 2019-11-30
1 个回答
Alberto Morillo
Alberto Morillo
发布于 2020-09-19
0 人赞同

使用SQL Server认证和 Spark连接器 尝试以下代码。

val config = Config(Map(
  "url"            -> "kkk-server.database.windows.net:1433",
  "databaseName"   -> "MyDatabase",
  "dbTable"        -> "dbo.Clients",
  "user"           -> "login",
  "password"       -> "xxxxxxxx",
  "connectTimeout" -> "5", //seconds
  "queryTimeout"   -> "5"  //seconds

使用活动目录认证,你可以尝试以下代码。

import com.microsoft.azure.sqldb.spark.config.Config
import com.microsoft.azure.sqldb.spark.connect._
val config = Config(Map(
  "url"            -> "kkk-server.database.windows.net:1433",
  "databaseName"   -> "MyDatabase",
  "dbTable"        -> "dbo.Clients",
  "user"           -> "AD-account",
  "password"       -> "xxxxxxxx",
  "connectTimeout" -> "5", //seconds
  "queryTimeout"   -> "5"  //seconds
val collection = spark.read.sqlDB(config)
collection.show()

如果你对使用令牌的AD认证感兴趣,请访问篇文章。

如果你使用的是Python和Azure Databricks,请尝试使用JDBC的以下代码。

jdbcHostname = "xxxxxxx.database.windows.net"
jdbcDatabase = "yyyyyy"
jdbcPort = 1433
#jdbcUrl = "jdbc:sqlserver://{0}:{1};database={2};user={3};password={4}".format(jdbcHostname, jdbcPort, jdbcDatabase, username, password)
jdbcUrl = "jdbc:sqlserver://{0}:{1};database={2}".format(jdbcHostname, jdbcPort, jdbcDatabase)
connectionProperties = {
  "user" : jdbcUsername,
  "password" : jdbcPassword,
  "driver" : "com.microsoft.sqlserver.jdbc.SQLServerDriver"