Exécuter une mise à jour sur un pipeline Delta Live Tables

Cet article explique ce qu’est une mise à jour du pipeline Delta Live Tables et comment l’exécuter.

Une fois que vous avez créé un pipeline et que vous êtes prêt à l’exécuter, vous démarrez une mise à jour. Une mise à jour de pipeline effectue les opérations suivantes :

  • démarre un cluster avec la bonne configuration ;
  • Découvre toutes les tables et vues définies et vérifie toutes les erreurs d’analyse telles que les noms de colonnes non valides, les dépendances manquantes et les erreurs de syntaxe.
  • crée ou met à jour les tables et vues avec les données disponibles les plus récentes.

À l’aide d’une mise à jour de validation, vous pouvez rechercher des problèmes dans le code source d’un pipeline sans attendre la création ou la mise à jour des tables. Cette fonctionnalité est utile lors du développement ou du test de pipelines, car elle vous permet de rechercher et de corriger rapidement des erreurs dans votre pipeline, telles que des noms de table ou de colonnes incorrects.

Pour savoir comment créer un pipeline, consultez le Tutoriel : exécuter votre premier pipeline Delta Live Tables.

Démarrer une mise à jour de pipeline

Azure Databricks propose plusieurs options pour démarrer les mises à jour de pipeline, notamment les suivantes :

  • Dans l’interface utilisateur Delta Live Tables, vous disposez des options suivantes :
    • Cliquez sur le bouton Icône de démarrage Delta Live Tables sur la page des détails du pipeline.
    • Dans la liste des pipelines, cliquez sur l’icône de flèche à droite dans la colonne Actions.
  • Pour démarrer une mise à jour dans un notebook, cliquez sur Delta Live Tables > Démarrer dans la barre d’outils du notebook. Voir Ouvrir ou exécuter un pipeline Delta Live Tables depuis un notebook.
  • Vous pouvez déclencher des pipelines par programmation à l’aide de l’API ou de l’interface CLI. Consultez l’API pipeline.
  • Vous pouvez planifier le pipeline en tant que travail à l’aide de l’interface utilisateur Delta Live Tables ou de l’interface utilisateur des travaux. Consultez Planifier un pipeline.

Remarque

Le comportement par défaut des mises à jour de pipeline déclenchées manuellement à l’aide de l’une de ces méthodes consiste à actualiser tout.

Mise à jour des tables et des vues Delta Live Tables

Les tables et vues mises à jour, ainsi que la façon dont ces tables et vues sont mises à jour, dépendent du type de mise à jour :

  • Actualiser tout : toutes les tables sont mises à jour pour refléter l’état actuel de leurs sources de données d’entrée. Pour les tables de diffusion en continu, de nouvelles lignes sont ajoutées à la table.
  • Actualiser complète : toutes les tables sont mises à jour pour refléter l’état actuel de leurs sources de données d’entrée. Pour les tables de diffusion en continu, Delta Live Tables tente d’effacer toutes les données de chaque table, puis de charger toutes les données de la source de diffusion en continu.
  • Sélection de l’actualisation : le comportement est refresh selection identique à mais refresh all vous permet d’actualiser uniquement les tables sélectionnées. Les tables sélectionnés sont mises à jour pour refléter l’état actuel de leurs sources de données d’entrée. Pour les tables de diffusion en continu, de nouvelles lignes sont ajoutées à la table.
  • Sélection complète de l’actualisation : le comportement est full refresh selection identique à mais full refresh all vous permet d’effectuer une actualisation complète des seules tables sélectionnées. Les tables sélectionnés sont mises à jour pour refléter l’état actuel de leurs sources de données d’entrée. Pour les tables de diffusion en continu, Delta Live Tables tente d’effacer toutes les données de chaque table, puis de charger toutes les données de la source de diffusion en continu.

Pour les vues matérialisées existantes, une mise à jour a le même comportement qu’une opération SQL REFRESH sur une vue matérialisée. Pour les nouvelles vues matérialisées, le comportement est identique à une opération SQL CREATE.

Démarrer une mise à jour de pipeline pour les tables sélectionnées

