SQLServer 到 Azure Databricks 的转换

Posted

技术标签:

【中文标题】SQLServer 到 Azure Databricks 的转换【英文标题】:SQLServer to Azure Databricks Conversion 【发布时间】:2021-10-29 10:47:19 【问题描述】:

我正在将 SQL Server 迁移到 Databricks。

我有许多 TSQL 程序,最少 100 行代码。

我想将这些过程转换为 Spark 代码。

对于 POC(在 1 个 TSQL proc 上工作),所有源文件都被导入并创建为 GlobalTempView,并将 TSQL 转换为 Spark SQL。

并使用作为文件导出的最终 globalTempView。

现在,我在这里有一个问题,创建 GlobalTempView 并将 TSQL proc 转换为 Spark SQL 是最好的方法?或者将所有文件加载到数据框中并将 TSQL proc 重写为 Spark 数据框逻辑是最好的方法。

请告诉我将 TSQL 过程转换为 Spark SQL 或数据帧的最佳方法是什么?还有理由。

【问题讨论】:

您很可能应该包括一些这些程序实际执行的示例 【参考方案1】:

您可以使用 Databricks 使用 JDBC 驱动程序查询许多 SQL 数据库,因此无需额外任务即可将现有存储过程转换为 Spark 代码。

查看此 Databricks 官方文档以了解更多信息和步骤至Establish connection with SQL Server

将文件迁移到 DataFrame 也是另一种可能的方法,但请注意 Spark DataFrame 是不可变的,因此任何 UPDATEDELETE 操作都必须更改才能输出到新修改的 DataFrame。

我建议您通过 Executing SQL Server Stored Procedures from Databricks (PySpark) 以防您要从 Databricks 执行存储过程。

【讨论】:

以上是关于SQLServer 到 Azure Databricks 的转换的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Azure SQL 迁移到 SQL Server? [复制]

Google App Maker可以连接到Azure中的MS SqlServer数据库吗?

将本地 SQL Server 数据库同步到 Azure Windows Server SQL Server 的最佳方式是啥

将索引从 SQL Server 2008 迁移到 SQL Azure

从 Azure Databricks Notebook 访问 SQL Server

SqlServer Management 2016连接Azure数据库问题