Partager via


Exécuter votre travail Azure Databricks avec un calcul serverless pour les flux de travail

Important

Comme le calcul serverless pour les workflows ne prend pas en charge le contrôle du trafic de sortie, vos travaux ont un accès complet à Internet.

Le calcul serverless pour les flux de travail vous permet d’exécuter votre travail Azure Databricks sans configurer et déployer l’infrastructure. Avec le calcul serverless, vous vous concentrez sur l’implémentation de vos pipelines de traitement et d’analyse des données, et Azure Databricks gère efficacement les ressources de calcul, notamment l’optimisation et la mise à l’échelle du calcul pour vos charges de travail. La mise à l’échelle automatique et Photon sont automatiquement activés pour les ressources de calcul qui exécutent votre travail.

L’optimisation automatique du calcul serverless pour les flux de travail optimise automatiquement le calcul en sélectionnant les ressources appropriées telles que les types d’instances, la mémoire et les moteurs de traitement en fonction de votre charge de travail. L’optimisation automatique retente également automatiquement les travaux ayant échoué.

Databricks met automatiquement à niveau la version de Databricks Runtime pour prendre en charge les améliorations et les mises à niveau de la plateforme tout en garantissant la stabilité de vos travaux Azure Databricks. Pour afficher la version actuelle de Databricks Runtime utilisée par le calcul serverless pour les flux de travail, consultez les Notes de publication du calcul serverless.

Étant donné que l’autorisation de création de cluster n’est pas nécessaire, tous les utilisateurs de l’espace de travail peuvent utiliser le calcul serverless pour exécuter leurs flux de travail.

Cet article décrit l’utilisation de l’interface utilisateur Travaux Azure Databricks pour créer et exécuter des travaux qui utilisent le calcul serverless. Vous pouvez également automatiser la création et l’exécution de travaux qui utilisent le calcul serverless avec l’API Travaux, les Packs de ressources Databricks et le Kit de développement logiciel (SDK) Databricks pour Python.

Spécifications

  • Unity Catalog doit être activé sur votre espace de travail Azure Databricks.

  • Étant donné que le calcul serverless pour les flux de travail utilise le mode d’accès partagé, vos charges de travail doivent prendre en charge ce mode d’accès.

  • Votre espace de travail Azure Databricks doit se trouver dans une région prise en charge. Consultez Disponibilité des fonctionnalités.

  • Le calcul serverless doit être activé sur votre compte Azure Databricks. Voir Activer le calcul serverless.

Créer un travail à l’aide du calcul serverless

Remarque

Le calcul serverless pour les flux de travail garantissant un approvisionnement suffisant des ressources pour exécuter vos charges de travail, vous pouvez rencontrer des temps de démarrage accrus lors de l’exécution d’un travail Azure Databricks nécessitant de grandes quantités de mémoire ou comprenant de nombreuses tâches.

Le calcul serverless est pris en charge avec les types de tâches notebook, script Python, dbt et roue Python. Par défaut, le calcul serverless est sélectionné comme type de calcul lorsque vous créez un travail et ajoutez l’un des types de tâches pris en charge.

Créer une tâche serverless

Databricks recommande d’utiliser le calcul serverless pour toutes les tâches de travail. Vous pouvez également spécifier différents types de calcul pour les tâches d’un travail, ce qui peut être nécessaire si un type de tâche n’est pas pris en charge par le calcul serverless pour les flux de travail.

Configurer un travail existant pour utiliser le calcul serverless

Vous pouvez modifier un travail existant pour utiliser le calcul serverless pour les types de tâches pris en charge lorsque vous modifiez le travail. Pour basculer vers le calcul serverless, effectuez l’une des opérations suivantes :

  • Dans le volet latéral Détails du travail, cliquez sur Changer sous Calcul, puis Nouveau, entrez ou mettez à jour les paramètres, puis cliquez sur Mettre à jour.
  • Cliquez sur Caret vers le bas dans le menu déroulant Calcul et sélectionnez Serverless.

