Présentation des pipelines

Un pipeline est l’unité principale de développement et d’exécution d’Apache Spark™ Declarative Pipelines (SDP) dans Lakeflow. Un pipeline est une collection de fichiers de code source et une configuration. Les fichiers sources déclarent des jeux de données (tables de diffusion en continu, vues matérialisées et vues) ainsi que les requêtes et les flux qui les produisent. La configuration spécifie comment le pipeline s’exécute et où les données sont stockées.

Un pipeline sert de conteneur aux flux, aux tables en streaming, aux vues matérialisées et aux sinks que vous définissez. Pendant que le pipeline s’exécute, il analyse les dépendances entre ces objets et orchestre automatiquement leur ordre d’exécution et de parallélisation. Pour plus d’informations sur les objets qu’un pipeline contient, consultez Qu’est-ce que les pipelines Lakeflow ?. Pour obtenir une comparaison des pipelines Lakeflow et des pipelines déclaratifs Apache Spark™, consultez Pipelines déclaratifs Apache Spark.

Code source du pipeline

Le code source du pipeline est écrit dans Python ou SQL. Un seul pipeline peut combiner des fichiers sources Python et SQL, mais chaque fichier ne peut contenir qu’une seule langue. Étant donné que le pipeline analyse les dépendances de jeu de données sur tous ses fichiers sources, vous pouvez organiser le code source entre les fichiers dans n’importe quel ordre.

Pour obtenir des conseils de développement spécifiques au langage, consultez Développer du code de pipeline avec Python et développer du code de pipelines Lakeflow avec SQL.

Graphique de pipeline

Les pipelines déduitnt automatiquement les dépendances entre les jeux de données et les organisent dans un graphique acyclique (DAG) dirigé. Le graphique détermine l’ordre d’évaluation : les jeux de données en amont sont calculés avant ceux en aval. Vous pouvez afficher et interagir avec le graphique de pipeline dans l’éditeur de pipelines Lakeflow.

Mises à jour du pipeline

Une mise à jour de pipeline calcule l’état actuel de chaque jeu de données par :

  1. Démarrage d’un cluster avec la configuration correcte.
  2. Analyse des fichiers sources et création du graphique de dépendances.
  3. Calcul ou mise à jour incrémentielle de chaque jeu de données dans l’ordre de dépendance.

Les pipelines s’exécutent en deux modes :

  • Déclenché : le pipeline s’exécute une fois et s’arrête lorsque tous les jeux de données sont à jour.
  • Continu: le pipeline s’exécute indéfiniment et traite de nouvelles données au fur et à mesure de leur arrivée.

Les mises à jour que vous déclenchez de manière interactive à partir de l’éditeur optimisent l’itération rapide, réutilisant le cluster et désactivant les nouvelles tentatives automatiques. Consultez le comportement d'exécution de la mise à jour.

Types de pipelines

La liste Tâches et pipelines ne comprend pas seulement des pipelines créés avec Lakeflow Pipelines. Azure Databricks prend en charge plusieurs types de pipelines, et la liste Jobs & Pipelines ainsi que la page de surveillance des pipelines indiquent le type de chacun afin que vous puissiez les distinguer. Le tableau suivant mappe chaque type de pipeline à la pipeline_type valeur enregistrée dans le journal des événements :

Saisissez dans Tâches & Pipelines pipeline_type dans le journal d’événements Description
ETL WORKSPACE Un pipeline Lakeflow. Consultez Spark Declarative Pipelines.
Ingestion MANAGED_INGESTION Pipeline d’ingestion géré créé avec Lakeflow Connect. Voir les concepts de connecteurs Lakeflow Connect.
MV/ST DBSQL Un pipeline autonome. Voir les pipelines indépendants.
Synchronisation de table de base de données DATABASE_TABLE_SYNC Pipeline qui synchronise une table avec une base de données Lakebase. Consultez les données Serve lakehouse avec des tables synchronisées.

Pipelines autonomes

Vous pouvez créer et gérer des tables de streaming et des vues matérialisées en dehors d’un pipeline Lakeflow sous forme de pipelines autonomes. Vous pouvez utiliser Databricks SQL ou Python pour créer et actualiser des tables de streaming autonomes et des vues matérialisées. Ils s’exécutent sur la même infrastructure Azure Databricks et ont la même sémantique de traitement que dans un pipeline Lakeflow. Lorsque vous définissez une table de diffusion en continu autonome ou une vue matérialisée, les flux sont définis implicitement dans le cadre de la table de diffusion en continu ou de la définition de vue matérialisée.

Pour plus d’informations, consultez pipelines autonomes.

Éditeur de Pipelines Lakeflow

L’éditeur de pipelines Lakeflow est un IDE conçu pour le développement de pipelines. Il offre :

  • Éditeur de code multi-fichiers pour les fichiers sources Python et SQL
  • Navigateur de ressources du pipeline pour organiser des fichiers et des dossiers
  • Graphique de pipeline interactif montrant les dépendances et l’état du jeu de données
  • Aperçu des données pour les tables de streaming et les vues matérialisées
  • Informations d’exécution et un volet Problèmes affichant les résultats de la dernière exécution
  • Exécution sélective pour actualiser des fichiers ou des tables individuels sans exécuter le pipeline complet

L’éditeur s’intègre à la plateforme Azure Databricks et prend en charge le contrôle de version via les dossiers Git. Pour obtenir des instructions pas à pas, consultez Développer et déboguer des pipelines ETL avec l’Éditeur de pipelines Lakeflow.

Ressources additionnelles