Consideraciones sobre las puertas de enlace de datos locales y de la red virtual para destinos de datos en Dataflow Gen2

En este artículo se explican las limitaciones y consideraciones al usar la puerta de enlace de datos con destinos de datos en Dataflow Gen2.

Problemas de red con el puerto 1433 al hacer referencia a consultas

Al usar Microsoft Fabric Dataflow Gen2 con una puerta de enlace de datos local, es posible que se produzcan problemas durante el proceso de actualización del flujo de datos. Esto sucede cuando la puerta de enlace no puede conectarse al almacén de almacenamiento provisional del flujo de datos para leer datos antes de usarlos en una consulta que haga referencia a los datos almacenados provisionalmente. Normalmente, este problema se produce si las reglas de firewall en el servidor de puerta de enlace o los servidores proxy del cliente bloquean el tráfico saliente a los puntos de conexión necesarios a través del puerto 1433.

Escenarios en los que no se requiere acceso al puerto 1433

La actualización del flujo de datos debe realizarse correctamente sin acceso al puerto 1433 en estos casos:

  • El flujo de datos tiene una sola consulta que escribe en un Lakehouse, y ninguna otra consulta hace referencia a esta.
  • Copia rápida está deshabilitada.
  • El flujo de datos tiene varias consultas, pero ninguna hace referencia a las demás.

Escenarios en los que se requiere acceso al puerto 1433

Si varias consultas se hacen referencia entre sí, es posible que se produzca un error en la actualización del flujo de datos debido a problemas de red con el puerto 1433. El motor de flujo de datos debe leer datos del staging Lakehouse mediante el protocolo TDS por el puerto 1433. Durante la actualización, las actualizaciones de tabla pueden mostrarse como "Correcta", pero la sección de actividades podría mostrar "Error". Los detalles del error de la actividad WriteToDatabaseTableFrom_... pueden incluir el siguiente mensaje:

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

Nota:

El motor de flujo de datos utiliza un extremo HTTPS de salida (puerto 443) para escribir datos en un Lakehouse. Sin embargo, la lectura de datos de Lakehouse requiere el protocolo TDS (TCP a través del puerto 1433). Esto explica por qué la primera consulta podría ejecutarse correctamente, mientras que una consulta que haga referencia a ella podría fallar, aunque ambos Lakehouses estén en la misma instancia de OneLake.

Nota:

Es importante tener en cuenta que muchos servicios proxy están diseñados solo para el tráfico TCP, HTTP o TLS genérico y no admiten el protocolo TDS.

Solucionar problemas

Para solucionar el problema, revise los detalles del error de la tabla o actividad que falló. Estos detalles proporcionan información sobre el error encontrado.

Captura de pantalla de la actividad WriteToDatabaseTablefrom que muestra el mensaje de error.

Solución: actualización de reglas de firewall en el servidor de puerta de enlace

Actualice las reglas de firewall en el servidor de puerta de enlace o los servidores proxy del cliente para permitir el tráfico saliente a los siguientes puntos de conexión. Si el firewall no admite caracteres comodín, use las direcciones IP de Azure IP Ranges and Service Tags. Mantenga estos datos sincronizados mensualmente.

  • Protocolo: TCP
  • Puntos de conexión: *.datawarehouse.pbidedicated.windows.net, *.datawarehouse.fabric.microsoft.com, *.dfs.fabric.microsoft.com
  • Puerto:1433

Nota:

Si la capacidad está en una región lejos de la puerta de enlace, es posible que tenga que permitir el acceso a varios puntos de conexión (*.cloudapp.azure.com). Si la regla no intercepta el tráfico a *.cloudapp.azure.com, permita el acceso a las direcciones IP de su región de datos en su firewall.

Para restringir el alcance del punto de conexión a la instancia real de OneLake en un área de trabajo, vaya al área de trabajo de Fabric, busque DataflowsStagingLakehouse y seleccione Ver detalles. Copie y pegue la cadena de conexión de SQL.

Captura de pantalla del área de trabajo de Fabric con DataflowsStagingLakehouse, con la elipsis seleccionada y la opción Ver detalles enfatizada.

Captura de pantalla de la información detallada de DataflowsStagingLakehouse, con la cadena de conexión SQL enfatizada.

El nombre del punto de conexión tiene un aspecto similar al de este ejemplo:

x6eps4xrq2xudenlfv6naeo3i4-l27nd6wdk4oephe4gz4j7mdzka.datawarehouse.pbidedicated.windows.net

Solución alternativa: Combinar consultas o deshabilitar el almacenamiento provisional

Si no puede actualizar las reglas de firewall, pruebe estas soluciones alternativas:

  • Combine las consultas que se hacen referencia entre sí en una sola consulta.
  • Deshabilite el almacenamiento provisional en todas las consultas a las que se hace referencia.

Estas opciones no son soluciones finales y podrían afectar al rendimiento con transformaciones complejas, pero pueden servir como correcciones temporales hasta que se actualicen las reglas de firewall.