Pular para o conteúdo principal

Perguntas frequentes sobre o conector do Microsoft Dynamics 365

Encontre respostas para perguntas frequentes sobre o conector gerenciado do Microsoft Dynamics 365 no Lakeflow Connect. Para perguntas gerais sobre conectores de ingestão gerenciados, consulte Perguntas frequentes sobre conectores gerenciados.

Perguntas frequentes específicas sobre conectores

As perguntas a seguir abordam como o conector lê seus dados por meio do Azure Synapse Link, quais aplicativos e permissões do Dynamics 365 ele requer e como planejar conexões, custos e alterações de esquema.

Como o conector acessa os dados do D365?

O conector do Dynamics 365 utiliza o Azure Synapse Link para Dataverse como intermediário:

  1. O Synapse Link exporta continuamente dados do D365 para o ADLS Gen2 em formato CSV.
  2. Synapse Link mantém registros de alterações com timestamps VersionNumber para acompanhamento de alterações.
  3. O Databricks lê os arquivos exportados do ADLS Gen2 usando a autenticação Microsoft Entra ID.
  4. O conector processa os registros de alterações para realizar a ingestão incremental.

Com essa arquitetura, você pode ingerir dados do D365 sem fazer chamadas de API baseadas em OData para o D365, o que reduz a carga no seu ambiente D365.

O Azure Synapse Link for Dataverse é necessário para:

  • Acompanhamento de alterações: O Synapse Link fornece changelogs com campos versionnumber que permitem a ingestão incremental.
  • Desempenho: Ler arquivos exportados do ADLS Gen2 é mais eficiente do que fazer chamadas de API baseadas em OData para o D365.

Como funciona a ingestão incremental?

O conector do Dynamics 365 usa o campo versionnumber dos registros de alterações do Azure Synapse Link para rastrear alterações:

  1. O Synapse Link exporta dados para pastas com registro de data e hora no ADLS Gen2.
  2. Cada exportação inclui um arquivo de registro de alterações com valores versionnumber indicando quando os registros foram alterados.
  3. O conector processa as pastas em ordem cronológica com base em registros de data e hora.
  4. Para cada pasta, o conector lê o registro de alterações e aplica as mudanças (inserções, atualizações, exclusões).
  5. O conector armazena o último versionnumber processado como um cursor.
  6. A execução subsequente pipeline processa apenas as novas pastas criadas após o último cursor.

Essa abordagem garante que o conector capture todas as alterações sem reprocessar dados inalterados. Consulte Ativar acompanhamento de história (SCD tipo 2) para obter informações sobre como o conector lida com atualizações e exclusões.

Quais aplicativos do Dynamics 365 são compatíveis?

O conector do Dynamics 365 oferece suporte a aplicativos nativos do Dataverse e aplicativos não nativos do Dataverse.

Aplicativos nativos do Dataverse, que o conector acessa diretamente sem entidades virtuais ou tabelas diretas, incluem:

  • Dynamics 365 vendas
  • Atendimento ao Cliente Dynamics 365
  • Marketing do Dynamics 365
  • Dynamics 365 Field Service

Aplicações que não são nativas do Dataverse, que exigem entidades virtuais ou tabelas diretas, incluem:

  • Dynamics 365 Finanças e operações (F&O)

Consulte Configurar fonte de dados para ingestão Microsoft Dynamics 365 para obter detalhes de configuração.

Qual é a diferença entre aplicativos nativos do Dataverse e não nativos do Dataverse?

Os aplicativos nativos do Dataverse armazenam dados diretamente nas tabelas do Dataverse. O conector pode acessar essas tabelas imediatamente após você configurar o Azure Synapse Link.

