Compartilhar via


Explorar padrões de integração

Com base em sua análise, planeje a integração e identifique o melhor padrão para seus requisitos. A lista a seguir de padrões de integração não é completa. Você pode achar que uma combinação desses padrões melhor se ajusta ao seu cenário.

Cada padrão aborda cenários de negócios específicos e restrições técnicas:

  • Padrão de gatilho instantâneo: esse padrão reflete como os usuários interagem com sistemas. Uma ação controlada pelo usuário dispara uma série predefinida de ações.
  • Padrão controlado por eventos: esse padrão requer um gatilho automático, como uma resposta a eventos que ocorrem em um determinado sistema.
  • Padrão de consolidação de dados: esse padrão é essencial para organizações com vários sistemas de gerenciamento que exigem uma visão completa de seus dados em seus vários sistemas.
  • Padrão de arquitetura orientada ao serviço: esse padrão normalmente envolve vários fluxos entre sistemas, permitindo uma integração modular e escalonável em ambientes complexos.
  • Padrão de sincronização: esse padrão mantém os dados sincronizados entre diferentes bancos de dados e atende aos requisitos de desempenho e regulamentação.

Padrão de gatilho instantâneo

O padrão de gatilho instantâneo é controlado pelo usuário e intuitivo. Ele inicia um fluxo de integração quando um usuário executa uma ação, como pressionar um botão em um Power App. Esse padrão é ideal para cenários em que os dados são necessários sob demanda e não continuamente.

Cenário de exemplo

Um Power App permite que os gerentes de produto examinem os comentários dos clientes e criem planos de ação. Algumas especificações técnicas são armazenadas no sistema de Gerenciamento do Ciclo de Vida do Produto da Oracle. Em vez de copiar todo o conjunto de dados para o Dataverse, o aplicativo inclui um botão para buscar dados quando necessário.

Os motivos para integrar em vez de redirecionar usuários ao Oracle incluem:

  • Experiência de usuário ruim
  • Preocupações com a segurança
  • Custos de licenciamento

Considerando o custo-benefício das integrações do Power Platform, qualquer um desses motivos pode justificar a implementação.

Design de fluxo

Use um fluxo de nuvem instantâneo acionado pelo pressionar de um botão no aplicativo.

Este diagrama ilustra o padrão de gatilho instantâneo, em que uma ação iniciada pelo usuário recupera dados de um sistema externo e os grava no Dataverse:

Diagrama mostrando um fluxo disparado por botão com etapas para recuperar dados oracle, devolvê-los ao aplicativo e gravá-los no Dataverse.

O fluxo inclui estas etapas:

  1. Solicite registros do Oracle usando parâmetros (como id do produto) fornecidos pelo aplicativo.
  2. Retornar registros do Oracle para o aplicativo.
  3. Gravar registros no Dataverse.

Esses dados são refletidos na interface do Power Apps.

Considerações:

  • Os modelos de dados entre Oracle e Dataverse podem ser diferentes, exigindo etapas de transformação.
  • Gatilhos instantâneos não são realmente instantâneos. O tempo de execução depende da disponibilidade do sistema e da complexidade da transformação.
  • Adicione indicadores visuais no aplicativo para mostrar o progresso e permitir o cancelamento se a operação demorar muito.
  • Em grandes organizações, solicitações simultâneas de muitos usuários podem forçar o sistema.
  • As integrações podem falhar por vários motivos. Verifique se o aplicativo fornece comentários aos usuários durante a execução. Evite cenários em que os usuários selecionem um botão e não recebam resposta, o que leva a uma experiência ruim do usuário.

Padrão controlado por eventos

As arquiteturas controladas por eventos (também conhecidas como gatilho automático) respondem a alterações em sistemas sem interação direta do usuário. Por exemplo, gatilhos podem ser configurados para responder a um registro criado no Dataverse, emails de entrada, arquivos adicionados ao OneDrive e qualquer número de outros eventos. Esse padrão é intuitivo e escalonável, tornando-o ideal para automatizar processos de negócios com base em eventos do sistema.

Cenário de exemplo

