Configurer les paramètres pour les tâches Azure Databricks

Cet article fournit des détails sur la configuration des tâches Azure Databricks et des tâches de travail individuelles dans l'interface utilisateur des tâches. Pour en savoir plus sur l’utilisation de l’interface CLI de Databricks pour modifier les paramètres des tâches, exécutez la commande CLI databricks jobs update -h. Pour en savoir plus sur l’utilisation de l’API Travaux, consultez API Travaux.

Certaines options de configuration sont disponibles sur le travail et d'autres options sont disponibles sur des tâches individuelles. Par exemple, le nombre maximal d'exécutions simultanées peut être défini uniquement sur la tâche, tandis que les politiques de nouvelle tentative sont définies pour chaque tâche.

Modifier un travail

Pour modifier la configuration d’un travail :

  1. Cliquez sur Icône TravauxWorkflows dans la barre latérale.
  2. Dans la colonne Nom, cliquez sur le nom d’un travail.

Le volet latéral affiche les Détails du travail. Vous pouvez modifier le déclencheur de la tâche, la configuration de calcul, les notifications, le nombre maximum d'exécutions simultanées, configurer des seuils de durée et ajouter ou modifier des balises. Si le contrôle d’accès aux travaux est activé, vous pouvez également modifier les autorisations du travail.

Ajouter des paramètres pour toutes les tâches

Vous pouvez configurer des paramètres sur une tâche qui sont transmis à toutes les tâches de la tâche qui acceptent des paramètres clé-valeur, y compris les fichiers wheel de Python configurés pour accepter des arguments de type mot-clé. Les paramètres définis au niveau de la tâche sont ajoutés aux paramètres configurés au niveau de la tâche. Les paramètres de tâche transmis aux tâches sont visibles dans la configuration de la tâche, ainsi que tous les paramètres configurés sur la tâche.

Vous pouvez également transmettre des paramètres de tâche à des tâches qui ne sont pas configurées avec des paramètres clé-valeur tels que des tâches JAR ou Spark Submit. Pour transmettre des paramètres de tâche à ces tâches, formatez les arguments comme {{job.parameters.[name]}}, en remplaçant [name] par key celui qui identifie le paramètre.

Les paramètres de tâche sont prioritaires sur les paramètres de tâche. Si un paramètre de travail et un paramètre de tâche ont la même clé, le paramètre de travail remplace le paramètre de tâche.

Vous pouvez remplacer les paramètres de tâche configurés ou ajouter de nouveaux paramètres de tâche lorsque vous exécutez une tâche avec des paramètres différents ou réparez une exécution de tâche.

Vous pouvez également partager le contexte des travaux et des tâches à l'aide d'un ensemble de références de valeurs dynamiques.

Pour ajouter des paramètres de tâche, cliquez sur Modifier les paramètres dans le panneau latéral Détails de la tâche et spécifiez la clé et la valeur par défaut de chaque paramètre. Pour afficher une liste des références de valeurs dynamiques disponibles, cliquez sur Parcourir les valeurs dynamiques.

Ajouter des balises à un travail

Pour ajouter des libellés ou des attributs clé:valeur à votre travail, vous pouvez ajouter des étiquettes quand vous modifiez le travail. Vous pouvez utiliser des étiquettes pour filtrer les travaux dans la liste Travaux. Par exemple, vous pouvez utiliser une étiquette department pour filtrer tous les travaux appartenant à un service spécifique.

Remarque

Les étiquettes de travail n’étant pas conçues pour stocker des informations sensibles telles que des informations d’identification personnelle ou des mots de passe, Databricks recommande de limiter l’utilisation des étiquettes aux valeurs non sensibles.

Les étiquettes se propagent également aux clusters de travaux créés lors de l’exécution d’un travail, ce qui vous permet d’utiliser des étiquettes avec votre monitoring de cluster existant.

Pour ajouter ou modifier des étiquettes, cliquez sur + Étiquette dans le volet latéral Détails du travail. Vous pouvez ajouter la balise en tant que clé et valeur ou étiquette. Pour ajouter un libellé, entrez-le dans le champ Clé et laissez le champ Valeur vide.

Configurer des clusters partagés