Aplicativos não nativos do Dataverse, como o F&O, armazenam dados em seu próprio banco de dados em vez de no Dataverse. Para ingerir seus dados, você usa entidades virtuais ou tabelas diretas:

  • Uma tabela virtual , também chamada de entidade virtual, aparece e se comporta como uma tabela regular do Dataverse, mas não armazena dados por si só. Ela recupera dados sob demanda da fonte externa, portanto, os dados nunca são materializados no Dataverse. Você pode trabalhar com os dados sem duplicá-los.
  • Uma tabela direta é uma cópia física de dados de aplicação, exportada e materializada fora do Dataverse. O Azure Synapse Link replica os dados do sistema de origem para o ADLS Gen2 como tabelas transacionais brutas que correspondem estreitamente ao esquema de origem. Como os dados persistem, isso suporta analítica escalável e análise histórica sem consultar o sistema de origem.

Tomando o F&O como exemplo:

  • Entidades virtuais são expostas no Dataverse por meio da solução F&O Virtual Entity. Elas aparecem como tabelas de leitura direta com o prefixo mserp_, que o Azure Synapse Link exporta para o ADLS Gen2 para que os pipelines do Lakeflow Connect as ingiram. As entidades F&O frequentemente agregam várias tabelas subjacentes em uma view desnormalizada, portanto, esta opção geralmente fornece dados pré-unidos e adequados para negócios que precisam de menos transformações downstream.
  • Direct tables são tabelas F&O brutas que o Azure Synapse Link exporta sem roteá-las pelo Dataverse. Elas aparecem em uma seção separada durante a configuração do Synapse Link e chegam ao ADLS Gen2 como dados transacionais brutos.

Para decidir qual opção se ajusta à sua carga de trabalho:

Consideração

Tabelas virtuais

Tabelas diretas

Granularidade dos dados

Uma view mais plana e agregada que pode incluir campos computados.

Os dados transacionais brutos mais granulares, oferecendo controle total sobre a modelagem de dados.

Esforço de transformação

Frequentemente pré-unidos e prontos para uso comercial, o que minimiza as transformações posteriores no Databricks.

Geralmente requerem engenharia de dados adicional para joins e transformações complexas.

Desempenho

Pode adicionar sobrecarga no lado da fonte, dependendo da complexidade da entidade.

Pode exigir mais compute downstream para aplicar a lógica de negócios.

Consideração

Tabelas virtuais

Tabelas diretas

Granularidade dos dados

Uma view mais plana e agregada que pode incluir campos computados.

Os dados transacionais brutos mais granulares, oferecendo controle total sobre a modelagem de dados.

Esforço de transformação

Frequentemente pré-unidos e prontos para uso comercial, o que minimiza as transformações posteriores no Databricks.

Geralmente requerem engenharia de dados adicional para joins e transformações complexas.

Desempenho

Pode adicionar sobrecarga no lado da fonte, dependendo da complexidade da entidade.

Pode exigir mais compute downstream para aplicar a lógica de negócios.

Posso importar anexos do D365?

O conector do Dynamics 365 ingere metadados de anexos (nome do arquivo, tamanho, tipo MIME, associações de registro), mas não download o conteúdo dos arquivos anexados. Isso ocorre porque o Synapse Link exporta dados de tabela, e não o conteúdo de arquivos binários.

Para acessar os arquivos anexados:

  1. Ingerir tabelas de metadados de anexo, como annotation e attachment.
  2. Utilize os metadados para identificar os arquivos de que você precisa.
  3. Faça download de arquivos diretamente do D365 usando a API Web do Dynamics 365 ou o Power Automate.
  4. Armazene os arquivos em seu local de armazenamento preferido, como ADLS Gen2 ou um volume do Unity Catalog.

Preciso de conexões separadas para diferentes aplicativos do D365?

Não, você pode usar uma única conexão do Unity Catalog para todos os aplicativos do D365 no mesmo ambiente Dataverse. A conexão é autenticada na sua account de armazenamento ADLS Gen2, e não em aplicativos individuais do D365.

No entanto, você precisa de pipelines separados para cada ambiente do Dataverse, identificados pelo seu valor source_schema. Por exemplo:

  • Conexão única: Autentica-se ao seu contêiner ADLS Gen2.
  • Pipeline múltiplo: Um pipeline por ambiente Dataverse, cada um especificando um valor source_schema diferente.