Um departamento de atendimento ao cliente usa um aplicativo conectado ao Dataverse para trabalhar em casos e fornecer atualizações aos clientes automaticamente, sem gravar emails manualmente. Somente alterações específicas, como adicionar uma anotação ou alterar o status, devem disparar notificações.

Use um gatilho automático no Power Automate para responder a esses eventos. O fluxo escuta as alterações nos registros do Dataverse e envia notificações quando as condições definidas são atendidas.

Este diagrama mostra o padrão de gatilho automático, em que as alterações no Dataverse iniciam automaticamente ações downstream que atualizam os clientes com as informações de caso relevantes:

Captura de tela da configuração de fluxo do Power Automate mostrando as configurações de gatilho para monitorar alterações de registro do Dataverse.

Configuração de gatilho

Configure o fluxo da seguinte maneira:

  • Indique o Tipo de Alteração a ser monitorado.
  • Defina as colunas às quais responder usando o parâmetro Selecionar Colunas .
  • Use o parâmetro Filtrar Linhas para garantir que apenas as alterações de status voltadas para o cliente disparem o fluxo, além de quaisquer outros requisitos de filtragem.

Evite implementar essa lógica usando uma ação If no fluxo em si. Use parâmetros de gatilho para reduzir execuções desnecessárias e melhorar o desempenho.

Evitar conflitos lógicos

Avalie a lógica do evento para evitar comportamentos não intencionais:

  • Evite loops em que um evento dispara uma ação que repete o mesmo evento.
  • Impedir que várias atualizações causem notificações rápidas e repetidas.
  • Desenhe fluxos para lidar com casos limites e evitar execuções excessivas.

Considerações sobre volume e frequência

Compreenda o volume esperado de eventos acionados. Os serviços de notificação (email, SMS e outros) limitam quantas mensagens você pode enviar em um determinado período de tempo.

  • Estimar o número de eventos por dia ou mês.
  • Implemente mecanismos de controle ou limitação de taxa.
  • Prepare um plano de mitigação para picos inesperados na frequência do evento.

Padrão de consolidação de dados

A consolidação de dados (também conhecida como gatilho agendado) ajuda as organizações a unificar informações em vários sistemas para dar suporte a relatórios e processos operacionais. Embora a análise geralmente exija conjuntos de dados completos, os casos de uso operacional se concentram na recuperação apenas dos dados necessários para concluir tarefas comerciais.

Cenário de exemplo

Uma empresa usa três sistemas herdados para gerenciar as principais funções de negócios: SAP para pedidos e contas a receber, Oracle para inventário de produtos e IBM para gerenciamento de conteúdo relacionado ao cliente. A organização encomendou um novo aplicativo do Power Platform para usar a IA para prever a próxima melhor ação para cada cliente com base em dados históricos. O aplicativo precisa coletar informações relevantes dos três sistemas e gerar um plano de ação de vendas para os gerentes de vendas orientarem o envolvimento.

Abordagem de integração

A integração não requer atualizações em tempo real ou gatilhos controlados por eventos. Em vez disso, use um processo agendado com base na frequência com que a equipe de vendas interage com os clientes.

Nesse caso de uso, um gatilho agendado consolida os dados da seguinte maneira:

  • Solicita apenas os dados necessários de cada sistema
  • Retorna os dados em um formato compatível com o Dataverse
  • Carrega os dados no modelo de IA para análise

Este diagrama ilustra o padrão de consolidação de dados agendado, em que um processo recorrente coleta informações de vários sistemas e carrega o conjunto de dados combinado no Dataverse:

Diagrama de integração de dados usando um processo agendado para unificar informações de três sistemas herdados para recomendações de vendas orientadas por IA.

Configuração de gatilho agendado

Os gatilhos agendados oferecem opções de recorrência flexíveis, de uma vez por segundo para uma vez por ano. Eles são previsíveis no tempo, mas podem se tornar imprevisíveis em volume se o escopo de dados se expandir ou o crescimento exceder as expectativas.

  • Monitorar o tempo de execução do fluxo para evitar sobreposições ou atrasos
  • Implementar proteções para evitar degradação de desempenho
  • Usar o Application Insights ou ferramentas semelhantes para garantir que o fluxo seja executado de forma consistente

