Aller au contenu principal

Configurez et modifiez les Lakeflow Jobs

Vous pouvez créer et exécuter un Job en utilisant l’interface utilisateur des Jobs, ou des outils de développement tels que la CLI Databricks ou l’API REST. En utilisant l’interface utilisateur ou l’API, vous pouvez réparer et réexécuter un Job ayant échoué ou annulé. Cet article montre comment créer, configurer et modifier des Jobs en utilisant l’interface utilisateur du Workspace Jobs & Pipelines . Pour des informations sur d’autres outils, consultez les éléments suivants :

  • Pour en savoir plus sur l'utilisation de la CLI Databricks pour créer et exécuter des Jobs, consultez la CLI Databricks.
  • Pour en savoir plus sur l'utilisation de l'API Jobs pour créer et exécuter des jobs, consultez Jobs dans la référence de l'API REST.
  • Si vous préférez une approche Infrastructure-as-Code (IaC) pour la configuration des Jobs, vous pouvez utiliser les Declarative Automation Bundles. Pour en savoir plus sur l'utilisation des bundles pour configurer et orchestrer vos Jobs, consultez Declarative Automation Bundles.
  • Pour savoir comment exécuter et planifier des Jobs directement dans un Notebook Databricks, consultez Créer et gérer des Jobs de Notebooks planifiés.
astuce

Pour afficher un Job au format YAML, cliquez sur le menu kebab à gauche de Exécuter maintenant pour le Job, puis cliquez sur Passer à la version de code (YAML) .

Configuration minimale pour un job

Tous les Jobs sur Databricks nécessitent les éléments suivants :

  • Une tâche qui contient la logique à exécuter, telle qu'un Notebook Databricks. Voir Configurer et modifier les tâches dans Lakeflow Jobs
  • Une ressource de compute pour exécuter la logique. La ressource de compute peut être un compute serverless, un compute de jobs classique ou un compute universel. Voir Configurer le compute pour les jobs.
  • Un planning spécifié pour l'exécution du job. Optionnellement, vous pouvez omettre de définir un programme et Trigger le Job manuellement.
  • Un nom unique.

Créez un nouveau job

Cette section décrit les étapes pour créer un nouveau job avec une tâche de notebook et planifier avec l’interface utilisateur du Workspace.

Les jobs contiennent une ou plusieurs tâches. Vous créez un nouveau job en configurant la première tâche de ce job.

remarque

Chaque type de tâche dispose d'options de configuration dynamique dans l'interface utilisateur du Workspace. Voir Configurer et modifier des tâches dans Lakeflow Jobs.

  1. Dans votre Workspace, cliquez Icône Workflows. sur **Tâches et pipelines** dans la barre latérale.
  2. Cliquez sur Créer , puis sur Job .
  3. Cliquez sur la vignette Notebook pour configurer la première tâche. Si la vignette Notebook n'est pas disponible, cliquez sur Ajouter un autre type de tâche et recherchez Notebook .
  4. Saisissez un Nom de la tâche .
  5. Sélectionnez un **notebook** pour le champ **Chemin**.
  6. Cliquez sur Enregistrer la tâche .

Si votre workspace n'est pas activé pour le compute serverless pour les Jobs, vous devez sélectionner une option **Compute**. Databricks recommande de toujours utiliser le compute de jobs lors de la configuration des tâches.

Un nouveau Job apparaît dans la liste des Jobs du Workspace avec le nom par défaut New Job <date> <time>.

Vous pouvez continuer d'ajouter d'autres tâches dans le même Job, si nécessaire pour votre workflow. Les jobs comportant plus de 100 tâches peuvent avoir des exigences particulières. Pour plus d’informations, consultez Jobs avec un grand nombre de tâches.

Planifier un job

Vous pouvez décider quand votre job est exécuté. By default, it only runs when you manually start it, but you can also configure it to run automatically. Vous pouvez créer un Trigger pour exécuter un Job selon un calendrier ou en fonction d'un événement.

Contrôler le flux des tâches dans le Job

Lors de la configuration de plusieurs tâches dans des Jobs, vous pouvez utiliser des tâches spécialisées pour contrôler la façon dont les tâches s'exécutent. Consultez Contrôler le flux des tâches au sein des Lakeflow Jobs.