Essa abordagem simplifica o gerenciamento de autenticação, permitindo ao mesmo tempo a ingestão de dados de múltiplos ambientes.

Quais permissões são necessárias no D365?

A configuração do conector do Dynamics 365 requer permissões em três locais: Microsoft Dynamics 365 e Dataverse, Azure e Databricks.

No Microsoft Dynamics 365 e no Dataverse, você precisa das seguintes permissões:

  • Função de Administrador de Sistemas ou permissões equivalentes para configurar o Azure Synapse Link.
  • Conceda permissões de leitura para todas as tabelas que deseja incluir nos dados.
  • Permissões para configurar entidades virtuais ou tabelas diretas (para aplicações como F&O).

No Azure, você precisa das seguintes permissões:

  • Permissões para criar e configurar contas de armazenamento e contêineres ADLS Gen2.
  • Permissões para criar e configurar aplicativos Microsoft Entra ID.
  • Permissões para atribuir a função de Colaborador de Dados do Blob de Armazenamento ao aplicativo Entra ID.

No Databricks, você precisa das seguintes permissões:

  • Permissões de administrador do espaço de trabalho ou de administrador do metastore para criar conexões Unity Catalog .
  • Criar permissões no catálogo e esquema de destino.

Consulte Configurar fonte de dados para ingestão Microsoft Dynamics 365 para obter requisitos de permissão detalhados.

Posso importar dados de vários ambientes do Dataverse?

Sim, você pode importar dados de vários ambientes Dataverse usando uma única conexão. Crie um pipeline separado para cada ambiente:

Python
# Pipeline for production environment
prod_pipeline = w.pipelines.create(
name="d365_prod_ingestion",
ingestion_definition=IngestionPipelineDefinition(
channel="PREVIEW",
connection_name="d365_connection", # Same connection
source_schema="https://prod.crm.dynamics.com", # Production
source_table=["account", "contact"],
destination_catalog="main",
destination_schema="d365_prod",
scd_type="SCD_TYPE_2"
)
)

# Pipeline for test environment
test_pipeline = w.pipelines.create(
name="d365_test_ingestion",
ingestion_definition=IngestionPipelineDefinition(
channel="PREVIEW",
connection_name="d365_connection", # Same connection
source_schema="https://test.crm.dynamics.com", # Test
source_table=["account", "contact"],
destination_catalog="main",
destination_schema="d365_test",
scd_type="SCD_TYPE_2"
)
)

Você deve exportar todos os ambientes para a mesma account de armazenamento e contêiner ADLS Gen2 ou criar conexões separadas para cada local de armazenamento.

Como posso reduzir os custos de ingestão?

Para otimizar custos:

  • Utilize a seleção de colunas para importar apenas as colunas necessárias. Consulte Selecionar colunas para ingestão.
  • Inclua apenas as tabelas necessárias no pipeline.
  • Desative o histórico de acompanhamento (SCD tipo 1) se não precisar de acompanhamento histórico para reduzir o armazenamento.

Consulte as limitações do conector do Microsoft Dynamics 365 para mais considerações.

Posso transformar dados durante a ingestão?

O Lakeflow Connect ingere dados brutos do Microsoft Dynamics 365 sem transformações. Para transformar dados:

  1. Ingerir dados brutos em um esquema de destino como d365_landing.
  2. Crie Lakeflow pipelines downstream para transformações.
  3. Use SQL ou Python para transformar dados em esquemas selecionados.

Essa separação de responsabilidades preserva os dados brutos, ao mesmo tempo que permite transformações flexíveis posteriormente.

Como faço para lidar com alterações de esquema no D365?

Neste momento, todas as alterações de esquema exigem uma refresh completa da tabela. Monitore as alterações no seu esquema do D365 e planeje uma atualização completa de acordo.

Não.