Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Essa arquitetura de referência mostra como sincronizar dados mestres entre dois ambientes do Dataverse usando Power Automate e fluxos de dados no Power Platform. Ele demonstra um padrão de sincronização um-para-um em que um ambiente atua como a fonte autoritativa e outro recebe dados.
Dica
Este artigo fornece um cenário de exemplo e uma arquitetura de exemplo generalizada para ilustrar como manter dados mestres em um ambiente do Dataverse e sincronizar com outro. O exemplo de arquitetura pode ser modificado para muitos cenários e setores diferentes.
Diagrama de arquitetura
Workflow
As etapas a seguir descrevem o fluxo de trabalho mostrado no diagrama de arquitetura de exemplo:
sincronização orientada a evento via Power Automate
Operações CRUD (criar, ler, atualizar, excluir) no ambiente primário do Dataverse acionam fluxos do Power Automate.
A sincronização controlada por eventos usa uma cadeia de fluxo de duas etapas:
- Um fluxo na nuvem envia um HTTP POST para um ponto de extremidade disponibilizado.
- Um fluxo de trabalho em nuvem do assinante é acionado pelo webhook, processa o conteúdo e aplica a atualização no ambiente secundário do Dataverse quase em tempo real.
Os endpoints são parametrizados para gerenciamento do ciclo de vida de aplicativos (ALM), e os grupos de segurança gerenciam o acesso.
Sincronização em massa por meio de fluxos de dados
O ambiente secundário do Dataverse contém os fluxos de dados.
Cada fluxo de dados se conecta ao ambiente dataverse primário como sua fonte de dados.
Os fluxos de dados são executados em um agendamento fixo (por exemplo, noturno ou depois que outro fluxo de dados é executado com êxito) ou sob demanda (por exemplo, para configuração inicial).
As atualizações ou inserções são executadas usando uma chave alternativa com o objetivo de evitar duplicatas. Esse método atualiza os dados existentes e insere novos registros quando não há correspondência.
Os campos de status são gerenciados por meio de uma coluna dedicada de "status de sincronização". Um fluxo de Power Automate atualiza o campo de status real adequadamente. Esse fluxo é executado após o fluxo de dados e é necessário porque um fluxo de dados não pode alterar status de linha ou excluir registros que são removidos (ausentes) no ambiente dataverse primário.
Tratamento e reconciliação de erros
Fluxos de dados noturnos no ambiente secundário corrigem as atualizações acionadas por eventos perdidas ou com falha.
A intervenção manual pode ser necessária para problemas de qualidade de dados (por exemplo, chaves ausentes).
Componentes
Microsoft Dataverse: dá suporte ao requisito de dois ambientes.
Fluxos de dados para o Power Platform: ideal para operações em massa, como a população de dados inicial e a sincronização. Use ETL (extração, transformação e carregamento) em massa para sincronização agendada, configurada no ambiente secundário.
Power Automate fluxos de nuvem: forneça atualizações rápidas e específicas de registro e compense as limitações dos fluxos de dados. Os fluxos de nuvem podem disparar um fluxo de dados quando outro fluxo de dados for concluído com êxito (como quando uma tabela contém um campo de pesquisa para outra e esse registro referenciado já deve existir no ambiente secundário do Dataverse), enviar uma mensagem de erro quando um fluxo de dados falhar, atualizar status de registro e excluir registros.
Grupos de segurança e contas de serviço: forneça gerenciamento de acesso e propriedade.
Detalhes do cenário
Essa arquitetura foi projetada para uma relação um-para-um: um único ambiente de MDM (gerenciamento de dados mestre) vinculado a outro único ambiente. Cenários em que um ambiente mestre deve sincronizar com vários outros ambientes exigem uma solução mais escalonável ou distribuída.
Problema da empresa
Essa solução aborda o desafio de sincronizar várias tabelas entre dois ambientes distintos do Dataverse. O ambiente primário atua como a fonte autoritativa, enquanto o ambiente secundário contém tabelas existentes que você deve preencher e atualizar com dados mestres.
O uso de tabelas virtuais não é viável quando as tabelas do sistema secundário já existem e exigem segurança em nível de linha.
Exemplo de caso de uso
Uma organização de lazer e hospitalidade gerencia seus dados mestres principais, como hotéis e inventários de quartos, em um ambiente dedicado do Dataverse. O ambiente primário inclui um aplicativo baseado em modelo que é usado exclusivamente pela equipe de gerenciamento de dados mestres para manter informações operacionais precisas e atualizadas.
Um departamento separado na mesma organização é responsável por vários processos financeiros e de reconciliação. Para simplificar esses processos, o departamento deseja criar seu próprio aplicativo baseado em modelos em um ambiente isolado do Dataverse. No entanto, seu aplicativo ainda requer acesso aos dados mestre fundamentais, como detalhes de hotel e quarto.
A equipe rejeitou tabelas virtuais porque a equipe financeira precisava enriquecer registros com atributos específicos do departamento regidos pela segurança estrita em nível de linha.
Inserir o aplicativo financeiro dentro do ambiente de MDM primário também não é uma opção. Permitir que criadores financeiros ou administradores no ambiente de MDM exponha conectores, soluções, permissões de API e dados confidenciais que devem permanecer restritos à equipe de desenvolvimento do MDM.
Esses requisitos levaram a organização a adotar a arquitetura de sincronização descrita neste artigo.
Valor criado
Essa arquitetura fornece uma solução robusta e mantenedível para sincronizar dados mestres entre dois ambientes do 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 confiabilidade operacional.
A abordagem usa apenas componentes do Power Platform, como fluxos de dados e Power Automate, resultando em uma solução simples de implantar, fácil de gerenciar e evita complexidade desnecessária.
Como a arquitetura é adaptada para uma relação de ambiente um-para-um, ela minimiza a sobrecarga e maximiza a transparência. É ideal para organizações que precisam de sincronização direta e confiável de dados mestres sem gerenciamento de vários ambientes em grande escala.
Considerations
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.
Os fluxos controlados por eventos fornecem atualizações rápidas.
O monitoramento manual detecta problemas de qualidade de dados.
Segurança
Contas de serviço e grupos de segurança para controle de acesso. Ao usar fluxos de dados, você não pode atribuir entidades de serviço como proprietários.
Pontos de extremidade HTTP parametrizados para compatibilidade com ALM.
Fluxos de dados em soluções isoladas para evitar trabalho manual desnecessário. Há um motivo específico para isolar fluxos de dados em uma solução dedicada: após cada implantação, você deve restabelecer manualmente a conexão de fluxo de dados. Ao colocar fluxos de dados em uma solução separada que você implanta somente quando altera os fluxos de dados, evita um trabalho manual desnecessário ao implantar outros componentes da solução principal.
Excelência operacional
Agendamento automatizado e orquestração de fluxos de dados.
Monitoramento e alertas para sincronizações com falha.
Eficiência de desempenho
Fluxos de dados otimizados para operações em massa.
Os fluxos de Power Automate controlados por eventos minimizam a latência para atualizações críticas no nível de registro. Ao projetar fluxos orientados a eventos, verifique se o volume de ação e a simultaneidade permanecem dentro dos limites de serviço do Power Automate. A atividade CRUD de alta frequência pode disparar a limitação, especialmente em cenários em que os fluxos executam dezenas de milhares de ações por dia. Para integrações comercialmente críticas ou com alta taxa de transferência, aplique o licenciamento apropriado do Power Automate para aumentar os limites de taxa de transferência e evitar a limitação inesperada. Essa abordagem reduz os riscos de escalonamento e garante um desempenho previsível.
Otimização da Experiência
Requer intervenção manual mínima.
Separa claramente sincronizações em massa e controladas por eventos.
Colaboradores
A Microsoft mantém este artigo. Os colaboradores a seguir escreveram este artigo.
Autores principais:
- 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 um sistema de dados mestre
- Entender os limites da plataforma e evitar o estrangulamento
- Migração de dados do CRM para o Dataverse: principais insights e práticas recomendadas
- Migrar dados entre ambientes Microsoft Dataverse usando o conector OData de Dataflows