Integración de datos con Logic Apps y SQL Server

Azure API Management
Azure Logic Apps
SQL Server

Esta solución utiliza Azure Logic Apps para integrar los datos en la nube en el almacenamiento de datos local.

La arquitectura muestra el uso de Azure API Management, el almacenamiento de secretos y claves de API en Azure Key Vault, una conexión a SQL Server a través de una puerta de enlace de datos local y la supervisión del rendimiento con Azure Monitor. Todos estos componentes se integran a través de la orquestación de Azure Logic Apps.

Architecture

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

El diagrama contiene dos cuadros, uno para los componentes de Azure y otro para los componentes locales. Fuera del cuadro de Azure hay un archivo de datos con la etiqueta JSON. Una flecha apunta desde el archivo JSON a un icono de API Management que está dentro del cuadro de Azure. Una segunda flecha señala desde el icono de API Management hasta un icono de Logic Apps que también se encuentra en el cuadro de Azure. Tres flechas señalan fuera del icono de Logic Apps. Una conduce a un icono de Key Vault que se encuentra dentro del cuadro de Azure. Otra conduce a un icono de puerta de enlace de datos local que se encuentra entre los dos cuadros. Y la tercera conduce a un icono de Azure Monitor que se encuentra dentro del cuadro de Azure. Otra flecha apunta desde la puerta de enlace a un icono de SQL Server que se encuentra dentro del cuadro local. Una última flecha apunta desde el icono de SQL Server a una persona que está fuera del cuadro local.

Descargue un archivo Visio de esta arquitectura.

Flujo de trabajo

  1. API Management acepta llamadas API en forma de solicitudes HTTP.

  2. API Management enruta de forma segura las solicitudes HTTP a Logic Apps.

  3. Cada solicitud HTTP desencadena una ejecución en Logic Apps:

    1. Logic Apps usa parámetros de plantilla protegida para recuperar las credenciales de la base de datos de Azure Key Vault.
    2. Logic Apps usa la característica Seguridad de la capa de transporte (TLS) para enviar las credenciales de la base de datos y una instrucción de base de datos a la puerta de enlace de datos local.
  4. La puerta de enlace de datos local se conecta a una base de datos de SQL Server para ejecutar la instrucción.

  5. SQL Server almacena los datos y los pone a disposición de las aplicaciones a las que acceden los usuarios.

  6. Azure Monitor recopila información sobre eventos y sobre el rendimiento de Logic Apps.

Componentes

Esta arquitectura utiliza los siguientes componentes:

  • Azure API Management crea puertas de enlace de API modernas y coherentes para los servicios de back-end. Además de aceptar llamadas API y enrutarlas a los back-end, esta plataforma también comprueba las claves, los tokens, los certificados y otras credenciales. API Management también aplica cuotas de uso y límites de frecuencia, y registra metadatos de llamada.

  • Azure Logic Apps automatiza los flujos de trabajo mediante la conexión de aplicaciones y datos entre nubes. Este servicio proporciona una manera de acceder con seguridad a los datos y procesarlos en tiempo real. Sus soluciones sin servidor se encargan de compilar, hospedar, escalar, administrar, mantener y supervisar aplicaciones.

  • Una puerta de enlace de datos local actúa como un puente que conecta los datos locales con servicios en la nube como Logic Apps. Normalmente, la puerta de enlace se instala en una máquina virtual local dedicada. Así, los servicios en la nube pueden usar los datos locales de forma segura.

  • Azure Key Vault almacena y controla el acceso a secretos como tokens, contraseñas y claves de API. Key Vault también crea y controla claves de cifrado y administra certificados de seguridad.

  • SQL Server proporciona una solución para almacenar y consultar datos estructurados y no estructurados. Este motor de base de datos ofrece un rendimiento y una seguridad líderes del sector.

  • Azure Monitor recopila datos en entornos y recursos de Azure. Esta información es útil para mantener la disponibilidad y el rendimiento. Otros servicios de Azure, como Azure Storage y Azure Event Hubs, también pueden utilizar estos datos de diagnóstico. Monitor está formado por dos plataformas de datos:

    • Registros de Azure Monitor registra y almacena datos de registro y de rendimiento. En el caso de Logic Apps, estos datos incluyen información sobre eventos de desencadenador, eventos de ejecución y eventos de acción.
    • Métricas de Azure Monitor recopila valores numéricos a intervalos regulares. En el caso de Logic Apps, estos datos incluyen la latencia de ejecución, la frecuencia y el porcentaje de éxito.

Alternativas

Existen algunas alternativas para esta solución:

Detalles del escenario

Una aplicación lógica puede almacenar los datos de las solicitudes HTTP en una base de datos de SQL Server. Dado que Logic Apps funciona como un punto de conexión de Azure API Management seguro, las llamadas a la API pueden desencadenar distintas tareas relacionadas con datos. Además de actualizar las bases de datos locales, también puede enviar mensajes de Teams o de correo electrónico.

Posibles casos de uso

Use esta solución para automatizar las tareas de integración de datos que realice en respuesta a las llamadas API.

Consideraciones

Estas consideraciones implementan los pilares del Azure Well-Architected Framework, que es un conjunto de principios rectores que puede utilizar para mejorar la calidad de una carga de trabajo. Para más información, consulte Marco de buena arquitectura de Microsoft Azure.

Confiabilidad

La confiabilidad garantiza que tu aplicación puede cumplir los compromisos contraídos con los clientes. Para más información, consulte Resumen del pilar de fiabilidad.

Para lograr una alta disponibilidad, agregue la puerta de enlace local a un clúster en lugar de instalar una puerta de enlace independiente.

Seguridad

La seguridad proporciona garantías contra ataques deliberados y el abuso de datos y sistemas valiosos. Para más información, consulte Introducción al pilar de seguridad.

Optimización de costos

La optimización de costos trata de reducir los gastos innecesarios y mejorar las eficiencias operativas. Para más información, vea Información general del pilar de optimización de costos.

En la tabla siguiente se proporcionan perfiles de costo que usan distintos niveles de rendimiento esperado:

API Management Ejecuciones de acciones de Logic Apps Ejecuciones de conectores de Logic Apps Perfil
Básico 1000/día 1000/día Perfil básico
Estándar 10 000/día 10 000/día Perfil estándar
Premium 100 000/día 100 000/día Perfil prémium

Los perfiles no incluyen los costos de una base de datos de SQL Server. Para ajustar los parámetros y explorar el costo de la ejecución de esta solución en su entorno, use la calculadora de precios de Azure.

Explore estas estrategias para minimizar los costos de Logic Apps:

Eficiencia del rendimiento

La eficiencia del rendimiento es la capacidad de la carga de trabajo para escalar con el fin de satisfacer de manera eficiente las demandas que los usuarios hayan ejercido sobre ella. Para obtener más información, vea Resumen del pilar de eficiencia del rendimiento.

Con el modelo sin servidor que usa Logic Apps, el servicio se escala automáticamente para satisfacer la demanda. Pero tenga en cuenta los límites de las operaciones de lectura y escritura con la puerta de enlace de datos local.

Colaboradores

Microsoft mantiene este artículo. Originalmente lo escribieron los siguientes colaboradores.

Creadores de entidad de seguridad:

Para ver los perfiles no públicos de LinkedIn, inicie sesión en LinkedIn.

Pasos siguientes