Sélectionnez un job à modifier dans le workspace.

Pour modifier un job existant avec l'interface utilisateur du Workspace, procédez comme suit :

  1. Dans la barre latérale de votre workspace Databricks, cliquez sur Tâches & Pipelines .
  2. Facultativement, sélectionnez les filtres **Jobs** et **Appartenant à moi**.
  3. Cliquez sur le **Link** **Nom** de votre Job.

Utilisez l'interface utilisateur des Jobs pour effectuer les opérations suivantes :

  • Modifier les paramètres du job
  • Renommer, cloner ou supprimer un Job
  • Ajouter de nouvelles tâches à un Job existant
  • Modifier les paramètres de tâche
remarque

Vous pouvez également consulter les définitions JSON à utiliser avec les endpoints de l'API REST get, de création et de Reset.

Modifier les paramètres du Job

Le volet latéral contient les détails du Job . Vous pouvez modifier le calendrier ou le trigger du job, les parameters du job, la configuration du compute, les tags, les notifications, le nombre maximal d'exécutions simultanées, les thresholds de durée et les paramètres Git. Vous pouvez également modifier les permissions de Job si le contrôle d'accès aux Jobs est activé.

Ajouter des paramètres pour toutes les tâches de job

Les paramètres configurés au niveau du Job sont transmis aux tâches du Job qui acceptent les paramètres clé-valeur, y compris les fichiers Python wheel configurés pour accepter les arguments de mot-clé. Consultez Paramétrer les jobs.

Ajouter des tags à un Job

Pour ajouter des étiquettes ou des attributs clé-valeur à votre job, vous pouvez ajouter des tags lorsque vous modifiez le job. Vous pouvez utiliser des tags pour filtrer les Jobs dans la liste des Jobs. Par exemple, vous pouvez utiliser un tag department pour filtrer tous les Jobs qui appartiennent à un service spécifique.

remarque

Étant donné que les tags de Job ne sont pas conçus pour stocker des informations sensibles telles que des informations personnellement identifiables ou des mots de passe, Databricks recommande d'utiliser les tags uniquement pour les valeurs non sensibles.

Les tags sont également propagés aux clusters de job créés lors de l'exécution d'un job, ce qui vous permet d'utiliser des tags avec votre monitoring de cluster.

Cliquez sur Icône Plus. Tag dans le volet latéral Détails du Job pour ajouter ou modifier des tags. Vous pouvez ajouter le tag comme une étiquette ou une paire clé-valeur. Pour ajouter une étiquette, saisissez l’étiquette dans le champ Clé et laissez le champ Valeur vide.

Utiliser Git avec les Jobs

Vous pouvez configurer les tâches de Job pour extraire le code source directement d'un repository Git distant. Pour les instructions et les meilleures pratiques, y compris la récupération fragmentée pour les grands repository, consultez Utiliser Git avec Lakeflow Jobs.

Ajouter une politique d'utilisation serverless à un job

info

Aperçu

Cette fonctionnalité est en aperçu public.

Si votre Workspace utilise des politiques d’utilisation Serverless pour attribuer l’utilisation Serverless, vous pouvez sélectionner la politique d’utilisation Serverless de votre Job à l’aide du paramètre Politique d’utilisation dans le volet latéral Détails du Job . Consultez Attribuer l'utilisation avec les politiques d'utilisation serverless.

Renommer, cloner ou supprimer un job

Pour renommer un Job, accédez à l'interface utilisateur Jobs, cliquez sur le nom du Job et entrez un nouveau nom.

Vous pouvez rapidement créer un nouveau job en clonant un job existant. Le clonage d'un Job crée une copie identique du Job, à l'exception de l'ID du Job. Pour cloner un Job, procédez comme suit :

  1. Cliquez sur Icône Workflows. Jobs et Pipelines dans la barre latérale gauche.
  2. Cliquez sur le nom du Job que vous souhaitez cloner pour ouvrir l'interface utilisateur des Jobs.
  3. Cliquez sur Icône du menu kebab. à côté du bouton Exécuter maintenant .
  4. Sélectionnez Cloner le Job dans le menu déroulant.
  5. Saisissez un nom pour le job cloné.
  6. Cliquer sur Cloner .

