数据流 Gen2 中数据目标的本地数据网关注意事项
本文尝试列出在数据流 Gen2 中结合使用数据网关与数据目标方案时的限制和注意事项。
评估超时
使用网关和数据目标功能的数据流限制为一小时的评估或刷新时间。
有关此限制的详细信息,请参阅文章本地数据网关故障排除。
端口 1433 的网络问题
将 Microsoft Fabric Dataflow Gen2 与本地数据网关配合使用时,可能会遇到数据流刷新过程的问题。 当网关无法连接到数据流暂存 Lakehouse 以在将数据复制到所需数据目标之前读取数据时,就会出现潜在问题。 无论使用哪种类型的数据目标,都可能发生此问题。
在整体数据流刷新期间,表刷新可以显示为“成功”,但活动部分显示为“失败”。 活动 WriteToDatabaseTableFrom_...
的错误详细信息指示以下错误:
Mashup Exception Error: Couldn't refresh the entity because of an issue with the mashup document MashupException.Error: Microsoft SQL: A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: TCP Provider, error: 0 - An attempt was made to access a socket in a way forbidden by its access permissions.) Details: DataSourceKind = Lakehouse;DataSourcePath = Lakehouse;Message = A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: TCP Provider, error: 0 - An attempt was made to access a socket in a way forbidden by its access permissions.);ErrorCode = -2146232060;Number = 10013
注意
从体系结构的角度来看,数据流引擎使用出站 HTTPS(端口 443)终结点将数据写入湖屋。 但是,从 Lakehouse 读取数据需要使用 TDS 协议(通过端口 1433 上的 TCP)。 此协议用于将数据从过渡湖屋复制到数据目标。 这解释了为什么即使两个湖屋位于同一 OneLake 实例中,表加载步骤也会在数据目标活动失败时成功。
故障排除
若要排查问题,请执行以下步骤:
确认数据流配置了数据目标。
验证数据流刷新是否失败,表刷新显示为“成功”,活动显示为“失败”。
查看活动
WriteToDatabaseTableFrom_...
的错误详细信息,该活动提供有关所遇到的错误的信息。
解决方案:在运行网关的服务器上设置新的防火墙规则
需要更新网关服务器和/或客户代理服务器上的防火墙规则,以允许从网关服务器到以下终结点的出站流量。 如果防火墙不支持通配符,请使用 Azure IP 范围和服务标记中的 IP 地址。 请注意,它们需要每月保持同步。
- 协议:TCP
- 端点:*.datawarehouse.pbidedicated.windows.net、*.datawarehouse.fabric.microsoft.com、*.dfs.fabric.microsoft.com
- 端口:1433
注意
在某些情况下,特别是当容量位于距离网关最近的区域时,可能需要配置防火墙以允许访问多个端点 (*cloudapp.azure.com)。 需要进行此调整以适应在这些情况下可能发生的重定向。 如果发往 *.cloudapp.azure.com 的流量没有被规则拦截,也可以在防火墙中允许数据区域的 IP 地址。
如果要将终结点的范围缩小到工作区中的实际 OneLake 实例,(而不是通配符 *.datawarehouse.pbidedicated.windows.net),可以通过导航到 Fabric 工作区、查找 DataflowsStagingLakehouse
并选择“查看详细信息”到该 URL。 然后,复制并粘贴 SQL 连接字符串。
整个终结点名称类似于以下示例:
x6eps4xrq2xudenlfv6naeo3i4-l27nd6wdk4oephe4gz4j7mdzka.datawarehouse.pbidedicated.windows.net
解决方法:在单独的引入和加载数据流中拆分数据流
如果无法更新防火墙规则,可以将数据流拆分为两个单独的数据流。 第一个数据流负责将数据引入暂存湖屋。 第二个数据流负责将数据从暂存湖屋加载到数据目标。 此解决方法并不理想,因为它需要使用两个单独的数据流,但在防火墙规则更新之前,它可以用作临时解决方案。
若要实现此解决方法,请执行以下步骤: