Limitações do conector de ingestão do Microsoft Dynamics 365
Visualização
Este recurso está em Pré-visualização Pública.
Esta página descreve as limitações e restrições do conector Microsoft Dynamics 365 no LakeFlow Connect.
Limitações gerais do conector SaaS
O conector do Dynamics 365 compartilha limitações comuns a todos os conectores SaaS no LakeFlow Connect:
- Ao executar um pipeline agendado, os alertas não são acionados imediatamente. Em vez disso, elas são acionadas na próxima execução da atualização.
- Quando uma tabela de origem é excluída, a tabela de destino não é excluída automaticamente. Você deve excluir a tabela de destino manualmente. Esse comportamento não é consistente com o comportamento do pipeline declarativo LakeFlow Spark .
- Durante períodos de manutenção da fonte de dados, o Databricks poderá não conseguir acessar seus dados.
- Se o nome de uma tabela de origem entrar em conflito com o nome de uma tabela de destino existente, a atualização do pipeline falhará.
- O suporte pipeline com múltiplos destinos é feito exclusivamente via API.
- Opcionalmente, você pode renomear uma tabela que você importa. Se você renomear uma tabela em seu pipeline, ele se tornará um pipeline somente para API e você não poderá mais editá- pipeline na interface do usuário.
- A seleção e a deseleção em nível de coluna são exclusivas da API.
- Se você selecionar uma coluna depois que um pipeline já tiver sido iniciado, o conector não preencherá automaticamente os dados da nova coluna. Para ingerir dados históricos, execute manualmente uma refresh completa na tabela.
- O Databricks não consegue ingerir duas ou mais tabelas com o mesmo nome no mesmo pipeline, mesmo que elas provenham de esquemas de origem diferentes.
- O sistema de origem pressupõe que as colunas do cursor estejam em ordem crescente monotônica.
- Com o SCD tipo 1 ativado, as exclusões não produzem um evento
deleteexplícito no feed de dados de alteração. Para exclusões auditáveis, use o tipo SCD 2 se o conector o suportar. Para obter detalhes, consulte o exemplo: Processamento de SCD tipo 1 e SCD tipo 2 com dados de origem CDF. - O conector ingere dados brutos sem transformações. Use o pipeline declarativo LakeFlow Spark downstream para transformações.
Requisitos do Azure Synapse Link
O conector do Dynamics 365 requer que o Azure Synapse Link para Dataverse esteja em execução contínua:
- Operação contínua : Synapse Link deve exportar dados sem interrupção. Se o Synapse Link for interrompido, o conector não poderá capturar as alterações até que seja retomado.
- Latência de exportação : as alterações aparecem no Azure Data Lake Storage (ADLS) Gen2 após o intervalo de exportação do Synapse Link (normalmente de 5 a 15 minutos). A arquitetura do Synapse Link inclui inerentemente essa latência.
- Políticas de retenção : Configure as políticas de retenção apropriadas para seu armazenamento ADLS Gen2. Se você excluir os dados exportados Synapse Link antes da ingestão, será necessário realizar uma refreshcompleta.
Se o Azure Synapse Link ficar indisponível por um período prolongado, você poderá perder alterações. Monitore a integridade Synapse Link no portal do criador do Power Apps e configure alertas para falhas de exportação.
evolução do esquema
Neste momento, o conector do Dynamics 365 não suporta a evolução automática do esquema.
Evolução da entidade virtual do esquema
Considerações especiais para entidades virtuais de Finanças e Operações:
Entidades virtuais em F&O exigem tratamento adicional para alterações de esquema:
- Atualizações de entidades virtuais : Quando as entidades virtuais do F&O são atualizadas, você deve refresh a configuração da entidade virtual no Dataverse.
- Atraso de sincronização : Aguarde até 15 minutos para que as alterações de entidades virtuais apareçam na descoberta de esquema do Dataverse.
- refresh completa necessária : Alterações no esquema da entidade virtual exigem uma refresh completa das tabelas afetadas.
Ação necessária : Monitore as atualizações da entidade virtual de Finanças e Operações e coordene a atualização completa com o administrador do D365.
Ingestão incremental
A ingestão incremental do conector do Dynamics 365 apresenta as seguintes limitações:
- Requer VersionNumber : Synapse Link deve exportar changelogs com o campo
VersionNumber. SeVersionNumberestiver ausente, você deve usar o modo refresh completa. - Processamento baseado em pastas : O conector processa as pastas de exportação do Synapse Link em ordem cronológica. Se você excluir pastas ou se pastas estiverem faltando, o conector não poderá se recuperar sem uma refresh completa.
- Sem preenchimento retroativo : Se Synapse Link não detectar alterações devido a um período de inatividade, essas alterações não serão capturadas, a menos que você execute uma refresh completa.
- Detecção de exclusões : O conector detecta exclusões somente se o Synapse Link exportar registros de exclusão nos changelogs. Algumas configurações do D365 não exportam exclusões.
Verifique se a sua configuração do Synapse Link exporta os registros de alterações com VersionNumber antes de criar o pipeline. Consulte Configurar fonte de dados para ingestão Microsoft Dynamics 365.
Anexos e arquivos
O conector do Dynamics 365 ingere metadados de anexos, mas não o conteúdo dos arquivos:
- Somente metadados : O conector ingere tabelas de anexos (por exemplo,
annotation,attachment) com nomes de arquivos, tamanhos, tipos MIME e associações de registros. - Sem dados binários : O conector não ingere conteúdo de arquivos. Você deve download os arquivos separadamente usando a API Web do Dynamics 365 ou o Power Automate.
- Limitação de armazenamento : o Synapse Link exporta dados de tabela, não arquivos binários armazenados no D365.
Solução alternativa : Utilize os metadados dos anexos para identificar os arquivos necessários, faça o download deles usando as APIs do D365 e armazene-os em um volume ou no ADLS Gen2.
Suporte a tipos de dados
O conector do Dynamics 365 suporta a maioria dos tipos de dados do Dataverse, mas apresenta limitações para tipos complexos:
Suportado com total fidelidade
- strings (texto de linha única e de várias linhas)
- Número inteiro
- Decimal (número decimal)
- Boolean (sim/não)
- Data e hora
- Dinheiro (moeda)
- Pesquisa (referências key estrangeira, armazenadas como GUIDs)
Apoiado com limitações
- Conjuntos de opções (listas de seleção) : O conector os recebe como valores inteiros. Para mapear números inteiros para rótulo, join com a tabela
OptionSetMetadataou mantenha uma tabela de referência. - Conjuntos de opções de seleção múltipla : O conector os recebe como strings de números inteiros separados por vírgulas. Analise as strings para extrair valores individuais.
- Campos de pesquisa : O conector os recebe como GUIDs. Para obter dados de registros relacionados, join com a tabela referenciada.
Não suportado
- Objetos JSON complexos : Alguns tipos de dados personalizados do Dataverse são exportados como JSON. O conector recebe esses dados como strings. Analise o JSON nas transformações subsequentes.
- Imagens : Os metadados das imagens são importados, mas os dados das imagens devem ser baixados separadamente.
Consulte a referência do conector do Microsoft Dynamics 365 para obter uma tabela completa de mapeamento de tipos de dados.
Considerações sobre desempenho
O desempenho do conector do Dynamics 365 depende de vários fatores:
Tempo de sincronização inicial
- Volume de dados : Tabelas com milhões de registros demoram mais para sincronizar inicialmente.
- Exportação viaSynapse Link : A exportação inicial Synapse Link pode levar horas para conjuntos de dados grandes.
- Taxa de transferência da rede : A velocidade de transferência entre o Azure e o Databricks afeta o tempo de sincronização.
Recomendação : comece com um pequeno subconjunto de tabelas para validar a configuração e, em seguida, adicione mais tabelas gradualmente.
Tempo de sincronização incremental
- Volume de alterações : Alterações frequentes (por exemplo, milhares de atualizações por minuto) aumentam o tempo de processamento.
- Contagem de pastas : O Synapse Link cria pastas em intervalos regulares. Mais pastas aumentam a sobrecarga de processamento.
- Tamanho do changelog : Changelogs grandes demoram mais tempo para serem processados.
Recomendação : programar a execução pipeline com base no seu volume de alterações. Para alterações frequentes, execute o pipeline com mais frequência para manter os registros de alterações pequenos.
limitações do oleoduto
O conector do Dynamics 365 possui estas limitações específicas de pipeline:
- Número máximo de tabelas por pipeline : 250 tabelas. Para ambientes D365 de grande porte, crie vários pipelines.
- Sem criação de interface de usuário : No momento, você precisa criar o pipeline usando a CLI, Databricks Ativo Bundles ou o Notebook.
O limite de 250 tabelas é por pipeline, não por conexão. Para processar mais de 250 tabelas, crie vários pipelines usando a mesma conexão.
Limitações da API e do SDK
O conector do Dynamics 365 usa as APIs do Dataverse e do Azure Storage com as seguintes limitações:
- Compatibilidade com a versão da API : O conector foi testado com a API Dataverse v9.2 e versões posteriores. Versões antigas podem não ser compatíveis.
- API do Armazenamento do Azure : O conector usa a API REST do Armazenamento do Azure versão 2021-08-06. Certifique-se de que sua account de armazenamento seja compatível com esta versão.
- Versão do Synapse Link : O conector requer o Azure Synapse Link para Dataverse versão 1.0 ou posterior.
Recomendação : Mantenha seus serviços D365, Dataverse e Azure atualizados para as versões mais recentes para obter a melhor compatibilidade.
Problemas conhecidos
- Atrasos na sincronização de entidades virtuais : Às vezes, as entidades virtuais demoram mais de 15 minutos para sincronizar. Se as mesas não aparecerem, aguarde até 30 minutos e tente novamente.
- Falhas na exportação do Synapse Link : O Synapse Link ocasionalmente falha ao exportar tabelas específicas. Verifique o registro Synapse Link no Power Apps em busca de erros.
- Lacunas no número da versão do changelog : Em casos raros, os changelogs podem ter lacunas em sequências
VersionNumber. Isso não afeta a integridade dos dados, mas pode causar avisos nos logs pipeline .
Reporte problemas ao suporte Databricks , informando os IDs pipeline e os registros de data e hora para que possam ser investigados.