Utiliser le calcul Azure Databricks avec vos travaux

Quand vous exécutez un travail Azure Databricks, les tâches configurées dans le cadre du travail s’exécutent sur le calcul Azure Databricks, à savoir un calcul serverless, un cluster ou un entrepôt SQL en fonction du type de tâche. La sélection du type de calcul et des options de configuration est une étape importante lors de l’opérationnalisation d’un travail. Cet article fournit des recommandations pour l’utilisation des ressources de calcul Azure Databricks afin d’exécuter vos travaux.

Pour en savoir plus sur l’utilisation du calcul serverless avec vos travaux Azure Databricks, consultez Exécuter votre travail Azure Databricks avec un calcul serverless pour les flux de travail.

Remarque

Les secrets ne sont pas expurgés des flux stdout et stderr du journal du pilote Spark d’un cluster. Pour protéger des données sensibles, les journaux de pilote Spark sont affichables par défaut uniquement par des utilisateurs ayant une autorisation PEUT GÉRER sur un travail, un mode d’accès utilisateur unique et des clusters en mode d’accès partagé. Pour autoriser des utilisateurs avec l’autorisation PEUT ATTACHER À ou PEUT REDÉMARRER à afficher les journaux sur ces clusters, définissez la propriété de configuration Spark suivante dans la configuration de cluster : spark.databricks.acl.needAdminPermissionToViewLogs false.

Sur des clusters en mode d’accès Aucune isolation partagée, les utilisateurs peuvent afficher des journaux de pilote Spark avec l’autorisation PEUT ATTACHER À ou PEUT GÉRER. Pour limiter les utilisateurs qui peuvent lire les journaux aux seuls utilisateurs avec l’autorisation PEUT GÉRER, définissez spark.databricks.acl.needAdminPermissionToViewLogs sur true.

Consultez configuration Spark pour découvrir comment ajouter des propriétés Spark à une configuration de cluster.

Utiliser des clusters de travaux partagés

Pour optimiser l’utilisation des ressources avec des travaux qui orchestrent plusieurs tâches, utilisez des clusters de travaux partagés. Un cluster de travail partagé permet l’exécution de plusieurs tâches dans le même travail pour réutiliser le cluster. Vous pouvez utiliser un cluster à travail unique pour exécuter toutes les tâches qui font partie du travail ou plusieurs clusters de travaux optimisés pour des charges de travail spécifiques. Pour utiliser un cluster de travail partagé :

  1. Sélectionnez New Job Clusters (Nouveaux clusters de travaux) lorsque vous créez une tâche et terminez la configuration du cluster.
  2. Sélectionnez le nouveau cluster lorsque vous ajoutez une tâche au travail, ou créez un nouveau cluster de travail. Tout cluster que vous configurez lorsque vous sélectionnez New Job Clusters (Nouveaux clusters de travaux) est disponible pour n’importe quelle tâche du travail.

Un cluster de travail partagé est limité à une seule exécution de travail et ne peut pas être utilisé par d’autres travaux ou d’autres exécutions du même travail.

Les bibliothèques ne peuvent pas être déclarées dans la configuration d’un cluster de travail partagé. Vous devez ajouter des bibliothèques dépendantes dans les paramètres de tâche.

Choisir le type de cluster approprié à votre travail

  • Les nouveaux clusters de travaux sont des clusters dédiés pour l’exécution d’un travail ou d’une tâche. Un cluster de travail partagé est créé et démarré lorsque la première tâche utilisant le cluster démarre, et se termine après la fin de la dernière tâche utilisant le cluster. Le cluster n’est pas arrêté lorsqu’il est inactif, mais uniquement une fois toutes les tâches terminées. Si un cluster de travail partagé échoue ou s’arrête avant que toutes les tâches soient terminées, un nouveau cluster est créé. Un cluster étendu à une tâche unique est créé et démarré lorsque la tâche démarre et se termine lorsque la tâche est terminée. En production, Databricks recommande d’utiliser de nouveaux clusters partagés ou à étendue de tâches afin que chaque travail ou tâche s’exécute dans un environnement totalement isolé.
  • Lorsque vous exécutez une tâche sur un nouveau cluster, la tâche est traitée comme une charge de travail d’ingénierie des données (tâche), sous réserve de la tarification de la charge de travail de tâche. Lorsque vous exécutez une tâche sur un cluster à usage général existant, la tâche est traitée comme une charge de travail d’analyse des données (à usage général), sous réserve de la tarification de la charge de travail à usage général.
  • Si vous sélectionnez un cluster existant terminé et que le propriétaire du travail dispose de l’autorisation PEUT REDÉMARRER, Azure Databricks démarre le cluster lorsque l’exécution du travail est planifiée.
  • Les clusters à usage général existants fonctionnent mieux pour des tâches comme la mise à jour des tableaux de bord à intervalles réguliers.

Utiliser un pool pour réduire le temps de démarrage du cluster

Pour réduire le temps de démarrage du nouveau cluster de travail, créez un pool et configurez le cluster du travail pour qu’il utilise le pool.