Compartir a través de


Creación de una aplicación mediante DevOps y GraphQL API

Se aplica a:bases de datos SQL en Microsoft Fabric

En esta sección del tutorial, usará los recursos que ha creado para crear una aplicación web que permita al usuario seleccionar una región afectada por una interrupción y, a continuación, ver los otros proveedores de esa región, para alertar a la empresa a cualquier interrupción adicional de la cadena de suministro. Creará un punto de conexión de GraphQL a través de los datos y, a continuación, creará una aplicación de ASP.NET que puede implementar localmente o en un proveedor de nube.

Los proyectos de desarrollo de software implican tareas de operaciones para desarrolladores (DevOps), una de las cuales es el control de código fuente. Para comenzar esta sección, colocará los elementos que ha creado bajo el control de código fuente.

En este artículo se presenta una serie de escenarios útiles para crear una aplicación basada en SQL Database en Fabric.

Requisitos previos

CI/CD en Fabric con Azure DevOps

En esta parte del tutorial, aprenderá a trabajar con la base de datos SQL en Microsoft Fabric con Azure DevOps.

Una base de datos SQL de Microsoft Fabric tiene integración de control de código fuente que permite a los usuarios de SQL realizar un seguimiento de las definiciones de sus objetos de base de datos a lo largo del tiempo y en un equipo:

  • El equipo puede confirmar la base de datos en el control de código fuente, lo que convierte automáticamente la base de datos activa en código en el repositorio de control de código fuente configurado (Azure DevOps).

  • El equipo puede actualizar objetos de base de datos desde el contenido del control de código fuente, que valida el código en Azure DevOps antes de aplicar un cambio diferencial a la base de datos.

    Diagrama de un bucle de control de código fuente simple.

Si no está familiarizado con el control de código fuente en Microsoft Fabric, este es un recurso recomendado:

Introducción al control de código fuente

Una vez completados estos requisitos previos, puede mantener el área de trabajo sincronizada con Azure DevOps. Esto le permite confirmar los cambios realizados en el área de trabajo en la rama de Azure DevOps y actualizar el área de trabajo siempre que cualquier usuario cree nuevas confirmaciones en la rama de Azure DevOps.

Ahora editará uno de los objetos de la base de datos mediante Azure DevOps, que actualizará tanto el repositorio como los objetos de base de datos. También puede editar objetos directamente en el repositorio o "insertarlos" allí, pero en este caso realizar todos los pasos en el entorno de Azure DevOps.

  1. En la vista Área de trabajo del tutorial, asegúrese de que el área de trabajo está configurada para estar bajo control de código fuente y todos los objetos muestran Sincronizado.

  2. En la vista Área de trabajo, verá el icono de Git, la rama seleccionada y un mensaje sobre la última vez que el área de trabajo se sincronizó con el control de código fuente. Junto a la fecha y hora, verá un vínculo de identificador para la ubicación específica en el entorno de Azure DevOps. Abra ese vínculo para continuar.

    Captura de pantalla que muestra el vínculo a la ubicación del entorno de Azure DevOps en el área de trabajo.

  3. Inicie sesión en el entorno de Azure DevOps si se solicita.

  4. Una vez dentro del entorno de Azure DevOps, seleccione el elemento Files en el panel del explorador. Se muestran los objetos sincronizados con la base de datos SQL en Fabric y el repositorio.

  5. Expanda el suppy_chain_analytics_database. SQLDatabase, a continuación , dbo, luego Tablas y, a continuación, Suppliers.sql objeto.

    Captura de pantalla que muestra el objeto de base de datos Proveedores en Azure DevOps.

Observe la definición de T-SQL de la tabla en el contenido del objeto. En un entorno de codificación de producción, este objeto se modificaría mediante herramientas de desarrollo como Visual Studio o Visual Studio Code. En cualquier caso, la definición de ese objeto de base de datos se replica en el repositorio, que ha reflejado desde el estado actual de la base de datos. Vamos a usar el control de código fuente de Azure DevOps para realizar algunos cambios en los objetos de base de datos en los pasos siguientes del tutorial.

  1. Busque la [Fax] línea de definición de columna y seleccione el botón Editar. Edite la definición de columna en [Fax] NVARCHAR (255) NULL,.

  2. Seleccione el botón Confirmar.

    Captura de pantalla que muestra la edición de la definición de columna Fax en la tabla Proveedores, dentro de Azure DevOps.

  3. Rellene el cuadro de mensaje Confirmar que aparece y seleccione el botón Confirmar. Intente ser descriptivo de todos los cambios en el control de código fuente, para la ventaja de usted y su equipo.

  4. La confirmación escribe el cambio en el repositorio.

  5. Vuelva a la base de datos SQL en el portal de Fabric y, a continuación, seleccione Control de código fuente.

  6. Tiene una actualización pendiente. En producción, revisará estos cambios. Seleccione el botón Actualizar todo. La actualización puede tardar algún tiempo.

  7. Seleccione la base de datos SQL en Nombre del tejido. Abra una nueva ventana de consulta en la base de datos SQL.

  8. Copie y pegue el código T-SQL siguiente para ver los cambios en la tabla en directo en la base de datos:

    SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'Suppliers';
    
  9. Escriba el siguiente código T-SQL que consulta para agregar una columna denominada Notes a la Suppliers tabla. Resalte solo esa sección de código y seleccione el botón Ejecutar:

    ALTER TABLE Suppliers ADD Notes NVARCHAR(MAX);
    
  10. Ahora vuelva al tutorial Área de trabajo en el portal de Fabric.

  11. Seleccione el botón Control de código fuente y observe que en lugar de una actualización, el sistema muestra una solicitud de cambio. Active la casilla situada junto al nombre del objeto y, a continuación, seleccione el botón Confirmar.

  12. El sistema confirma los cambios realizados en el editor de consultas, y puede volver al portal de Azure DevOps y navegar al área Archivos y el esquema dbo y, a continuación, Tablas y objeto Suppliers para ver la nueva columna. (Es posible que tenga que actualizar la página para ver el cambio.)

    Captura de pantalla que muestra la tabla Proveedores con un tipo de datos diferente para Fax.

