将 Scala 连接到 Azure DW 转换为 PySpark

我正在尝试在 ADW 更新表,但到目前为止我找到的唯一途径是通过 scala,我不太熟悉它,我希望与 PySpark 具有相同的功能。


这是 Scala 代码,但我被困在试图翻译它


import java.util.Properties

import java.sql.DriverManager


val jdbcUsername = "xxxxx"

val jdbcPassword = "xxxxx"

val driverClass = "com.microsoft.sqlserver.jdbc.SQLServerDriver"


val jdbcUrl = s"xxxx"


val connectionProperties = new Properties()


connectionProperties.put("user", s"${jdbcUsername}")

connectionProperties.put("password", s"${jdbcPassword}")

connectionProperties.setProperty("Driver", driverClass)


val connection = DriverManager.getConnection(jdbcUrl, jdbcUsername, jdbcPassword)

val stmt = connection.createStatement()

val sql = "delete from table where condition"


stmt.execute(sql)

connection.close()

我认为必须有一种使用 PySpark 在 Azure SQL 上执行命令的通用方法,但我还没有找到。


慕少森
浏览 178回答 1
1回答

偶然的你

听起来你想直接对Azure Databricks的Python中的Azure SQL数据库表进行删除操作,但我试图意识到它失败了,因为没有办法为pyodbc和安装linux odbc驱动程序pymssql。这是有关我的测试的一些屏幕截图。图 1. 成功安装pymssql,pypyodbc在集群上,但失败pyodbc图 2. 尝试连接我的 Azure SQL 数据库时遇到有关缺少 linux odbc 驱动程序的问题所以除了使用官方教程介绍的Scala/Java之外Use HDInsight Spark cluster to read and write data to Azure SQL database,使用Python的唯一变通方法是调用一个webhook url来实现其他Azure服务的功能,比如Python中的Azure Function。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python