Pour voir les tâches associées à un cluster, cliquez sur l'onglet Tâches et survolez le cluster dans le panneau latéral. Pour modifier la configuration du cluster pour toutes les tâches associées, cliquez sur Configurer sous le cluster. Pour configurer un nouveau cluster pour toutes les tâches associées, cliquez sur Basculer sous le cluster.

Contrôler l'accès à un emploi

Le contrôle d’accès aux travaux permet aux propriétaires de travaux et aux administrateurs d’accorder des autorisations affinées sur leurs travaux. Les propriétaires de tâches peuvent choisir quels autres utilisateurs ou groupes peuvent afficher les résultats de la tâche. Les propriétaires peuvent également choisir qui peut gérer les exécutions de leurs travaux (autorisations Exécuter maintenant et Annuler l’exécution).

Pour plus d’informations sur les niveaux d’autorisation des travaux, consultez Listes de contrôle d’accès (ACL) des tâches.

Vous devez avoir l’autorisation PEUT GÉRER ou EST PROPRIÉTAIRE sur le travail pour pouvoir gérer les autorisations sur celui-ci.

  1. Dans la barre latérale, cliquez sur Exécutions de travaux.

  2. Cliquez sur le nom d’un travail.

  3. Dans le panneau Détails du travail, cliquez sur Modifier les autorisations.

  4. Dans Paramètres d’autorisation, cliquez sur le menu déroulant Sélectionner un utilisateur, un groupe ou un principal de service, puis sélectionnez un utilisateur, un groupe ou un principal de service.

    Boîte de dialogue Paramètres des autorisations

  5. Cliquez sur Ajouter..

  6. Cliquez sur Enregistrer.

Gérer le propriétaire de la tâche

Par défaut, le créateur d’un travail dispose de l’autorisation Est propriétaire, et représente l’utilisateur dans le paramètre Exécuter en tant que du travail. L’exécution du travail en tant qu’identité de l’utilisateur dans le paramètre Exécuter en tant que. Pour plus d’informations sur le paramètre Exécuter en tant que, consultez Exécuter une tâche en tant que principal de service.

Les administrateurs de l’espace de travail peuvent modifier le nom du propriétaire de la tâche. Lors d’un transfert de propriété, l’ancien propriétaire se voit accorder l’autorisation PEUT GÉRER

Remarque

Lorsque le paramètre RestrictWorkspaceAdmins d’un espace de travail est défini sur ALLOW ALL, les administrateurs de l’espace de travail peuvent remplacer le propriétaire d’une tâche par tout utilisateur ou responsable de service de leur espace de travail. Pour empêcher les administrateurs de l’espace de travail de modifier eux-mêmes le propriétaire d’une tâche, consultez Restreindre les administrateurs d’espace de travail.

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

Cliquez sur Modifier les exécutions simultanées sous Paramètres avancés pour définir le nombre maximum d’exécutions parallèles pour cette tâche. Azure Databricks ignore l’exécution si le travail a déjà atteint son nombre maximal d’exécutions actives lors de la tentative de démarrage d’une nouvelle exécution. Définissez cette valeur sur une valeur supérieure à la valeur par défaut de 1 pour exécuter simultanément plusieurs exécutions du même travail. Ceci est utile, par exemple, si vous déclenchez votre tâche selon une planification fréquente et souhaitez permettre aux exécutions consécutives de se chevaucher ou si vous souhaitez déclencher plusieurs exécutions qui diffèrent par leurs paramètres d'entrée.

Activer la mise en file d'attente des exécutions de tâches

Pour permettre aux exécutions d’une tâche d’être placées dans une file d’attente afin d’être exécutées plus tard lorsqu’elles ne peuvent pas être exécutées immédiatement en raison de limites de concurrence, cliquez sur le bouton bascule File d’attente sous Paramètres avancés. Voir Que se passe-t-il si mon travail ne peut pas s'exécuter en raison de limites de concurrence ?.

Remarque

La mise en file d’attente est activée par défaut pour les tâches créées via l’interface utilisateur après le 15 avril 2024.

Configurer une heure d'achèvement prévue ou un délai d'expiration pour une tâche

Vous pouvez configurer des seuils de durée facultatifs pour une tâche, notamment une heure d'achèvement prévue pour la tâche et une durée d'exécution maximale pour la tâche. Pour configurer des seuils de durée, cliquez sur Définir les seuils de durée.