Ahora ha visto cómo puede interactuar con los esquemas de objetos de base de datos SQL desde el control de código fuente en Azure DevOps. Para obtener más información sobre el control de código fuente en Microsoft Fabric, consulte Integración del control de código fuente de SQL Database en Microsoft Fabric y Tutorial: Administración del ciclo de vida en Fabric.

Configuración y configuración de GraphQL API

La conexión a una aplicación de base de datos suele implicar la instalación de un conjunto de bibliotecas para la aplicación que usan el protocolo de flujo de datos tabular (TDS) que interactúa directamente con la base de datos.

Microsoft Fabric incluye una interfaz graphQL para trabajar no solo con bases de datos, sino con varios orígenes de datos. También puede combinar estos orígenes para una vista de datos integrada. GraphQL es un lenguaje de consulta para las API que permite solicitar exactamente los datos que necesita, lo que facilita la evolución de las API a lo largo del tiempo y habilita herramientas de desarrollo eficaces. Proporciona una descripción completa y comprensible de los datos de la API, lo que proporciona a los clientes la capacidad de solicitar exactamente lo que necesitan y nada más. Esto hace que las aplicaciones que usan GraphQL sean rápidas y estables porque controlan los datos que obtienen, no el servidor. Puede considerar la interfaz GraphQL como proporcionar una vista de un conjunto de datos contenido en un origen de datos. Puede consultar los datos y cambiarlos mediante mutaciones. Puede obtener más información sobre GraphQL en esta referencia.

Puede empezar a compilar api de GraphQL directamente desde el editor de consultas SQL de Fabric. Fabric crea automáticamente el esquema de GraphQL en cuestión de minutos en función de los datos y las aplicaciones están listas para conectarse.

Creación de una API para GraphQL

Para crear la API para GraphQL que usará para una aplicación:

  1. Abra el portal de base de datos del tutorial.

  2. Seleccione el botón Nuevo y seleccione API para GraphQL.

  3. Escriba el texto supplier_impact_gql del nombre del elemento y seleccione Crear.

  4. Se le presenta un panel Elegir datos. Desplácese hasta que encuentre SupplyChain.vProductsBySuppliers, la vista que creó anteriormente en este tutorial. Selecciónelo.

    Captura de pantalla que muestra la vista previa Elegir datos de datos en la vista.

  5. Seleccione el botón Cargar.

  6. En el panel Query1, reemplace el texto que ve allí por la siguiente cadena de consulta GraphQL:

    query { vProductsbySuppliers(filter: { SupplierLocationID: { eq: 7 } }) { items { CompanyName SupplierLocationID ProductCount } } }
    
  7. Seleccione el botón Ejecutar en la ventana Query1. Los resultados de la consulta GraphQL se devuelven a la ventana Resultados en formato JSON.

    Captura de pantalla de una consulta y un conjunto de resultados de GraphQL para una base de datos SQL.

  8. Seleccione el botón Copiar punto de conexión en la cinta de opciones.

  9. Seleccione el botón Copiar cuando aparezca el panel Copiar vínculo. Almacene esta cadena en un bloc de notas u otra ubicación que se usará en la aplicación de ejemplo de este tutorial. Por ejemplo, tendrá un aspecto similar al siguiente: https://api.fabric.microsoft.com/v1/workspaces/<work space id>/graphqlapis/<graph api id>/graphql

La API para GraphQL ya está lista para aceptar conexiones y solicitudes. Puede utilizar el editor de API para probar y crear prototipos de consultas GraphQL y el explorador de esquemas para comprobar los tipos de datos y los campos expuestos en la API. Para obtener más información, consulte Creación de GraphQL API desde la base de datos SQL en el portal de Fabric.

Creación de una aplicación web para consultar datos

Hasta ahora en este tutorial ha creado una base de datos que almacena las ventas y los productos de Contoso, y ha agregado proveedores y entidades de unión mediante Transact-SQL (T-SQL). Ahora quiere permitir que los desarrolladores usen los datos sin tener que aprender T-SQL y también habilitarlos para consultar varios componentes de Microsoft Fabric en una sola interfaz. Ejecute esta aplicación localmente en una interfaz REST de .NET autohospedada que tenga acceso al punto de conexión de GraphQL que creó en este tutorial. También puede implementar esta aplicación directamente en Microsoft Azure como una aplicación web o en otro servidor web de su elección.

Creación de una aplicación web mediante la base de datos SQL en Fabric API for GraphQL

Se le ha pedido que cree una aplicación que muestre a todos los proveedores afectados si una ubicación tiene una interrupción de la cadena de suministro, debido a desastres naturales u otras interrupciones. Este código muestra cómo crear una aplicación de ASP.NET que usa una consulta graphQL para acceder a una consulta en el punto de conexión de SQL In Fabric GraphQL que creó en la última sección del tutorial.

  1. Instale el SDK de .NET adecuado para el sistemaoperativo.
  2. Abra el recurso en esta ubicación y siga todos los pasos que ve allí.

Capturas de pantalla de ejemplo de la aplicación de este tutorial:

Captura de pantalla de un explorador web que muestra la aplicación de ejemplo en Azure Websites.

Captura de pantalla de un explorador web que muestra el sitio web de graphql de ejemplo que proporciona los resultados de una consulta, Recuento de productos por proveedores.

Paso siguiente