Vous pouvez éventuellement retraiter des données pour les tables sélectionnées uniquement dans votre pipeline. Par exemple, lors du développement, vous ne changez qu’une seule table et souhaitez réduire la durée des tests, ou une mise à jour de pipeline échoue et vous voulez actualiser uniquement les tables ayant échoué.

Notes

Vous pouvez utiliser l’actualisation sélective uniquement avec les pipelines déclenchés.

Pour démarrer une mise à jour qui actualise uniquement les tables sélectionnées, dans la page Détails du pipeline :

  1. Cliquez sur Sélectionner les tables à actualiser. La boîte de dialogue Sélectionner les tables à actualiser s’affiche.

    Si vous ne voyez pas le bouton Sélectionner des tables pour l’actualisation, vérifiez que la page détails du pipeline affiche la dernière mise à jour et que la mise à jour est terminée. Si un DAG n’est pas affiché pour la dernière mise à jour, par exemple, car la mise à jour a échoué, le bouton Sélectionner des tables pour l’actualisation n’est pas affiché.

  2. Pour sélectionner les tables à actualiser, cliquez sur chaque table. Les tables sélectionnées sont mises en évidence et étiquetées. Pour supprimer une table de la mise à jour, cliquez à nouveau sur la table.

  3. Cliquez sur Actualiser la sélection.

    Notes

    Le bouton Actualiser la sélection affiche le nombre de tables sélectionnées entre parenthèses.

Pour retraiter les données déjà ingérées pour les tables sélectionnées, cliquez accent circonflexe inversé bleu en regard du bouton Actualiser la sélection, puis cliquez sur Sélection d’actualisation complète.

Démarrer une mise à jour de pipeline pour les tables en échec

Si une mise à jour de pipeline échoue en raison d’erreurs dans une ou plusieurs tables du graphique du pipeline, vous pouvez démarrer une mise à jour uniquement des tables en échec et de toutes les dépendances en aval.

Notes

Les tables exclues ne sont pas actualisées, même si elles dépendent d’une table en échec.

Pour mettre à jour les tables en échec, dans la page Détails du pipeline, cliquez sur Actualiser les tables en échec.

Pour mettre à jour uniquement les tables en échec sélectionnées :

  1. Cliquez sur Bouton vers le bas à côté du bouton Actualiser les tables en échec et cliquez sur Sélectionner les tables à actualiser. La boîte de dialogue Sélectionner les tables à actualiser s’affiche.

  2. Pour sélectionner les tables à actualiser, cliquez sur chaque table. Les tables sélectionnées sont mises en évidence et étiquetées. Pour supprimer une table de la mise à jour, cliquez à nouveau sur la table.

  3. Cliquez sur Actualiser la sélection.

    Notes

    Le bouton Actualiser la sélection affiche le nombre de tables sélectionnées entre parenthèses.

Pour retraiter les données déjà ingérées pour les tables sélectionnées, cliquez accent circonflexe inversé bleu en regard du bouton Actualiser la sélection, puis cliquez sur Sélection d’actualisation complète.

Rechercher des problèmes dans un pipeline sans la mise à jour de tables

Important

La fonctionnalité Delta Live Tables Validate mise à jour se trouve dans Préversion publique.

Pour vérifier si le code source d’un pipeline est valide sans exécuter une mise à jour complète, utilisez Valider. Une mise à jour Validate résout les définitions des jeux de données et des flux définis dans le pipeline, mais ne matérialise ni ne publie aucun jeu de données. Les erreurs détectées lors de la validation, telles que des noms de table ou de colonne incorrects, sont signalées dans l’interface utilisateur.

Pour exécuter une Validate mise à jour, cliquez Chevron bleu vers le bas sur la page de détails du pipeline en regard de Démarrer , puis cliquez sur Valider.

Une fois la Validate mise à jour terminée, le journal des événements affiche uniquement les événements liés à la Validate mise à jour et aucune métrique n’est affichée dans le DAG. Si des erreurs sont détectées, les détails sont disponibles dans le journal des événements.

