Créer une application en utilisant DevOps et l’API GraphQL
S’applique à : ✅base de données SQL dans Microsoft Fabric
Dans cette section du didacticiel, vous utiliserez les ressources que vous avez créées pour développer une application web qui permet à l’utilisateur de sélectionner une région affectée par une panne, puis de voir les autres fournisseurs de cette région, pour alerter l’entreprise de toute interruption supplémentaire de la chaîne d’approvisionnement. Vous créerez un point de terminaison GraphQL sur vos données, puis créerez une application ASP.NET que vous pouvez déployer localement ou sur un fournisseur de services cloud.
Les projets de développement logiciel impliquent des tâches DevOps (Developer Operations), dont l’une est le contrôle de code source. Vous commencerez cette section en plaçant les éléments que vous avez créés sous le contrôle de code source.
Cet article présente une série de scénarios utiles pour créer une application basée sur une base de données SQL dans Fabric.
Prérequis
- Terminez toutes les étapes précédentes de ce didacticiel.
- Activez Paramètres du locataire d’intégration Git.
- Activez le paramètre administrateur du locataire pour l’API pour GraphQL.
- Créer une organisation et un projet dans Microsoft Azure DevOps.
CI/CD dans Fabric avec Azure DevOps
Dans cette partie du didacticiel, vous apprendrez à utiliser votre base de données SQL dans Microsoft Fabric avec Azure DevOps.
Une base de données SQL dans Microsoft Fabric dispose d’une intégration de contrôle de code source, permettant aux utilisateurs SQL de suivre les définitions de leurs objets de base de données au fil du temps et au sein d’une équipe :
L’équipe peut valider la base de données dans le contrôle de code source, qui convertit automatiquement la base de données dynamique en code dans le référentiel de contrôle de code source configuré (Azure DevOps).
L’équipe peut mettre à jour des objets de base de données depuis le contenu du contrôle de code source, qui valide le code dans Azure DevOps avant d’appliquer une modification différentielle à la base de données.
Si vous n’êtes pas familiarisé avec le contrôle de code source dans Microsoft Fabric, voici une ressource recommandée :
Prise en main du contrôle de code source
Une fois ces prérequis terminés, vous pouvez synchroniser votre espace de travail avec Azure DevOps. Cela vous permet de valider toute modification que vous apportez dans l’espace de travail sur la branche Azure DevOps et de mettre à jour votre espace de travail chaque fois qu’une personne crée de nouvelles validations dans la branche Azure DevOps.
Vous allez maintenant modifier l’un des objets de votre base de données en utilisant Azure DevOps, qui mettra à jour le référentiel comme les objets de base de données. Vous pouvez également modifier des objets directement dans le référentiel ou les envoyer (push), mais dans ce cas, effectuez toutes les étapes dans votre environnement Azure DevOps.
Dans la vue Espace de travail de votre didacticiel, vérifiez que votre espace de travail est configuré pour être sous le contrôle de code source et que tous les objets affichent Synchronisé.
Dans la vue Espace de travail, vous verrez l’icône Git, la branche que vous avez sélectionnée et un message indiquant la dernière fois où l’espace de travail a été synchronisé avec le contrôle de code source. À côté de la date et de l’heure, vous verrez un lien d’identificateur de l’emplacement spécifique dans votre environnement Azure DevOps. Ouvrez ce lien pour continuer.
Connectez-vous à votre environnement Azure DevOps si cela vous est demandé.
Une fois dans l’environnement Azure DevOps, sélectionnez l’élément Fichiers dans le volet de l’explorateur. Les objets synchronisés avec votre base de données SQL dans Fabric et le référentiel sont affichés.
Développez la suppy_chain_analytics_database. SQLDatabase, puis dbo, puis Tables, puis l’objet Suppliers.sql.
Notez la définition T-SQL de la table dans le contenu de l’objet. Dans un environnement de codage de production, cet objet serait modifié en utilisant des outils de développement tels que Visual Studio ou Visual Studio Code. Dans tous les cas, la définition de cet objet de base de données est répliquée dans le référentiel, que vous avez mis en miroir depuis l’état actuel de la base de données. Utilisons le contrôle de code source Azure DevOps pour apporter des modifications aux objets de base de données dans les étapes suivantes du didacticiel.
Recherchez la ligne de définition de colonne
[Fax]
et sélectionnez le bouton Modifier. Modifiez la définition de colonne sur[Fax] NVARCHAR (255) NULL,
.Sélectionnez le bouton Valider.
Renseignez la boîte de message Valider qui s’affiche et sélectionnez le bouton Valider. Essayez de décrire chaque modification du contrôle de code source, dans votre intérêt et celui de votre équipe.
La validation écrit la modification dans le référentiel.
Revenez à la base de données SQL dans le portail Fabric, puis sélectionnez Contrôle de code source.
Vous avez une mise à jour en attente. En production, vous étudieriez ces modifications. Sélectionnez le bouton Tout mettre à jour. La mise à jour peut prendre un certain temps.
Sélectionnez le nom de la base de données SQL. Ouvrez une nouvelle fenêtre de requête dans votre base de données SQL.
Copiez et collez le code T-SQL suivant pour voir les modifications apportées à la table en direct dans la base de données :
SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'Suppliers';
Entrez le code T-SQL suivant qui interroge pour ajouter une colonne nommée
Notes
à la tableSuppliers
. Mettez en surbrillance cette section de code uniquement et sélectionnez le bouton Exécuter :ALTER TABLE Suppliers ADD Notes NVARCHAR(MAX);
Revenez maintenant à l’Espace de travail du didacticiel dans le portail Fabric.
Sélectionnez le bouton Contrôle de code source et notez qu’au lieu d’une Mise à jour, votre système affiche une demande de Modification. Cochez la case en regard du nom de l’objet, puis sélectionnez le bouton Valider.
Le système valide les modifications apportées dans l’éditeur de requête, et vous pouvez revenir au portail Azure DevOps et accéder à la zone Fichiers et au schéma
dbo
, puis aux Tableset à l’objetSuppliers
pour voir la nouvelle colonne. (Vous devrez peut-être actualiser la page pour voir la modification.)
Vous avez maintenant vu comment interagir avec vos schémas d’objet de base de données SQL depuis votre contrôle de code source dans Azure DevOps. Pour plus d’informations sur le contrôle de code source dans Microsoft Fabric, consultez Intégration du contrôle de code source des bases de données SQL dans Microsoft Fabric et Didacticiel : gestion du cycle de vie dans Fabric.
Configurer l’API GraphQL
La connexion à une application de base de données implique souvent l’installation d’un ensemble de bibliothèques pour votre application, qui utilisent le protocole TDS (Tabular Data Stream), interagissant directement avec la base de données.
Microsoft Fabric inclut une interface GraphQL pour travailler non seulement avec des bases de données, mais aussi avec plusieurs sources de données. Vous pouvez également combiner ces sources pour une vue des données intégrée. GraphQL est un langage de requête pour les API qui vous permet de demander exactement les données dont vous avez besoin, ce qui facilite l’évolution des API au fil du temps et l’activation d’outils de développement puissants. Il fournit une description complète et compréhensible des données dans votre API, ce qui donne aux clients le pouvoir de demander exactement ce dont ils ont besoin et rien de plus. Cela rend les applications utilisant GraphQL rapides et stables, car elles contrôlent les données qu’elles obtiennent, et non le serveur. Vous pouvez considérer l’interface GraphQL comme fournissant une vue d’un ensemble de données contenu dans une source de données. Vous pouvez interroger les données et modifier les données en utilisant des mutations. Vous pouvez en savoir plus sur GraphQL à cette référence.
Vous pouvez commencer à créer des API GraphQL directement depuis l’éditeur de requête Fabric SQL. Fabric génère automatiquement le schéma GraphQL en fonction de vos données, et les applications sont prêtes à se connecter en quelques minutes.
Créer une API pour GraphQL
Pour créer l’API pour GraphQL que vous utiliserez pour une application :
Ouvrez le portail de la base de données du didacticiel.
Sélectionnez le bouton Nouveau et sélectionnez API pour GraphQL.
Entrez le texte supplier_impact_gql pour le Nom de votre élément, puis sélectionnez Créer.
Un panneau Choisir des données vous est présenté. Faites défiler jusqu’à ce que vous trouviez
SupplyChain.vProductsBySuppliers
, la vue que vous avez créée précédemment dans ce didacticiel. Sélectionnez-le.Cliquez sur le bouton Charger.
Dans le panneau Query1 (Requête1), remplacez le texte que vous voyez ici par la chaîne de requête GraphQL suivante :
query { vProductsbySuppliers(filter: { SupplierLocationID: { eq: 7 } }) { items { CompanyName SupplierLocationID ProductCount } } }
Sélectionnez le bouton Exécuter dans la fenêtre Query1 (Requête1). Les résultats de la requête GraphQL sont renvoyés à la fenêtre Résultats au format JSON.
Sélectionnez le bouton Copier le point de terminaison dans le ruban.
Sélectionnez le bouton Copier lorsque le panneau Copier le lien s’affiche. Stockez cette chaîne dans un bloc-notes ou à un autre emplacement pour l’utiliser dans l’exemple d’application pour ce didacticiel. Par exemple, il ressemblera à :
https://api.fabric.microsoft.com/v1/workspaces/<work space id>/graphqlapis/<graph api id>/graphql
Votre API pour GraphQL est maintenant prête à accepter les connexions et les demandes. Vous pouvez utiliser l’éditeur API pour tester et prototyper des requêtes GraphQL et l’Explorer du schéma pour vérifier les types de données, ainsi que les champs exposés dans l’API. Pour plus d’informations, consultez Créer une API GraphQL depuis votre base de données SQL dans le portail Fabric.
Créer une application web pour interroger des données
Jusqu’à présent, dans ce didacticiel, vous avez créé une base de données qui stocke les ventes et les produits pour Contoso, et ajouté des fournisseurs et des entités de jointure en utilisant Transact-SQL (T-SQL). Vous souhaitez maintenant permettre aux développeurs d’utiliser les données sans avoir à apprendre T-SQL et à interroger plusieurs composants Microsoft Fabric dans une seule interface. Exécutez cette application localement dans une interface REST .NET auto-hébergée qui accède au point de terminaison GraphQL que vous avez créé dans ce didacticiel. Vous pouvez également déployer cette application directement sur Microsoft Azure en tant qu’application web ou sur un autre serveur web de votre choix.
Créer une application web en utilisant les bases de données SQL dans l’API Fabric pour GraphQL
Vous avez été invité à créer une application qui affiche tous les fournisseurs affectés si un Emplacement a une rupture de chaîne d’approvisionnement, en raison de catastrophes naturelles ou d’autres interruptions. Ce code montre comment créer une application ASP.NET qui utilise une requête GraphQL pour accéder à une requête dans le point de terminaison GraphQL SQL dans Fabric que vous avez créé dans la dernière section du didacticiel.
- Installez le kit de développement logiciel (SDK) .NET approprié pour votre système d’exploitation.
- Ouvrez la ressource dans cet emplacement et suivez toutes les étapes que vous y voyez.
Voici quelques exemples de captures d’écran de l’application de ce didacticiel :