Aller au contenu principal

Créer un pipeline sous contrôle de code source

Dans Databricks, vous pouvez contrôler un pipeline par les sources, ainsi que tout le code qui lui est associé. En contrôlant toutes les sources des fichiers associés à votre pipeline, les modifications de votre code de transformation, de votre code d'exploration et de la configuration de votre pipeline sont toutes versionnées dans Git et peuvent être testées en développement et déployées en production en toute confiance.

Un pipeline géré par les sources offre les avantages suivants :

  • Traçabilité : capturez chaque modification dans l'historique Git.
  • Test : Validez les changements de pipeline dans un Workspace de développement avant de les promouvoir dans un Workspace de production partagé. Chaque développeur dispose de son propre pipeline de développement sur sa propre Branch de code dans un dossier Git et dans son propre schéma.
  • Collaboration : Quand le développement et le test individuels sont terminés, les modifications de code sont poussées vers le pipeline de production principal.
  • Gouvernance : Conformez-vous aux normes CI/CD et de déploiement de l'entreprise.

Databricks permet que les pipelines et leurs fichiers sources soient gérés ensemble à l'aide de Declarative Automation Bundles. Avec les bundles, la configuration du pipeline est gérée par le contrôle de code source sous la forme de fichiers de configuration YAML, ainsi que les fichiers source Python ou SQL d'un pipeline. Un bundle peut avoir un ou plusieurs pipelines, ainsi que d'autres types de Ressources, tels que les Jobs.

Cette page montre comment configurer un pipeline à gestion de versions à l'aide des Declarative Automation Bundles (anciennement appelés Databricks Asset Bundles). Pour plus d'informations sur les bundles, consultez Que sont les Declarative Automation Bundles ?.

Exigences

Pour créer un pipeline contrôlé par la source, vous devez déjà disposer de :

Créer un nouveau pipeline dans un bundle

remarque

Databricks recommande de créer un pipeline dont le code source est contrôlé dès le start. Vous pouvez également ajouter un pipeline existant à un bundle qui est déjà contrôlé par les sources. Consultez Migrez les ressources existantes vers un bundle.

