连接到 Microsoft Fabric 中的数据仓库
适用于:SQL 分析终结点和 Microsoft Fabric 中的仓库
在 Microsoft Fabric 中,可以通过表格数据流或 TDS 终结点访问湖屋 SQL 分析终结点或仓库,这是所有与 SQL Server 终结点交互的新式 Web 应用程序所熟悉的。 这称为 Microsoft Fabric 用户界面中的 SQL 连接字符串。
本文介绍了如何连接到 SQL 分析终结点或仓库。
如果要开始,必须满足以下先决条件:
向 Fabric 中的仓库进行身份验证
在 Microsoft Fabric 中,通过 SQL 连接字符串支持两种类型的经过身份验证的用户:
- Microsoft Entra ID(以前为 Azure Active Directory)用户主体或用户标识
- Microsoft Entra ID(以前为 Azure Active Directory)服务主体
SQL 连接字符串要求打开 TCP 端口 1433。 TCP 1433 是标准的 SQL Server 端口号。 SQL 连接字符串还遵循仓库或湖屋 SQL 分析终结点安全模型进行数据访问。 可以获取用户有权访问的所有对象的数据。
检索 MySQL 连接字符串
若要检索连接字符串,请执行以下步骤:
导航到工作区,选择“仓库”,然后选择“更多选项”。
选择“复制 SQL 连接字符串”,将连接字符串复制到剪贴板。
SQL Server Management Studio (SSMS) 入门
以下步骤详细介绍了如何从 Microsoft Fabric 工作区开始并将仓库连接到 SQL Server Management Studio (SSMS)。
打开 SSMS 时,会出现“连接到服务器”窗口。 如该窗口已打开,可以选择“对象资源管理器”>“连接”>“数据库引擎”进行手动连接。
“连接到服务器”窗口打开后,将从本文上一部分复制的连接字符串粘贴到“服务器名称”框中。 选择“连接”,然后继续使用适当的凭据进行身份验证。 请记住,仅支持 Microsoft Entra 多重身份验证(MFA)。
建立连接后,对象资源管理器会显示工作区中连接的仓库及其各自的表和视图,所有这些都可供查询。
通过 SSMS(或 ADS)连接时,会看到 SQL 分析终结点和仓库都列为仓库,并且很难区分这两种项目类型及其功能。 因此,我们强烈建议你采用命名约定,以便在使用 Microsoft Fabric 门户体验之外的工具时能够轻松区分这两种项目类型。
使用 Power BI 进行连接
仓库或湖屋 SQL 分析终结点是 Power BI 中完全受支持的原生数据源,无需使用 SQL 连接字符串。 “数据”窗格将公开你有权直接访问的所有仓库。 这使你可以按工作区轻松找到仓库,并:
- 选择仓库。
- 选择实体。
- 加载数据 - 选择数据连接模式:导入或 DirectQuery。
有关详细信息,请参阅在 Microsoft Fabric 中创建报表。
使用 OLE DB 进行连接
我们支持使用 OLE DB 连接到仓库或 SQL 分析终结点。 请确保运行最新的 Microsoft OLE DB Driver for SQL Server。
使用 ODBC 进行连接
Microsoft Fabric 支持使用 ODBC 连接到仓库或 SQL 分析终结点。 请确保运行最新的 ODBC Driver for SQL Server。 使用 Microsoft Entra ID(以前称为 Azure Active Directory)身份验证。
使用 JDBC 进行连接
Microsoft Fabric 还支持使用 Java 数据库连接 (JDBC) 驱动程序连接到仓库或 SQL 分析终结点。
通过 JDBC 建立连接时,检查以下依赖项:
添加项目,选择“添加项目”并在如下所示的窗口中添加以下四个依赖项,然后选择“下载/更新”以加载所有依赖项。
选择“测试连接”,然后选择“完成”。
<dependency> <groupId>com.microsoft.azure</groupId> <artifactId>msal4j</artifactId> <version>1.13.3</version> </dependency> <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>mssql-jdbc_auth</artifactId> <version>11.2.1.x86</version> </dependency> <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>mssql-jdbc</artifactId> <version>12.1.0.jre11-preview</version> </dependency> <dependency> <groupId>com.microsoft.aad</groupId> <artifactId>adal</artifactId> <version>4.2.2</version> </dependency>
使用 dbt 进行连接
dbt
适配器是一个数据转换框架,它使用软件工程最佳做法(如测试和版本控制)来减少代码、自动执行依赖项管理并交付更可靠的数据,所有这些都通过 SQL 实现。
特定于 dbt
数据平台的适配器插件允许用户连接到所选的数据存储。 若要从 dbt
连接到 Microsoft Fabric 中的 Synapse 数据仓库,请使用 dbt-fabric
适配器。 同样,Azure Synapse Analytics 专用 SQL 池数据源也有自己的适配器,即 dbt-synapse
。
这两个适配器都支持 Microsoft Entra ID(以前为 Azure Active Directory)身份验证,并允许开发人员使用 az cli authentication
。 但是,dbt-fabric
不支持 SQL 身份验证
DBT Fabric DW 适配器使用 pyodbc
库与仓库建立连接。 pyodbc
库是使用 Python 语言(采用 Python 数据库 API 规范 v2.0)的 ODBC 实施。 pyodbc
库使用 TDS(表数据流式处理)代理服务,通过 msodbc
连接结构中的 SQLDriverConnect 将连接字符串直接传递到数据库驱动程序。
有关详细信息,请参阅 Microsoft Fabric Synapse 数据仓库 dbt 适配器设置和 Microsoft Fabric Synapse 数据仓库 dbt 适配器配置。
通过其他方式进行连接
任何第三方工具都可以通过 ODBC 或 OLE DB 驱动程序使用 SQL 连接字符串,以通过 Microsoft Entra ID(以前为 Azure Active Directory)身份验证连接到 Microsoft Fabric 仓库或 SQL 分析终结点。
自定义应用程序
在 Microsoft Fabric 中,仓库和湖屋 SQL 分析终结点提供 SQL 连接字符串。 可以从庞大的 SQL 工具生态系统访问数据,前提是它们可以使用 Microsoft Entra ID(以前为 Azure Active Directory)进行身份验证。 有关详细信息,请参阅 Microsoft SQL 数据库的连接库。
注意事项和限制
- 不支持 SQL 身份验证。
- Microsoft Fabric 仓库不支持多重活动结果集 (MARS)。 MARS 默认处于禁用状态,但如果连接字符串中包含
MultipleActiveResultSets
,则应将其删除或设置为 false。 - 连接到仓库时,可能会收到错误“令牌大小超出了允许的最大有效负载大小”。 这是由于工作区中有大量仓库,或者该仓库是大量 Microsoft Entra组的成员。 如果出现此错误,请与工作区管理员协作以清理未使用的仓库并重试连接,或者如果问题仍然存在,请联系支持人员。
- 不支持来自 SQL Server 的链接服务器连接。
相关内容
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