Editar

Integração de dados com Aplicativos Lógicos e SQL Server

Azure API Management
Azure Logic Apps
SQL Server

Esta solução utiliza as Aplicações Lógicas do Azure para integrar dados na nuvem no armazenamento de dados no local.

A arquitetura ilustra o uso do Gerenciamento de API do Azure, o armazenamento de segredos e chaves de API no Cofre de Chaves do Azure, uma conexão com o SQL Server por meio de um gateway de dados local e o monitoramento de desempenho com o Azure Monitor. Todos esses componentes são integrados por meio da orquestração de Aplicativos Lógicos do Azure.

Arquitetura

Architecture diagram showing how to use Logic Apps to respond to API calls by updating or accessing SQL Server.

O diagrama contém duas caixas, uma para componentes do Azure e outra para componentes locais. Fora da caixa do Azure está um arquivo de dados rotulado JSON. Uma seta aponta do arquivo JSON para um ícone de Gerenciamento de API que está dentro da caixa Azure. Uma segunda seta aponta do ícone Gerenciamento de API para um ícone de Aplicativos Lógicos que também está dentro da caixa do Azure. Três setas apontam para longe do ícone Aplicativos lógicos. Um deles leva a um ícone do Cofre da Chave que está dentro da caixa do Azure. Um deles leva a um ícone de gateway de dados local que está entre as duas caixas. E o terceiro leva a um ícone do Azure Monitor que está dentro da caixa do Azure. Outra seta aponta do gateway para um ícone do SQL Server que está dentro da caixa local. Uma seta final aponta do ícone do SQL Server para uma pessoa fora da caixa local.

Transfira um ficheiro do Visio desta arquitetura.

Fluxo de trabalho

  1. O Gerenciamento de API aceita chamadas de API na forma de solicitações HTTP.

  2. O Gerenciamento de API roteia com segurança as solicitações HTTP para Aplicativos Lógicos.

  3. Cada solicitação HTTP dispara uma execução em Aplicativos Lógicos:

    1. Os Aplicativos Lógicos usam parâmetros de modelo seguros para recuperar credenciais de banco de dados do Cofre de Chaves do Azure.
    2. Os Aplicativos Lógicos usam TLS (Transport Layer Security) para enviar as credenciais do banco de dados e uma instrução de banco de dados para o gateway de dados local.
  4. O gateway de dados local se conecta a um banco de dados do SQL Server para executar a instrução.

  5. O SQL Server armazena os dados e os disponibiliza para aplicativos que os usuários acessam.

  6. O Azure Monitor recolhe informações sobre eventos e desempenho das Aplicações Lógicas.

Componentes

Essa arquitetura usa os seguintes componentes:

  • O Gerenciamento de API do Azure cria gateways de API consistentes e modernos para serviços back-end. Além de aceitar chamadas de API e roteá-las para back-ends, essa plataforma também verifica chaves, tokens, certificados e outras credenciais. O Gerenciamento de API também impõe cotas de uso e limites de taxa e registra metadados de chamadas.

  • As Aplicações Lógicas do Azure automatizam fluxos de trabalho ligando aplicações e dados entre nuvens. Este serviço fornece uma maneira de acessar e processar dados com segurança em tempo real. Suas soluções sem servidor cuidam da criação, hospedagem, dimensionamento, gerenciamento, manutenção e monitoramento de aplicativos.

  • Um gateway de dados local atua como uma ponte que conecta dados locais com serviços de nuvem, como aplicativos lógicos. Normalmente, você instala o gateway em uma máquina virtual local dedicada. Os serviços de nuvem podem, então, usar dados locais com segurança.

  • O Azure Key Vault armazena e controla o acesso a segredos como tokens, palavras-passe e chaves de API. O Cofre de Chaves também cria e controla chaves de criptografia e gerencia certificados de segurança.

  • O SQL Server fornece uma solução para armazenar e consultar dados estruturados e não estruturados. Esse mecanismo de banco de dados apresenta desempenho e segurança líderes do setor.

  • O Azure Monitor coleta dados sobre ambientes e recursos do Azure. Essas informações são úteis para manter a disponibilidade e o desempenho. Outros serviços do Azure, como o Armazenamento do Azure e os Hubs de Eventos do Azure, também podem usar esses dados de diagnóstico. Duas plataformas de dados compõem o Monitor:

    • O Azure Monitor registra registros e armazena dados de log e desempenho. Para Aplicativos Lógicos, esses dados incluem informações sobre eventos de gatilho, eventos de execução e eventos de ação.
    • O Azure Monitor Metrics coleta valores numéricos em intervalos regulares. Para Aplicativos Lógicos, esses dados incluem a latência, a taxa e a porcentagem de sucesso de execução.

