如何使用 Databricks 使用服务原理通过 spark 数据框将批量数据插入 Sql Server 数据仓库

Posted

技术标签:

【中文标题】如何使用 Databricks 使用服务原理通过 spark 数据框将批量数据插入 Sql Server 数据仓库【英文标题】:How to insert bulk data through spark dataframe to Sql Server Data warehouse by using Service Principle using Databricks 【发布时间】:2019-05-08 16:46:56 【问题描述】:

我正在尝试通过 spark 数据框将批量数据插入 Databricks 中的 Sql 服务器数据仓库。为此,我使用具有服务原则的 pyodbc 模块(不是通过使用 jdbc)。我已经实现了单次插入。我找不到将批量数据插入 sql server 数据仓库的方法。有人可以帮我插入批量数据?

【问题讨论】:

【参考方案1】:

此处的示例:https://docs.databricks.com/spark/latest/data-sources/azure/sql-data-warehouse.html

虽然这倾向于建议您在两者之间使用 blob 存储帐户。

也可以使用标准的SQL接口:https://docs.databricks.com/spark/latest/data-sources/sql-databases.html

但您不能使用服务主体 - 您需要 SQL 登录。我会将连接字符串作为机密存储在密钥库中(使用 SQL 登录名)。使用您的服务主体获取密钥,然后使用连接字符串连接到 SQL。

【讨论】:

【参考方案2】:

您可以使用 polybase 很好地做到这一点,它需要一个位置来存储临时文件:

https://docs.databricks.com/data/data-sources/azure/sql-data-warehouse.html#azure-sql-data-warehouse

【讨论】:

以上是关于如何使用 Databricks 使用服务原理通过 spark 数据框将批量数据插入 Sql Server 数据仓库的主要内容,如果未能解决你的问题,请参考以下文章

PySpark:如何将 GitHub 库导入 Databricks?

通过 Python 中的 Databricks api 读取 Databricks 表?

如何使用 Azure databricks 通过 ADLS gen 2 中的多个工作表读取和写入 excel 数据

如何从 PyCharm 连接 Databricks 社区版集群

企业版Spark Databricks + 企业版Kafka Confluent 联合高效挖掘数据价值

无法在Databricks中为ADLS Gen2创建安装点