Aller au contenu principal

Exécutez vos Lakeflow Jobs avec le compute Serverless pour les workflows

Le compute Serverless pour les workflows vous permet d'exécuter votre Job sans configurer et déployer d'infrastructure. Avec le compute Serverless, vous vous concentrez sur l'implémentation de vos pipelines de traitement et d'analyse des données, et Databricks gère efficacement les ressources de compute, y compris l'optimisation et la mise à l'échelle du compute pour vos charges de travail. L'autoscaling et Photon sont automatiquement activés pour les ressources de compute qui exécutent votre Job.

Le compute Serverless pour les workflows optimise automatiquement et en continu l'infrastructure, telle que les types d'instances, la mémoire et les moteurs de traitement, afin de garantir les meilleures performances en fonction des exigences de traitement spécifiques de vos charges de travail.

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 assurant la stabilité de vos Jobs. Pour voir la version actuelle de Databricks Runtime utilisée par le compute serverless pour les workflows, consultez les notes de publication du compute serverless.

Comme l'autorisation de création de clusters n'est pas requise, tous les utilisateurs du Workspace peuvent utiliser le compute serverless pour exécuter leurs flux de travail.

Cette page décrit comment utiliser l'interface utilisateur de Lakeflow Jobs pour créer et exécuter des Jobs qui utilisent le compute Serverless. Vous pouvez également automatiser la création et l'exécution de jobs qui utilisent le compute Serverless avec l'API Jobs, les Bundles d'automatisation déclaratifs et le SDK Databricks pour Python.

  • Pour en savoir plus sur l'utilisation de l'API Jobs pour créer et exécuter des jobs qui utilisent le compute serverless, consultez Jobs dans la référence de l'API REST.
  • Pour en savoir plus sur l'utilisation des Declarative Automation Bundles pour créer et exécuter des Jobs qui utilisent le compute Serverless, consultez Développer un Job avec des Declarative Automation Bundles.
  • Pour en savoir plus sur l'utilisation du SDK Databricks pour Python afin de créer et d'exécuter des jobs qui utilisent le compute serverless, consultez SDK Databricks pour Python.

Exigences

  • Votre Workspace Databricks doit avoir Unity Catalog activé.
  • Étant donné que le compute serverless pour les workflows utilise le mode d'accès standard, vos charges de travail doivent prendre en charge ce mode d'accès.

Créer un Job à l'aide de compute Serverless

remarque

Étant donné que le compute serverless pour les workflows garantit que des ressources suffisantes sont provisionnées pour exécuter vos charges de travail, vous pourriez subir des temps de Startup accrus lors de l'exécution d'un Job qui nécessite de grandes quantités de mémoire ou qui inclut de nombreuses tâches.

Le compute Serverless est pris en charge avec les types de tâche Notebook, script Python, dbt, Python wheel et JAR. Par default, le compute serverless est sélectionné comme type de compute lorsque vous créez un Job et ajoutez l'un de ces types de tâche pris en charge.

info

Aperçu

L'utilisation du compute serverless pour les tâches JAR est en aperçu public.

Créer une tâche serverless

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

Pour gérer les connexions réseau sortantes pour vos Jobs, consultez Qu'est-ce que le contrôle de sortie Serverless ?

Configurer un Job existant pour utiliser le compute Serverless

Vous pouvez basculer un job existant vers un compute serverless pour les types de tâches pris en charge lorsque vous modifiez le job. Pour basculer vers le compute serverless, au choix :

  • Dans le volet latéral Détails du job , cliquez sur Échanger sous Compute , cliquez sur Nouveau , saisissez ou mettez à jour tous les paramètres, puis cliquez sur Mettre à jour .
  • Cliquez sur Caret vers le bas dans le menu déroulant Compute et sélectionnez Serverless .

Basculer la tâche vers le compute serverless

Planifier un Notebook à l'aide du compute serverless

En plus d'utiliser l'interface utilisateur des Jobs pour créer et planifier un Job à l'aide du compute Serverless, vous pouvez créer et exécuter un Job qui utilise le compute Serverless directement depuis un Notebook Databricks. Consultez Créer et gérer des notebook jobs planifiées.

Sélectionner une politique d'utilisation Serverless

info

Aperçu

Cette fonctionnalité est en aperçu public.

Les politiques d'utilisation serverless permettent à votre organisation d'appliquer des tags personnalisés sur l'utilisation serverless pour une attribution granulaire de la facturation.

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 l'interface utilisateur des détails du job. Si vous n'êtes affecté qu'à une seule politique d'utilisation Serverless, la politique est automatiquement sélectionnée pour vos nouveaux Jobs.

remarque

Une fois qu'une politique d'utilisation Serverless vous a été attribuée, vos Jobs existants ne sont pas automatiquement tagués avec votre politique. Vous devez mettre à jour manuellement les Jobs existants si vous souhaitez leur associer une politique.

Pour en savoir plus sur les politiques d'utilisation serverless, consultez Attribuer l'utilisation avec les politiques d'utilisation serverless.

Sélectionner un mode de performance