Mitigação de risco

Se um fluxo agendado levar mais tempo do que o esperado, ele poderá interromper os processos de negócios. Por exemplo, um fluxo projetado para ser executado a cada 10 minutos poderá falhar se começar a levar mais de 10 minutos para ser concluído.

  • Monitorar o runtime e definir alertas para anomalias
  • Planejar a escalabilidade à medida que o volume de dados aumenta
  • Garantir visibilidade da integridade do fluxo para evitar falhas despercebidas

Padrão de integração orientada ao serviço

Grandes organizações geralmente operam vários sistemas entre departamentos. Esses sistemas evoluem para depender uns dos outros para concluir processos de negócios. A camada de integração conecta esses sistemas, permitindo que cada um execute sua função principal ao habilitar a comunicação entre sistemas.

Cenário de exemplo revisitado

Vamos continuar com nosso cenário de exemplo no qual a organização usa vários sistemas para gerenciar diferentes partes do negócio. O SAP lida com pedidos e contas a receber, a Oracle gerencia o inventário de produtos e a IBM armazena a documentação financeira interna. O Dataverse executa aplicativos para vendas, atendimento ao cliente e gerenciamento de produtos. O SharePoint dá suporte à colaboração interna e ao gerenciamento de base de dados de conhecimento, enquanto as APIs da Maersk automatizam processos logísticos.

Este diagrama ilustra o padrão controlado por eventos em um cenário de vários sistemas, em que atualizações em vários sistemas empresariais disparam fluxos automatizados que coordenam dados e ações entre eles:

Diagrama mostrando a arquitetura de integração com vários sistemas vinculados por meio de gatilhos específicos para processos de negócios.

Cada sistema interage com outras pessoas por meio de eventos agendados ou ações manuais do usuário. Nenhum fluxo único atende a todos os casos de uso. Em vez disso, a solução requer vários fluxos personalizados para gatilhos específicos e processos de negócios.

Evitar fluxos monolíticos

A criação de um fluxo grande para lidar com todas as integrações não é prática. Ele apresenta desafios de desempenho, segurança e manutenção. Em seu lugar:

  • Criar fluxos modulares para cada gatilho e processo
  • Otimizar fluxos para casos de uso específicos
  • Dimensionar o cenário de integração com componentes gerenciáveis

Otimizar processos entre sistemas

Procure oportunidades para consolidar a lógica quando apropriado. Por exemplo, se um documento no SharePoint precisar ser enviado para SAP e Oracle durante o mesmo evento, você poderá ser tentado a criar um fluxo que leia o arquivo uma vez e o grave em ambos os sistemas. Primeiro, no entanto, considere se a lógica que você está criando é muito rígida. Em um grande cenário, as alterações na forma como os processos empresariais funcionam entre os sistemas ocorrem tão frequentemente quanto as mudanças nesses sistemas.

Evite a consolidação excessiva. Os processos empresariais e as configurações do sistema mudam com frequência. Lógica rígida e centralizada reduz a flexibilidade e aumenta a sobrecarga de manutenção.

Processos de design que são:

  • Modular e mantenedível
  • Escalonável entre departamentos e sistemas
  • Resiliente a alterações na lógica de negócios e no comportamento do sistema

Esse padrão resulta em uma arquitetura orientada a serviços, às vezes chamada de "arquitetura de espaguete", em que os sistemas são interconectados por meio de fluxos bem definidos e criados com finalidade.

Padrão de sincronização de dados

Use a sincronização de dados quando sistemas idênticos armazenam dados em bancos de dados separados. Embora armazenar os mesmos dados duas vezes possa parecer ineficiente, esse padrão dá suporte a necessidades comerciais específicas, como desempenho e conformidade regulatória.

  • Desempenho: O acesso a dados locais melhora a capacidade de resposta, especialmente em setores sensíveis à latência.
  • Conformidade: os regulamentos legais podem exigir que os dados sejam armazenados dentro das fronteiras nacionais. As organizações geralmente implantam instâncias locais com processos de sincronização para atender a esses requisitos.

Cenário de exemplo

