Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Esta arquitetura de referência mostra como sincronizar dados mestres entre dois ambientes Dataverse utilizando Power Automate e fluxos de dados no Power Platform. Demonstra um padrão de sincronização um-para-um, onde um ambiente atua como fonte autoritária e outro recebe dados.
Sugestão
Este artigo apresenta um cenário de exemplo e uma arquitetura de exemplo generalizada para ilustrar como manter dados mestres num ambiente Dataverse e sincronizá-los com outro. O exemplo de arquitetura pode ser modificado para muitos cenários e setores diferentes.
Diagrama de arquitetura
Workflow
Os passos seguintes descrevem o fluxo de trabalho mostrado no diagrama de arquitetura de exemplo:
Sincronização orientada por eventos via Power Automate
As operações CRUD (criar, ler, atualizar, eliminar) no ambiente principal do Dataverse ativam fluxos do Power Automate.
A sincronização orientada por eventos utiliza uma cadeia de fluxo em dois passos:
- Um fluxo na nuvem envia um HTTP POST para um endpoint publicado.
- Um fluxo de assinante na nuvem é acionado pelo webhook, processa o payload e aplica a atualização no ambiente secundário do Dataverse quase em tempo real.
Os endpoints são parametrizados para a gestão do ciclo de vida da aplicação (ALM) e os grupos de segurança gerem o acesso.
Sincronização em massa através de fluxos de dados
O ambiente secundário do Dataverse contém os fluxos de dados.
Cada fluxo de dados liga-se ao ambiente principal do Dataverse como fonte de dados.
Os fluxos de dados funcionam num calendário fixo (por exemplo, noturnamente ou após outro fluxo de dados ser executado com sucesso) ou a pedido (por exemplo, para a configuração inicial).
Os upserts são realizados usando uma chave alternativa para evitar duplicados. Este método atualiza os dados existentes e insere novos registos quando não existe correspondência.
Os campos de estado são geridos através de uma coluna dedicada de "estado de sincronização". Um fluxo do Power Automate atualiza o campo de estado real em conformidade. Este fluxo corre depois do dataflow e é obrigatório porque um dataflow não pode alterar os estados das linhas nem apagar registos que são removidos (ausentes) no ambiente principal do Dataverse.
Tratamento de erros e conciliação
Os fluxos de dados noturnos no ambiente secundário corrigem quaisquer atualizações geradas por eventos que tenham sido falhadas ou perdidas.
Pode ser necessária intervenção manual para problemas de qualidade dos dados (por exemplo, falta de chaves).
Componentes
Microsoft Dataverse: Suporta o requisito de dois ambientes.
Dataflows para Power Platform: Ideal para operações em massa, como a população inicial de dados e sincronização. Utilize a extração, transformação e carregamento em massa (ETL) para sincronização programada, configurada no ambiente secundário.
Power Automate fluxos de nuvem: Fornece atualizações rápidas e específicas de registos e compensa as limitações dos dataflows. Os fluxos na nuvem podem desencadear um fluxo de dados quando outro fluxo de dados é concluído com sucesso (como quando uma tabela contém um campo de consulta para outra, e esse registo referenciado já deve existir no ambiente secundário do Dataverse), enviar uma mensagem de erro quando um fluxo de dados falha, atualizar estados de registos e eliminar registos.
Grupos de segurança e contas de serviço: Fornecer gestão e propriedade de acessos.
Detalhes do cenário
Esta arquitetura foi concebida para uma relação um-para-um: um único ambiente de gestão de dados mestres (MDM) ligado a outro único ambiente. Cenários em que um ambiente mestre tem de se sincronizar com vários outros ambientes requerem uma solução mais escalável ou distribuída.
Problema de negócio
Esta solução resolve o desafio de sincronizar múltiplas tabelas entre dois ambientes Dataverse distintos. O ambiente primário atua como fonte autoritativa, enquanto o ambiente secundário contém tabelas existentes que deve preencher e atualizar com dados mestres.
Usar tabelas virtuais não é viável quando as tabelas do sistema secundário já existem e exigem segurança ao nível das linhas.
Exemplo de caso de uso
Uma organização de lazer e hotelaria gere os seus dados principais principais, como hotéis e inventários de quartos, num ambiente Dataverse dedicado. O ambiente principal inclui uma aplicação baseada em modelos que a equipa de gestão de dados mestre utiliza exclusivamente para manter informações operacionais precisas e atualizadas.
Um departamento separado dentro da mesma organização é responsável por vários processos financeiros e de reconciliação. Para simplificar estes processos, o departamento pretende construir a sua própria aplicação orientada a modelos num ambiente Dataverse isolado. No entanto, a sua aplicação ainda exige acesso a dados mestres fundamentais, como detalhes do hotel e dos quartos.
A equipa rejeitou tabelas virtuais porque a equipa financeira precisava de enriquecer os registos com atributos específicos de cada departamento, regidos por uma segurança rigorosa ao nível das linhas.
Incorporar a aplicação financeira no ambiente principal de MDM também não é uma opção. Permitir que financiadores ou administradores acedam ao ambiente MDM expõe conectores, soluções, permissões da API e dados sensíveis que devem permanecer restritos à equipa de desenvolvimento do MDM.
Estes requisitos levaram a organização a adotar a arquitetura de sincronização descrita neste artigo.
Valor criado
Esta arquitetura oferece uma solução robusta e sustentável para sincronizar dados mestres entre dois ambientes Dataverse quando as tabelas virtuais não são uma opção. Preencher e atualizar diretamente as tabelas existentes no ambiente secundário garante a consistência dos dados e a fiabilidade operacional.
A abordagem utiliza apenas componentes do Power Platform, como dataflows e Power Automate, resultando numa solução simples de implementar, fácil de gerir e que evita complexidades desnecessárias.
Como a arquitetura é adaptada para uma relação de ambiente um-para-um, minimiza a sobrecarga e maximiza a transparência. É ideal para organizações que necessitam de uma sincronização simples e fiável dos dados mestres, sem a necessidade de gestão em larga escala e em múltiplos ambientes.
Considerações
Essas considerações implementam os pilares do Power Platform Well-Architected, um conjunto de princípios orientadores que melhoram a qualidade de uma carga de trabalho. Saiba mais em Microsoft Power Platform Well-Architected.
Reliability
Fluxos de dados noturnos garantem consistência.
Fluxos orientados por eventos fornecem atualizações rápidas.
A monitorização manual deteta problemas de qualidade dos dados.
Segurança
Contas de serviço e grupos de segurança para controlo de acessos. Ao usar fluxos de dados, não é possível atribuir entidades de serviço como proprietários.
Endpoints HTTP parametrizados para compatibilidade com ALM.
Fluxos de dados em soluções isoladas para evitar trabalho manual desnecessário. Há uma razão específica para isolar os fluxos de dados numa solução dedicada: após cada implementação, tem de restabelecer manualmente a ligação ao fluxo de dados. Ao colocar fluxos de dados numa solução separada que só implementa quando altera os fluxos de dados, evita trabalho manual desnecessário ao implementar outros componentes da solução principal.
Excelência Operacional
Agendamento automatizado e orquestração de fluxos de dados.
Monitorização e alerta para falhas de sincronização.
Eficiência de desempenho
Fluxos de dados otimizados para operações em massa.
Os fluxos do Power Automate orientados a eventos minimizam a latência para atualizações críticas ao nível de registo. Ao desenhar fluxos orientados por eventos, certifique-se de que o volume de ações e a concorrência permanecem dentro dos limites de serviço do Power Automate. A atividade CRUD de alta frequência pode desencadear a limitação de taxa, especialmente em cenários onde os fluxos executam dezenas de milhares de ações por dia. Para integrações críticas para o negócio ou de alto rendimento, aplique licenças de Power Automate apropriadas para aumentar os limites de throughput e evitar limitações inesperadas. Esta abordagem reduz os riscos de escalada e garante um desempenho previsível.
Otimização da Experiência
Requer intervenção manual mínima.
Separa claramente as sincronizações em massa e orientadas por eventos.
Contributors
A Microsoft mantém este artigo. Os seguintes colaboradores escreveram este artigo.
Principais autores:
- Lothar van Diessen, Arquiteto de Soluções
Recursos relacionados
- O que são fluxos de dados?
- Power Automate modelos para o conector de fluxos de dados
- Dataverse como sistema de dados mestres
- Compreenda os limites da plataforma e evite a contenção
- Migração de dados do CRM para o Dataverse: principais insights e práticas recomendadas
- Migre dados entre ambientes do Microsoft Dataverse utilizando o conector OData dos fluxos de dados