使用 Apache Spark 连接器的 SQL 数据库
借助适用于 Azure SQL 数据库和 SQL Server 的 Apache Spark 连接器,这些数据库可以充当 Apache Spark 作业的输入数据源和输出数据接收器。 由此,可在大数据分析中使用实时事务数据,并保留临时查询或报告的结果。
与内置 JDBC 连接器相比,此连接器能够将数据批量插入 SQL 数据库。 它的性能可以比逐行插入快 10 倍到 20 倍。 适用于 SQL Server 和 Azure SQL 数据库的 Spark 连接器还支持 Microsoft Entra ID 身份验证,从而使你可以使用 Microsoft Entra ID 帐户从 Azure Databricks 安全地连接到 Azure SQL 数据库。 它提供类似于内置 JDBC 连接器的接口。 可以轻松迁移现有的 Spark 作业以使用此连接器。
要求
适用于 SQL Server 的 Spark 连接器有两个版本:一个用于 Spark 2.4,一个用于 Spark 3.x。 Spark 3.x 连接器需要 Databricks Runtime 7. x 或更高版本。 连接器受社区支持,不包括 Azure SLA 支持。 在 GitHub 上提出问题以寻求社区帮助。
组件 | 支持的版本 |
---|---|
Apache Spark | 3.0.x 和 2.4x |
Databricks Runtime | Apache Spark 3.0 连接器:Databricks Runtime 7.x 及更高版本 |
Scala | Apache Spark 3.0 连接器:2.12 Apache Spark 2.4 连接器:2.11 |
Microsoft JDBC Driver for SQL Server | 8.2 |
Microsoft SQL Server | SQL Server 2008 及更高版本 |
Azure SQL 数据库 | 支持 |
使用 Spark 连接器
有关使用 Spark 连接器的说明,请参阅 Apache Spark 连接器:SQL Server 和 Azure SQL。