Vous ne pouvez voir les résultats que pour la mise à jour Validate la plus récente. Si la mise à jour Validate était la dernière mise à jour exécutée, vous pouvez voir les résultats en le sélectionnant dans l’historique des mises à jour. Si une autre mise à jour est exécutée après la mise à jour Validate, les résultats ne sont plus disponibles dans l’interface utilisateur.

Comment choisir des limites de pipeline

Un pipeline Delta Live Tables peut traiter les mises à jour vers une table unique, de nombreuses tables avec des relations de dépendance, de nombreuses tables sans relation ou plusieurs flux indépendants de tables avec des relations de dépendances. Cette section contient des considérations pour vous aider à déterminer comment décomposer vos pipelines.

Les pipelines Delta Live Tables plus volumineux présentent plusieurs avantages. Ces options en question sont les suivantes :

  • Utiliser plus efficacement les ressources de cluster.
  • Réduire le nombre de pipelines dans votre espace de travail.
  • Réduire la complexité de l’orchestration des workflows.

Voici quelques recommandations courantes sur la façon dont les pipelines de traitement doivent être divisés :

  • Fractionner les fonctionnalités aux limites de l’équipe. Par exemple, votre équipe de données peut gérer des pipelines pour transformer des données pendant que vos analystes de données conservent des pipelines qui analysent les données transformées.
  • Fractionner les fonctionnalités aux limites spécifiques de l’application pour réduire le couplage et faciliter la réutilisation des fonctionnalités courantes.

Modes de développement et de production

Vous pouvez optimiser l’exécution du pipeline en basculant entre les modes développement et production. Utilisez les boutons de l’Icône de basculement de l’environnement Delta Live Tables dans l’interface utilisateur du Pipelines pour basculer entre ces deux modes. Par défaut, les pipelines s’exécutent en mode développement.

Lorsque vous exécutez votre pipeline en mode développement, le système Delta Live Tables effectue les opérations suivantes :

  • réutilise un cluster pour éviter les surcharges liées aux redémarrages ; Par défaut, les clusters s’exécutent pendant deux heures lorsque le mode de développement est activé. Vous pouvez le modifier avec le pipelines.clusterShutdown.delay paramètre dans le calcul Configurer pour un pipeline Delta Live Tables.
  • désactive les nouvelles tentatives de pipeline pour vous permettre de détecter et de corriger immédiatement les erreurs.

En mode de production, le système Delta Live Tables effectue les opérations suivantes :

  • redémarre le cluster en cas d’erreurs récupérables spécifiques, notamment les fuites de mémoire et les informations d’identification obsolètes ;
  • Réessayez l’exécution en cas d’erreurs spécifiques, telles qu’un échec de démarrage d’un cluster.

Remarque

Le basculement entre les modes développement et production contrôle uniquement le comportement d’exécution des clusters et des pipelines. Les emplacements de stockage et les schémas cibles dans le catalogue pour la publication des tables doivent être configurés dans le cadre des paramètres de pipeline, et ne sont pas affectés lors du basculement d’un mode à l’autre.

Planifier un pipeline

Vous pouvez démarrer manuellement un pipeline déclenché ou exécuter le pipeline selon une planification avec un travail Azure Databricks. Vous pouvez créer et planifier un travail avec une seule tâche de pipeline directement dans l’interface utilisateur Delta Live Tables ou ajouter une tâche de pipeline à un flux de travail à tâches multiples dans l’interface utilisateur des tâches. Consultez Tâche du pipeline Delta Live Tables pour les projets.

Pour créer un travail à tâche unique et une planification pour le travail dans l’interface utilisateur Delta Live Tables :

  1. Cliquez sur Planifier > Ajouter une planification. Si le pipeline est inclus dans un ou plusieurs travaux planifiés, le bouton Planification est mis à jour pour afficher le nombre de planifications existantes, par exemple, Planification (5) .
  2. Entrez un nom pour le travail dans le champ Nom du travail.
  3. Définissez la Planification sur Planifiée.
  4. Indiquez la période, l’heure de début et le fuseau horaire.
  5. Configurez une ou plusieurs adresses e-mail pour recevoir des alertes en cas de démarrage, de réussite ou d’échec du pipeline.
  6. Cliquez sur Créer.