Pour configurer une heure d'achèvement prévue pour la tâche, entrez la durée prévue dans le champ Avertissement. Si la tâche dépasse ce seuil, vous pouvez configurer des notifications pour la tâche à exécution lente. Voir Configurer les notifications pour les tâches à exécution lente ou en retard.

Pour configurer un délai d'exécution maximum pour une tâche, entrez la durée maximale dans le champ Délai d'expiration. Si la tâche ne se termine pas dans ce délai, Azure Databricks définit son statut sur « Timed Out » et la tâche est arrêtée.

Modifier une tâche

Pour définir les options de configuration des tâches :

  1. Cliquez sur Icône TravauxWorkflows dans la barre latérale.
  2. Dans la colonne Nom, cliquez sur le nom d’un travail.
  3. Cliquez sur l'onglet Tâches et sélectionnez la tâche à modifier.

Définir les dépendances des tâches

Vous pouvez définir l’ordre d’exécution des tâches dans un travail en utilisant le menu déroulant Dépend de. Vous pouvez définir ce champ sur une ou plusieurs tâches du travail.

Modifier les dépendances des tâches

Remarque

Dépend de n'est pas visible si le travail consiste en une seule tâche.

La configuration des dépendances de tâche crée une graphe orienté acyclique (DAG) d’exécution des tâches, une méthode courante de représentation de l’ordre d’exécution dans les planificateurs de travaux. Par exemple, imaginez le travail suivant constitué de quatre tâches :

Exemple de diagramme de dépendances de tâches

  • La tâche 1 est la tâche racine et ne dépend d’aucune autre tâche.
  • La tâche 2 et la tâche 3 dépendent de l’exécution préalable de la tâche 1.
  • Enfin, la tâche 4 dépend de l’exécution réussie de la tâche 2 et de la tâche 3.

Azure Databricks exécute des tâches en amont avant d’exécuter des tâches en aval, en exécutant autant d’entre elles en parallèle que possible. Le diagramme suivant illustre l’ordre de traitement de ces tâches :

Exemple de flux de dépendances de tâches

Configurer un cluster pour une tâche

Pour configurer le cluster dans lequel une tâche est exécutée, cliquez sur la liste déroulante Cluster. Vous pouvez modifier un cluster de tâches partagé, mais vous ne pouvez pas supprimer un cluster partagé si d'autres tâches l'utilisent encore.

Pour en savoir plus sur la sélection et la configuration de clusters pour exécuter des tâches, consultez Utiliser le calcul Azure Databricks avec vos travaux.

Configurer les bibliothèques dépendantes

Les bibliothèques dépendantes sont installées sur le cluster avant l’exécution de la tâche. Vous devez définir toutes les dépendances de tâche pour vous assurer qu’elles sont installées avant le démarrage de l’exécution. Suivez les suggestions dans Gérer les dépendances de bibliothèque pour spécifier les dépendances.

Configurer une heure d'achèvement prévue ou un délai d'expiration pour une tâche

Vous pouvez configurer des seuils de durée facultatifs pour une tâche, notamment une heure d'achèvement prévue pour la tâche et une durée d'exécution maximale pour la tâche. Pour configurer des seuils de durée, cliquez sur Seuil de durée.

Pour configurer l’heure d’achèvement prévue de la tâche, saisissez la durée dans le champ Avertissement. Si la tâche dépasse ce seuil, un événement est déclenché. Vous pouvez utiliser cet événement pour avertir lorsqu'une tâche s'exécute lentement. Voir Configurer les notifications pour les tâches à exécution lente ou en retard.

Pour configurer un délai d'exécution maximum pour une tâche, saisissez la durée maximale dans le champ Délai d'expiration. Si la tâche ne se termine pas dans ce délai, Azure Databricks définit son statut sur « Timed Out ».

Configurer une stratégie de nouvelles tentatives pour une tâche

Pour configurer une stratégie qui détermine quand et combien de fois les exécutions ayant échoué sont réessayées, cliquez sur + Ajouter à côté de Nouvelles tentatives. L’intervalle de nouvelle tentative est calculé en millisecondes entre le début de l’exécution ayant échoué et l’exécution de la nouvelle tentative suivante.

Remarque

Si vous configurez le délai d’expiration et les nouvelles tentatives, le délai d’expiration s’applique à chaque nouvelle tentative.