Pour créer un nouveau pipeline sous contrôle de code source :

  1. En haut de la barre latérale, cliquez sur Icône Plus. Nouveau , puis sélectionnez Icône de pipeline. pipeline ETL .

  2. Apportez les modifications que vous souhaitez au nom du pipeline ou au schéma. Consultez Créer un nouveau pipeline ETL.

  3. Cliquez sur le Icône du menu kebab. menu (à droite du bouton **Utiliser l'exemple Icône de code. de code**) et sélectionnez Icône de cube de pipeline. **Configurer en tant que sous contrôle de source**.

  4. Cliquez sur Créer un nouveau projet , puis sélectionnez un dossier Git dans lequel vous souhaitez placer votre code et votre configuration :

    Nouveau projet

  5. Cliquez sur Suivant .

  6. Saisissez les informations suivantes dans la boîte de dialogue Créer un bundle d’actifs :

    • Nom du bundle : Le nom du bundle.
    • Catalogue initial : le nom du catalogue qui contient le schéma à utiliser.
    • Utiliser un schéma personnel : Laissez cette case cochée si vous souhaitez isoler les modifications dans un schéma personnel, afin que lorsque les utilisateurs de votre organisation collaborent sur le même projet, vous n'écrasiez pas les modifications des uns et des autres en mode développement.
    • **Langue initiale** : La langue initiale à utiliser pour les exemples de fichiers pipeline du projet, soit Python ou SQL.

    Nouveau bundle.

  7. Cliquez sur « **Créer et déployer** ». Un bundle avec un pipeline est créé dans le dossier Git.

Explorez le bundle de pipelines

Ensuite, explorez le bundle de pipeline qui a été créé.

Le bundle, qui se trouve dans le dossier Git, contient les fichiers système du bundle et le fichier databricks.yml, qui définit les variables, les URL du workspace cible et les autorisations, ainsi que d'autres paramètres pour le bundle. Étant donné que databricks.yml se trouve dans la racine du bundle (le parent de la racine du pipeline), passez à l'onglet **Tous les fichiers** dans l'explorateur d'asset de pipeline pour le voir. Le dossier resources d'un bundle est l'endroit où sont contenues les définitions de ressources telles que les pipelines et les jobs.

Regrouper dans un dossier Git

Ouvrez le dossier resources, puis cliquez sur le bouton de l'éditeur de pipeline pour afficher le pipeline géré par le contrôle de code source :

Ouvrez l'éditeur de pipeline.

Bundle avec arborescence de pipeline

Le bundle de pipeline d'exemple inclut les fichiers suivants :

  • Un Notebook d’exploration d’exemples

  • Deux fichiers de code d'exemple qui effectuent des transformations sur des tables

  • Un exemple de fichier de code qui contient une fonction utilitaire.

  • Un fichier YAML de configuration de job qui définit le job dans le bundle qui exécute le pipeline

  • Un fichier YAML de configuration de pipeline qui définit le pipeline

important

Vous devez modifier ce fichier pour conserver de manière permanente toutes les modifications de configuration apportées au pipeline, y compris celles effectuées via l'interface utilisateur, sinon les modifications de l'interface utilisateur sont annulées lors du redéploiement du bundle. Par exemple, pour définir un catalogue par default différent pour le pipeline, modifiez le champ catalog dans ce fichier de configuration.

  • Un fichier README avec des détails supplémentaires sur le bundle de pipeline d'exemple et des instructions sur la façon d'exécuter le pipeline

Pour plus d'informations sur les fichiers de pipeline, consultez Navigateur d'assets de pipeline.

Pour plus d'informations sur la création et le déploiement de modifications dans le bundle de pipeline, consultez Créer des bundles dans le workspace et Déployer des bundles et exécuter des workflows depuis le workspace.

Exécuter le pipeline

Vous pouvez exécuter soit des Transformations individuelles, soit l’intégralité du pipeline contrôlé par les sources :

  • Pour exécuter et prévisualiser une seule transformation dans le pipeline, sélectionnez le fichier de transformation dans l'arborescence du navigateur Workspace afin de l'ouvrir dans l'éditeur de fichiers. En haut du fichier dans l'éditeur, cliquez sur le bouton de lecture Exécuter le fichier .
  • Pour exécuter toutes les Transformations dans le pipeline, cliquez sur le bouton Exécuter le pipeline en haut à droite du Workspace Databricks.

Pour plus d’informations sur l’exécution de pipelines, consultez Exécuter le code du pipeline.

Mettre à jour le pipeline

Vous pouvez mettre à jour les artefacts dans votre pipeline ou ajouter des explorations et transformations supplémentaires, mais vous devrez ensuite envoyer ces modifications à GitHub. Cliquez sur Icône de duplication. l' icône **Git** associée au lot de pipelines ou cliquez sur les points de suspension du dossier, puis sur **Git...** pour sélectionner les modifications à pousser. Voir commit et envoyer les modifications.

Envoyer les modifications à Git

De plus, lorsque vous mettez à jour des fichiers de configuration de pipeline ou ajoutez ou supprimez des fichiers du bundle, ces modifications ne sont pas propagées au workspace cible tant que vous n'avez pas explicitement déployé le bundle. Consultez Déployer des bundles et exécuter des workflows depuis le workspace.

remarque

Databricks vous recommande de conserver la configuration default pour les pipelines contrôlés par la source. La configuration default est configurée de manière à ce que vous n'ayez pas besoin de modifier la configuration YAML du bundle de pipeline lorsque des fichiers supplémentaires sont ajoutés via l'interface utilisateur.

Mettre à jour le pipeline

Ajouter un pipeline existant à un bundle

Pour ajouter un pipeline existant à un bundle, créez d’abord un bundle dans le Workspace, puis ajoutez la définition YAML du pipeline au bundle, comme décrit dans les pages suivantes :

Pour obtenir des informations sur la migration de ressources vers un bundle à l'aide du CLI Databricks, consultez Migrer des ressources existantes vers un bundle.

Ressources supplémentaires

Pour des tutoriels supplémentaires et du matériel de référence pour les pipelines, consultez Spark Declarative Pipelines.