我们如何使用带有 python 的服务主体将数据块连接到 SQL 数据库?
How can we connect databricks to SQL database using service principal with python?
我想从 Azure Databricks 中插入一些数据框作为 sql 数据库中的表。如何使用服务主体和 python 将 Azure Databricks 与 Azure SQL 数据库连接起来?
我搜索了类似的内容:
jdbcHostname = "..."
jdbcDatabase = "..."
jdbcPort = ...
jdbcUrl = "jdbc:sqlserver://{0}:{1};database={2}".format(jdbcHostname, jdbcPort, jdbcDatabase)
connectionProperties = {
"user" : "...",
"password" : "...",
"driver" : "com.microsoft.sqlserver.jdbc.SQLServerDriver"
}
但发现与Python无关。我该怎么做 ?也许像下面这样使用 pyspark?
hostname = "<servername>.database.windows.net"
server_name = "jdbc:sqlserver://{0}".format(hostname)
database_name = "<databasename>"
url = server_name + ";" + "databaseName=" + database_name + ";"
print(url)
table_name = "<tablename>"
username = "<username>"
password = dbutils.secrets.get(scope='', key='passwordScopeName')
要连接到 Azure SQL 数据库,您需要安装 SQL Spark Connector and the Microsoft Azure Active Directory Authentication Library for Python.
转到您在 Databricks 中的集群并安装
com.microsoft.azure:spark-mssql-connector_2.12_3.0:1.0.0-alpha 来自 Maven 和来自 PyPI 的 adal。
确保为 Key Vault 分配了客户端 ID 和机密
Azure SQL
应用程序需要权限才能登录进入Azure SQL访问对象。 为对象创建服务原则然后授予它对底层对象的权限,在下面的例子中我给了服务主体select权限在 dbo 架构上。 代码示例在参考.
我们还要在数据库中创建一个table
Azure SQL Snippet:
参考:
https://www.thedataswamp.com/blog/databricks-connect-to-azure-sql-with-service-principal
https://docs.microsoft.com/en-us/sql/connect/spark/connector?view=sql-server-ver15
我想从 Azure Databricks 中插入一些数据框作为 sql 数据库中的表。如何使用服务主体和 python 将 Azure Databricks 与 Azure SQL 数据库连接起来?
我搜索了类似的内容:
jdbcHostname = "..."
jdbcDatabase = "..."
jdbcPort = ...
jdbcUrl = "jdbc:sqlserver://{0}:{1};database={2}".format(jdbcHostname, jdbcPort, jdbcDatabase)
connectionProperties = {
"user" : "...",
"password" : "...",
"driver" : "com.microsoft.sqlserver.jdbc.SQLServerDriver"
}
但发现与Python无关。我该怎么做 ?也许像下面这样使用 pyspark?
hostname = "<servername>.database.windows.net"
server_name = "jdbc:sqlserver://{0}".format(hostname)
database_name = "<databasename>"
url = server_name + ";" + "databaseName=" + database_name + ";"
print(url)
table_name = "<tablename>"
username = "<username>"
password = dbutils.secrets.get(scope='', key='passwordScopeName')
要连接到 Azure SQL 数据库,您需要安装 SQL Spark Connector and the Microsoft Azure Active Directory Authentication Library for Python.
转到您在 Databricks 中的集群并安装 com.microsoft.azure:spark-mssql-connector_2.12_3.0:1.0.0-alpha 来自 Maven 和来自 PyPI 的 adal。 确保为 Key Vault 分配了客户端 ID 和机密
Azure SQL
应用程序需要权限才能登录进入Azure SQL访问对象。 为对象创建服务原则然后授予它对底层对象的权限,在下面的例子中我给了服务主体select权限在 dbo 架构上。 代码示例在参考.
我们还要在数据库中创建一个table
Azure SQL Snippet:
参考:
https://www.thedataswamp.com/blog/databricks-connect-to-azure-sql-with-service-principal
https://docs.microsoft.com/en-us/sql/connect/spark/connector?view=sql-server-ver15