Alternativas

Existem algumas alternativas para esta solução:

  • Em vez de usar uma instância local do SQL Server, considere migrar para um serviço de banco de dados do Azure atualizado e totalmente gerenciado. O conector do SQL Server que os Aplicativos Lógicos usam também funciona para o Banco de Dados SQL do Azure e a Instância Gerenciada SQL do Azure. Para obter mais informações, consulte Automatizar fluxos de trabalho para um banco de dados SQL usando os Aplicativos Lógicos do Azure. Para começar com a migração, consulte Serviço de Migração de Banco de Dados do Azure.

  • Para tarefas de automação complexas, considere usar o Azure Functions em vez de Aplicativos Lógicos. Ambos os serviços permitem que você crie fluxos de trabalho sem servidor. O Azure Functions é um serviço de computação destinado à execução de código personalizado ou processamento complexo ou à integração com outros serviços. O Logic Apps é um serviço de nuvem destinado a automatizar e orquestrar tarefas e fluxos de trabalho de negócios. Ele fornece um designer visual e muitos conectores pré-construídos. Para obter mais informações, consulte Comparar o Azure Functions e os Aplicativos Lógicos do Azure.

  • Para integrações mais simples, considere usar Power Automate em vez de Aplicativos Lógicos. Para obter mais informações, consulte Comparar o Microsoft Power Automate e os aplicativos lógicos do Azure.

  • O Power Apps também fornece soluções para automatizar fluxos de trabalho que envolvem a conexão com fontes de dados locais.

Detalhes do cenário

Um aplicativo lógico pode armazenar dados de solicitação HTTP em um banco de dados do SQL Server. Como os Aplicativos Lógicos funcionam como um ponto de extremidade seguro de Gerenciamento de API do Azure, as chamadas para sua API podem disparar várias tarefas relacionadas a dados. Além de atualizar bancos de dados locais, você também pode enviar Teams ou mensagens de e-mail.

Potenciais casos de utilização

Use esta solução para automatizar tarefas de integração de dados que você executa em resposta a chamadas de API.

Considerações

Essas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios orientadores que você pode usar para melhorar a qualidade de uma carga de trabalho. Para obter mais informações, consulte Microsoft Azure Well-Architected Framework.

Fiabilidade

A confiabilidade garante que seu aplicativo possa atender aos compromissos que você assume com seus clientes. Para obter mais informações, consulte Visão geral do pilar de confiabilidade.

Para alta disponibilidade, adicione o gateway local a um cluster em vez de instalar um gateway autônomo.

Segurança

A segurança oferece garantias contra ataques deliberados e o abuso de seus valiosos dados e sistemas. Para obter mais informações, consulte Visão geral do pilar de segurança.

Otimização de custos

A otimização de custos consiste em reduzir despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, consulte Visão geral do pilar de otimização de custos.

A tabela a seguir fornece perfis de custo que usam níveis variáveis de taxa de transferência esperada:

Gestão de API Execuções de ações de aplicativos lógicos Execuções do conector de aplicativos lógicos Profile
Básica 1.000/dia 1.000/dia Perfil básico
Standard 10.000/dia 10.000/dia Perfil padrão
Premium 100.000/dia 100.000/dia Perfil premium

Os perfis não incluem os custos de um banco de dados do SQL Server. Para ajustar os parâmetros e explorar o custo de execução dessa solução em seu ambiente, use a calculadora de preços do Azure.

Explore estas estratégias para minimizar os custos dos Aplicativos Lógicos:

Eficiência de desempenho

Eficiência de desempenho é a capacidade da sua carga de trabalho para dimensionar para satisfazer as exigências que os utilizadores lhe colocam de forma eficiente. Para obter mais informações, consulte Visão geral do pilar de eficiência de desempenho.

Com o modelo sem servidor que o Logic Apps usa, o serviço é dimensionado automaticamente para atender à demanda. Mas esteja ciente dos limites das operações de leitura e gravação com o gateway de dados local.

Contribuidores

Este artigo é mantido pela Microsoft. Foi originalmente escrito pelos seguintes contribuidores.

Principais autores:

Para ver perfis não públicos do LinkedIn, inicie sessão no LinkedIn.

Próximos passos