Vous pouvez choisir la vitesse d’exécution des tâches Serverless de votre Job à l’aide du paramètre Performances optimisées sur la page des détails du Job.

  • Lorsque le mode Performances optimisées est désactivé, le Job utilise le mode de performances standard. Ce mode utilise moins de compute pour réduire les coûts, ce qui le rend adapté aux charges de travail qui peuvent tolérer une latence de Startup légèrement plus élevée de 4 à 6 minutes, en fonction de la disponibilité du compute et de la planification optimisée.

  • Lorsque l'option **Performance optimisée** est activée, le job start et s'exécute plus rapidement. Ce mode est conçu pour les charges de travail sensibles au temps.

Les deux modes utilisent le même SKU, mais le mode de performance standard consomme moins de DBU, ce qui reflète une utilisation moindre du compute.

Pour configurer le paramètre **Optimisation des performances** dans l'interface utilisateur, un job doit avoir au moins une tâche serverless. Ce paramètre n’affecte que les tâches serverless au sein du job.

Définir les paramètres de configuration Spark

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

Vous pouvez définir les parameters 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 même Job qui utilise les paramètres. Consultez Définir les propriétés de configuration Spark sur Databricks.

Configurer les environnements et les dépendances

Pour savoir comment installer des bibliothèques et des dépendances à l'aide du compute Serverless, consultez Configurer l'environnement Serverless.

Configurez une mémoire élevée pour les tâches de Notebook

info

Aperçu

Cette fonctionnalité est en aperçu public.

Vous pouvez configurer les tâches de notebook pour utiliser une taille de mémoire plus élevée. Pour ce faire, configurez le paramètre Mémoire dans le panneau latéral Environnement du notebook. Voir Utiliser le compute serverless à haute mémoire.

La mémoire élevée est uniquement disponible pour les types de tâches Notebook.

Configurer l'optimisation automatique du compute serverless pour interdire les nouvelles tentatives

Le compute Serverless pour l’optimisation automatique des workflows optimise automatiquement le compute utilisé pour exécuter vos Jobs et relance les tâches échouées. L’optimisation automatique est activée par default, et Databricks vous recommande de la laisser activée pour garantir que les charges de travail critiques s’exécutent avec succès au moins une fois. Cependant, si vous avez des charges de travail qui ne doivent être exécutées qu’au plus une fois, par exemple, des Jobs non idempotents, vous pouvez désactiver l’optimisation automatique lors de l’ajout ou de la modification d’une tâche :

  1. À côté de Nouvelles tentatives , cliquez sur Ajouter (ou Icône de modification si une politique de nouvelles tentatives existe déjà).
  2. Dans la boîte de dialogue **Stratégie de nouvelle tentative**, décochez **Activer l'optimisation automatique serverless (peut inclure des tentatives supplémentaires)**.
  3. Cliquez sur Confirmer .
  4. Cliquez sur Enregistrer la tâche .

Surveiller le coût des Jobs qui utilisent le compute Serverless pour les workflows

Vous pouvez surveiller le coût des Jobs qui utilisent le compute serverless pour les workflows en interrogeant la table système d'utilisation facturable. Cette table est mise à jour pour inclure les attributs utilisateur et de charge de travail concernant les coûts Serverless. Consultez la référence de la table système d'utilisation facturable.

Pour des informations sur les tarifs actuels et toute promotion, consultez la page des tarifs de Workflows.

Afficher les détails de la query pour les exécutions de Job

Vous pouvez afficher des informations d'exécution détaillées pour vos requêtes Spark, telles que des mesures et des plans de requête.

Pour accéder aux détails de la query depuis l'interface utilisateur des Jobs, suivez les étapes suivantes :

  1. Dans la barre latérale de votre workspace Databricks, cliquez sur Tâches & Pipelines .

  2. Facultativement, sélectionnez le filtre Jobs .

  3. Cliquez sur le Nom du Job que vous souhaitez afficher.

  4. Cliquez sur l’exécution spécifique que vous souhaitez afficher.

  5. Cliquez sur Chronologie pour afficher l'exécution sous forme de chronologie, divisée en tâches individuelles.

  6. Cliquez sur la flèche à côté du nom de la tâche pour afficher les déclarations de query et leurs durées d'exécution.

    Une tâche avec plusieurs instructions de query et leurs durées d'exécution en vue chronologique depuis l'interface utilisateur des jobs.

  7. Cliquez sur une instruction pour accéder à son profil de query, qui affiche les détails d'exécution et les métriques de la query.

Pour consulter l’historique des query d’une tâche :

  1. Dans la section **compute** du volet latéral **Exécution de tâche**, cliquez sur **Historique des queries**.
  2. Vous êtes redirigé vers l'historique des query, préfiltré en fonction de l'ID d'exécution de la tâche dans laquelle vous vous trouviez.

Pour plus d'informations sur l'utilisation de l'historique des requêtes, consultez Accéder à l'historique des requêtes des pipelines et Historique des requêtes.

Limitations

Pour une liste des limitations de compute serverless pour les workflows, consultez Limitations de compute serverless dans les notes de publication de compute serverless.