Supprimer un job

Pour supprimer un Job, accédez à la page du Job, cliquez sur Icône du menu kebab. à côté du nom du Job, et sélectionnez Supprimer le Job dans le menu déroulant.

Configurez les threshold pour la durée d'exécution du Job ou les métriques de backlog de streaming

info

Aperçu

L’observabilité du streaming pour les Lakeflow Jobs est en Aperçu public.

Vous pouvez configurer des seuils facultatifs pour la durée d'exécution des jobs ou les métriques du backlog de streaming. Pour configurer les seuils de durée ou les seuils de métriques de streaming, cliquez sur **Seuils de durée et de délai du backlog de streaming** dans le volet **Détails du Job**.

Pour configurer les threshold de durée de Job, y compris les temps de réalisation prévus et maximaux pour le Job, sélectionnez Durée d'exécution dans le menu déroulant Métrique . Saisissez une durée dans le champ Avertissement pour configurer le temps de réalisation prévu du job. Si le job dépasse ce threshold, un événement est déclenché. Vous pouvez utiliser cet événement pour être averti lorsqu'un job s'exécute lentement. Voir Configurer les notifications pour les jobs lents. Pour configurer une durée d'exécution maximale pour un job, saisissez la durée maximale dans le champ Délai d'expiration . Si le job ne se termine pas dans ce délai, Databricks définit son statut sur « Délai d'attente dépassé ».

Pour configurer un threshold pour une métrique de backlog de streaming, sélectionnez la métrique dans le menu déroulant Métrique et entrez une valeur pour le threshold. Pour en savoir plus sur les métriques spécifiques prises en charge par une source de streaming, consultez Voir les métriques pour les tâches de streaming.

Si un événement est Trigger parce qu'un threshold est dépassé, vous pouvez utiliser l'événement pour envoyer une notification. Consultez Configurer les notifications pour les Jobs lents.

Vous pouvez éventuellement spécifier des duration thresholds pour les tâches. Consultez Configurer les threshold pour la durée d'exécution des tâches ou les métriques de backlog de streaming.

Activer la mise en file d'attente des exécutions de job

remarque

La mise en file d'attente est activée par default pour les jobs créés via l'interface utilisateur après le 15 avril 2024.

Pour éviter que les exécutions d'un Job ne soient ignorées en raison des limites de concurrence, vous pouvez activer la mise en file d'attente pour le Job. Lorsque la mise en file d'attente est activée, l'exécution est mise en file d'attente pendant 48 heures maximum si les ressources ne sont pas disponibles pour l'exécution d'un Job. Lorsque la capacité est disponible, l'exécution du Job est défilée de la file d'attente et exécutée. Les exécutions en file d'attente sont affichées dans la liste des exécutions pour le Job et la liste des exécutions récentes de Job.

Une exécution est mise en file d'attente lorsqu'une des limites suivantes est atteinte :

  • Le nombre maximal d'exécutions actives simultanées dans le Workspace.
  • Le nombre maximal d'exécutions simultanées de tâches Run Job dans le workspace.
  • Le nombre maximal d'exécutions simultanées du Job.

La mise en file d'attente est une propriété de niveau Job qui met en file d'attente les exécutions uniquement pour ce Job.

Pour activer ou désactiver la mise en file d'attente, cliquez sur Paramètres avancés et sur le bouton bascule File d'attente dans le panneau latéral Détails du job .

Configurer le nombre maximal d'exécutions simultanées

Par default, le nombre maximal d'exécutions simultanées pour tous les nouveaux Job est de 1.

Cliquez sur Modifier les exécutions concurrentes sous Paramètres avancés pour définir le nombre maximal d'exécutions parallèles de ce Job.

Databricks ignore l’exécution si le Job a déjà atteint son nombre maximal d’exécutions actives lors de la tentative de start d’une nouvelle exécution.

Définissez cette valeur supérieure à 1 pour autoriser plusieurs exécutions simultanées du même Job. Ceci est utile, par exemple, si vous Trigger votre Job selon une planification fréquente et que vous souhaitez permettre le chevauchement des exécutions consécutives ou Trigger plusieurs exécutions qui diffèrent par leurs input parameters.