Basculer la tâche vers le calcul serverless

Planifier un notebook à l’aide d’un calcul serverless

Outre l’utilisation de l’interface utilisateur Travaux pour créer et planifier un travail à l’aide du calcul serverless, vous pouvez créer et exécuter un travail qui utilise le calcul serverless directement à partir d’un notebook Databricks. Consultez Créer et gérer des tâches de notebooks planifiées.

Définir les paramètres de configuration Spark

Pour automatiser la configuration de Spark sur le calcul serverless, Databricks permet de définir uniquement des paramètres de configuration Spark spécifiques. Pour obtenir la liste des paramètres autorisés, consultez Paramètres de configuration Spark pris en charge.

Vous pouvez définir les paramètres de configuration Spark uniquement au niveau de la session. Pour ce faire, définissez-les dans un notebook et ajoutez le notebook à une tâche incluse dans le travail qui utilise les paramètres. Consultez Obtenir et définir les propriétés de configuration Spark dans un notebook.

Configurer des environnements et des dépendances

Pour savoir comment installer des bibliothèques et des dépendances à l’aide d’un calcul serverless, consultez Installer des dépendances de notebook.

Configurer l’optimisation automatique du calcul serverless pour interdire les nouvelles tentatives

L’optimisation automatique du calcul serverless pour les flux de travail optimise automatiquement le calcul utilisé pour exécuter vos travaux et réessaye les travaux ayant échoué. L’optimisation automatique est activée par défaut et Databricks recommande de la laisser activée pour garantir que les charges de travail critiques s’exécutent correctement au moins une fois. Toutefois, si vous avez des charges de travail qui doivent être exécutées au maximum une fois, par exemple des travaux qui ne sont pas idempotents, vous pouvez désactiver l’optimisation automatique lors de l’ajout ou de la modification d’une tâche :

  1. En regard de Nouvelles tentatives, cliquez sur Ajouter (ou Icône Modifier si une stratégie de nouvelle tentative existe déjà).
  2. Dans la boîte de dialogue Stratégie de nouvelles tentatives, décochez Activer l’optimisation automatique serverless (peut inclure des nouvelles tentatives supplémentaires).
  3. Cliquez sur Confirmer.
  4. Si vous ajoutez une tâche, cliquez sur Créer une tâche. Si vous modifiez une tâche, cliquez sur Enregistrer la tâche.

Surveiller le coût des travaux qui utilisent le calcul serverless pour les flux de travail

Vous pouvez surveiller le coût des travaux qui utilisent le calcul serverless pour les flux de travail en interrogeant le tableau système d’utilisation facturable. Ce tableau est mis à jour pour inclure des attributs utilisateur et de charge de travail sur les coûts serverless. Consultez la Référence de table système d’utilisation facturable.

Afficher les détails de vos requêtes Spark

Le calcul serverless pour les flux de travail a une nouvelle interface permettant d’afficher des informations détaillées sur le runtime pour vos instructions Spark, telles que les métriques et les plans de requête. Pour afficher les insights de requête pour les instructions Spark incluses dans votre exécution de travaux sur le calcul serverless :

  1. Cliquez sur Icône de flux de travail Workflows dans la barre latérale.
  2. Dans la colonne Nom, cliquez sur le nom du travail pour lequel vous souhaitez afficher les insights.
  3. Cliquez sur l’exécution spécifique pour laquelle vous souhaitez afficher les insights.
  4. Dans la section Calcul du panneau latéral Exécution de la tâche, cliquez sur Historique des requêtes.
  5. Vous êtes redirigé vers l’Historique des requêtes, préfiltré sur l’ID d’exécution de la tâche dans laquelle vous étiez.

Pour plus d’informations sur l’utilisation de l’historique des requêtes, consultez Historique des requêtes.

Limites

Pour obtenir la liste des limitations de calcul serverless pour les flux de travail, consultez Limitations de calcul serverless dans les notes de publication du calcul serverless.