Uma empresa de dispositivos médicos opera em várias regiões da Europa, em cooperação com instituições médicas locais. As leis de cada região são claras sobre os dados médicos, que devem ser armazenados dentro das fronteiras dessa região. Informações sobre pedidos, produtos e envio podem ser armazenadas entre fronteiras. Para atender aos requisitos regulatórios, a empresa criou uma instância do aplicativo de gerenciamento de clientes do Power Platform e do Dataverse em cada região.

Para dar suporte a operações de vendas, a empresa deseja sincronizar dados sem sentido, como detalhes de contato, pedidos e envio, em todas as instâncias. Os dados médicos são excluídos da sincronização.

Abordagem de integração

Use um fluxo de nuvem automático disparado por atualizações no registro de conta. Configurar filtros para:

  • Monitorar apenas campos permitidos
  • Impedir a sincronização de dados restritos

Essa abordagem resulta em uma integração direcionada e orientada a eventos que dá suporte à conformidade e à eficiência operacional.

Este diagrama ilustra o padrão de sincronização controlado por eventos, em que as atualizações em um ambiente do Dataverse disparam automaticamente as atualizações correspondentes em outro:

Diagrama de uma integração controlada por eventos mostrando variações de volume e frequência com base em atualizações de conta com filtros aplicados.

Expectativas de tempo de resposta

Defina expectativas realistas para a velocidade de sincronização. O Power Automate é assíncrono e não garante o desempenho em tempo real. Se os usuários empresariais esperam disponibilidade imediata de dados, esclareça as limitações no início do processo de design.

  • Avaliar se o Power Automate atende às necessidades de desempenho
  • Evite o excesso de engenharia para acesso em tempo real, a menos que seja justificado pelos requisitos de negócios

Muitas solicitações de acesso em tempo real não têm um caso de negócios forte. Priorize a clareza, a escalabilidade e a manutenção no design de integração.

Além dos fluxos de nuvem

Ao selecionar uma ferramenta de integração, comece com o Power Automate como a opção padrão. Ele oferece custo-e-benefício inigualável para desenvolvimento e manutenção.

O Power Automate é a ferramenta de integração preferencial para muitos cenários porque:

  • Fornece desenvolvimento rápido com conectores de baixo código
  • Minimiza os custos de manutenção de longo prazo
  • Dá suporte a uma ampla gama de gatilhos e sistemas
  • Dimensiona bem para a maioria dos cenários de negócios

O código personalizado, o Azure Functions, o Data Factory ou o Barramento de Serviço podem oferecer mais controle ou melhor desempenho, mas adicionam complexidade e custo. Use essas opções somente quando o Power Automate não atender às suas necessidades técnicas ou comerciais.

Diagrama de um fluxo de trabalho de integração mostrando conectores do Power Automate coletando dados e o Azure Functions executando cálculos.

Cenário de exemplo

Um serviço bancário online quer qualificar os clientes para empréstimos mais rapidamente. O processo de qualificação envolve cálculos complexos e recuperação de dados de vários sistemas para chegar a uma pontuação de risco final. Após uma avaliação inicial, o serviço bancário considerou o fluxo de nuvem inadequado dada a complexidade dos cálculos.

No entanto, nesse caso, uma abordagem híbrida é a resposta:

  • Power Automate para gerenciar a coleta de dados com conectores internos
  • Cálculos complexos encapsulados em código personalizado em execução como uma função do Azure, que pode ser dimensionada independentemente ou em um conector personalizado

Essa abordagem híbrida equilibra o desempenho, a escalabilidade e o custo.

Estratégia de integração

Não escolha ferramentas isoladamente. Em vez disso, combine seus pontos fortes. Por exemplo:

  • Usar o Power Automate para orquestração e conectividade
  • Usar o Azure Functions para tarefas com uso intensivo de computação
  • Usar conectores personalizados para estender a funcionalidade quando necessário

Cada decisão de integração deve considerar o custo total de propriedade. Soluções personalizadas podem parecer poderosas, mas geralmente exigem um orçamento maior para desenvolvimento, licenciamento e suporte. Justifique custos mais altos com valor comercial claro.