Integração de dados de entrada

Concluído

A integração de dados de entrada se concentra em obter dados para o Microsoft Dataverse para que estejam disponíveis para aplicativos e fluxos.

API

A API Web é um dos dois serviços Web que podem ser usados para trabalhar com dados e metadados no Dataverse. O outro é o Serviço da Organização.

Dataverse A API Web fornece uma experiência de desenvolvimento que pode ser usada em várias linguagens de programação, plataformas e dispositivos. A API Web do Dataverse implementa o OData (Open Data Protocol), a versão 4.0, um padrão OASIS para compilar e consumir APIs RESTful.

Todas as operações de dados que usam as APIs do Dataverse, seja usando a API Web ou o Serviço da Organização, são convertidas em mensagens que seguem a estrutura de eventos da plataforma. Essa estrutura permite que processos, como fluxo de trabalho clássico e fluxos de nuvem do Power Automate, sejam iniciados e permite que os desenvolvedores adicionem etapas de plug-in personalizadas que podem ser executadas para realizar a validação e processamento adicional.

Evento ou lote

Os arquitetos de soluções devem categorizar os dados necessários no Dataverse. Uma categoria chave é um evento ou um lote baseado. O diagrama a seguir compara essas duas abordagens.

Diagrama de abordagens de integração de entrada.

Padrão de push

Ao considerar a obtenção de dados para o Dataverse, você precisará determinar se os dados serão enviados ao Dataverse por outro sistema ou se serão levados ao Dataverse.

O padrão de push geral para a integração de entrada no Dataverse é usar a API Web com o outro sistema que faça as chamadas à API Web. No entanto, permitir que outros sistemas escrevam diretamente no Dataverse requer que os outros sistemas compreendam o modelo de dados no Dataverse e como os processos na solução Microsoft Power Platform operam. É recomendável criar uma camada para sistemas externos para acessar as seguintes entidades:

  • Processamento baseado em eventos: Power Automate e Microsoft Azure Logic Apps são boas abordagens para transações individuais disparadas por alterações no sistema de origem.
  • Processamento em lote: o lote geralmente é dissociado por meio de ferramentas de outras fontes, como KingswaySoft, ou usando o Microsoft Azure Data Factory.
  • Microsoft Azure Functions: o Azure Functions pode abstrair a necessidade de implementar a lógica de negócios em sua camada de integração empresarial.
  • API personalizada: crie sua própria API para outros sistemas chamarem.

Observação

O Power Automate é geralmente usado para sincronizar dados entre ambientes do Dataverse.

Ao projetar soluções de integração, você precisa considerar o uso de vários threads para superar os efeitos de latência e limites de serviço.

Padrão de pull

O padrão de pull pode ser eficaz para aumento de dados. É possível usar o padrão de pull para obter os dados de um sistema externo sob demanda quando as linhas são recuperadas no Dataverse. As entidades virtuais podem ser adequadas para esse padrão.

Chaves alternativas

Em tabelas do Dataverse, as linhas são identificadas exclusivamente usando um GUID. Outros sistemas que precisam de integração com o Dataverse precisarão registrar o GUID no banco de dados ou deverão consultar o Dataverse para localizar a linha que precisa ser atualizada. Essa abordagem é ineficiente. O Dataverse fornece a capacidade de criar chaves alternativas em tabelas.

Uma chave alternativa permite que sistemas externos leiam e gravem linhas para acessar as linhas com eficiência sem precisar executar primeiro uma consulta para localizar o GUID. Por exemplo, os sistemas contábeis geralmente têm um número de conta alfanumérico que identifica a conta com exclusividade. É possível definir a coluna de número de conta na tabela do Dataverse como uma chave alternativa para que o sistema contábil leia e grave a conta usando os dados que ela armazena no seu próprio sistema.

Upsert

É possível reduzir a complexidade envolvida com cenários de integração de dados usando a mensagem Upsert. Ao enviar dados para o Microsoft Dataverse de um sistema externo, você pode não saber se um registro já existe no Dataverse. Nesses casos, você não saberá se deve usar uma operação Atualizar ou Criar. Primeiro é necessário realizar uma consulta para determinar se ela existe antes de executar a operação apropriada. Agora você pode reduzir essa complexidade e carregar dados no Dataverse com mais eficiência usando a mensagem Upsert.

O Upsert é usado com Chaves alternativas. É necessário fornecer informações suficientes na chamada Upsert e o Dataverse procurará a linha e criará ou atualizará a linha, conforme mostrado no diagrama a seguir.

Diagrama que mostra o uso da lógica de Upsert.

APIs personalizadas

APIs personalizadas são funcionalidades lançadas recentemente que permitem abstrair e consolidar um grupo de operações em uma API que os outros sistemas podem chamar.

É possível definir APIs personalizadas criando um registro de API personalizado, conforme mostrado na seguinte captura de tela.

Captura de tela de um registro de API personalizado.

Uma API personalizada pode ser uma função ou uma ação. Você deve usar uma função, que é uma solicitação GET, para obter informações e uma ação quando desejar modificar dados.

É possível usar um plug-in para executar a operação de dados real para a API personalizada.

Observação

Para obter mais informações, consulte Criar e usar APIs personalizadas.

Azure Functions

O Microsoft Azure Functions permite que os desenvolvedores criem lógicas complexas e reutilizáveis e as integrem a outros sistemas. O Azure Functions pode ser consumido com webhooks ou dispostos dentro de um conector personalizado. Ao usar o Azure Functions, os desenvolvedores podem criar componentes reutilizáveis para consultores funcionais e criadores de aplicativos usarem em seus aplicativos e fluxos. Além disso, outros aplicativos podem acessar o Azure Functions para enviar e receber dados no Dataverse. O Azure Functions pode se conectar ao Dataverse e acessar os dados.

É possível criar uma API para sua solução usando o Azure Functions para criar uma lógica personalizada do lado do servidor e expor a API por meio do Gerenciamento de API do Microsoft Azure.