Considerações sobre gateway de dados local para destinos de dados no Dataflow Gen2
Este artigo tenta listar as limitações e considerações ao usar o Data Gateway com cenários de destinos de dados no Dataflow Gen2.
Tempos limite de avaliação
Os fluxos de dados que usam um Gateway e o recurso de destino de dados são limitados a um tempo de avaliação ou atualização de uma hora.
Saiba mais sobre essa limitação no artigo Solucionar problemas do gateway de dados local.
Problemas de rede com a porta 1433
Ao usar o Microsoft Fabric Dataflow Gen2 com um gateway de dados local, você pode encontrar problemas com o processo de atualização do fluxo de dados. O problema subjacente ocorre quando o gateway não consegue se conectar ao fluxo de dados preparo Lakehouse para ler os dados antes de copiá-los para o destino de dados desejado. Esse problema pode ocorrer independentemente do tipo de destino de dados que está sendo usado.
Durante a atualização geral do fluxo de dados, a atualização das tabelas pode ser mostrada como "Bem-sucedida", mas a seção de atividades é mostrada como "Falha". Os detalhes do erro para a atividade WriteToDatabaseTableFrom_...
indicam o seguinte erro:
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
De uma perspetiva arquitetônica, o mecanismo de fluxo de dados usa um ponto de extremidade HTTPS (porta 443) de saída para gravar dados em um Lakehouse. No entanto, a leitura de dados do Lakehouse requer o uso do protocolo TDS (TCP sobre a porta 1433). Este protocolo é utilizado para copiar os dados da casa do lago de preparo para o destino dos dados. Isso explica por que a etapa Carregamento de tabelas é bem-sucedida enquanto a atividade de destino de dados falha, mesmo quando ambas as casas de lago estão na mesma instância OneLake.
Resolução de Problemas
Para resolver o problema, siga estes passos:
Confirme se o fluxo de dados está configurado com um destino de dados.
Verifique se a atualização do fluxo de dados falha, com a atualização de tabelas mostrando como "Bem-sucedida" e as atividades mostrando como "Falha".
Revise os detalhes do erro para a Atividade
WriteToDatabaseTableFrom_...
, que fornece informações sobre o erro encontrado.
Solução: defina novas regras de firewall no servidor que executa o gateway
As regras de firewall no servidor gateway e/ou nos servidores proxy do cliente precisam ser atualizadas para permitir o tráfego de saída do servidor gateway para os pontos de extremidade abaixo. Se o firewall não oferecer suporte a curingas, use os endereços IP dos Intervalos de IP e Tags de Serviço do Azure. Observe que eles precisarão ser mantidos em sincronia a cada mês.
- Protocolo: TCP
- Parâmetros de avaliação: *.datawarehouse.pbidedicated.windows.net, *.datawarehouse.fabric.microsoft.com, *.dfs.fabric.microsoft.com
- Porta: 1433
Nota
Em determinados cenários, especialmente quando a capacidade está localizada em uma região que não é a mais próxima do Gateway, pode ser necessário configurar o firewall para permitir o acesso a vários pontos de extremidade(*cloudapp.azure.com). Esse ajuste é necessário para acomodar redirecionamentos que possam ocorrer nessas condições. Se o tráfego destinado a *.cloudapp.azure.com não for intercetado pela regra, você pode, alternativamente, permitir os endereços IP para sua região de dados em seu firewall.
Se você quiser restringir o escopo do ponto de extremidade para a instância real do OneLake em um espaço de trabalho (em vez do curinga *.datawarehouse.pbidedicated.windows.net), essa URL pode ser encontrada navegando até o espaço de trabalho Malha, localizando DataflowsStagingLakehouse
e selecionando Exibir detalhes. Em seguida, copie e cole a cadeia de conexão SQL.
O nome do ponto de extremidade inteiro é semelhante ao exemplo a seguir:
x6eps4xrq2xudenlfv6naeo3i4-l27nd6wdk4oephe4gz4j7mdzka.datawarehouse.pbidedicated.windows.net
Solução alternativa: divida o fluxo de dados em uma ingestão separada e carregue o fluxo de dados
Se não conseguir atualizar as regras de firewall, você poderá dividir o fluxo de dados em dois fluxos de dados separados. O primeiro fluxo de dados é responsável por ingerir os dados na casa do lago de preparação. O segundo fluxo de dados é responsável por carregar os dados da casa do lago de preparo para o destino dos dados. Essa solução alternativa não é ideal, pois requer o uso de dois fluxos de dados separados, mas pode ser usada como uma solução temporária até que as regras de firewall possam ser atualizadas.
Para implementar esta solução alternativa, siga estes passos:
Remova o destino de dados do seu fluxo de dados atual que ingere dados por meio do gateway.
Crie um novo fluxo de dados que use o conector de fluxo de dados para se conectar ao fluxo de dados de ingestão. Esse fluxo de dados é responsável por ingerir os dados do preparo para o destino dos dados.
Defina o destino de dados como o destino de dados de sua escolha para esse novo fluxo de dados.
Opcionalmente, você pode desabilitar o preparo para esse novo fluxo de dados. Essa alteração impede que os dados sejam copiados para a casa do lago de preparo novamente e, em vez disso, copia os dados diretamente do fluxo de dados de ingestão para o destino dos dados.