Lakeflow Jobs
Lakeflow Jobs est l'automatisation de workflow pour Databricks, fournissant l'orchestration pour les charges de travail de traitement de données afin que vous puissiez coordonner et exécuter plusieurs tâches dans le cadre d'un workflow plus large. Vous pouvez optimiser et planifier l'exécution de tâches fréquentes et reproductibles et gérer des workflows complexes.
Que sont les Jobs ?
Dans Databricks, un Job est utilisé pour planifier et orchestrer des tâches sur Databricks au sein d'un workflow. Les workflows de traitement de données courants incluent les workflows ETL, l'exécution de notebooks et les workflows de Machine Learning (ML), ainsi que l'intégration avec des systèmes externes comme dbt.
Les jobs se composent d'une ou plusieurs tâches, et prennent en charge une logique de contrôle de flux personnalisée, telle que le branchement (instructions if/else) ou la mise en boucle (instructions for each), à l'aide d'une interface utilisateur de création visuelle. Les tâches peuvent charger ou transformer des données dans un workflow ETL, ou créer, entraîner et déployer des modèles ML de manière contrôlée et reproductible dans le cadre de vos pipelines de Machine Learning.
Exemple : Job de traitement et de validation des données quotidien
L'exemple ci-dessous montre un Job dans Databricks.

Ce job d'exemple a les caractéristiques suivantes :
- La première tâche ingère des données sur les revenus.
- La deuxième tâche est une vérification if/else des valeurs nulles.
- Sinon, une tâche de transformation est exécutée.
- Autrement, il exécute une tâche de notebook avec une validation de la qualité des données.
- Il est planifié pour s'exécuter à la même heure chaque jour.
Pour obtenir une présentation rapide de la création de votre propre job, consultez Créez votre premier workflow avec Lakeflow Jobs.
Concepts d'orchestration
Il existe trois concepts principaux lorsque vous utilisez les Lakeflow Jobs pour l'orchestration dans Databricks : les Jobs, les tâches et les Trigger.
Job : Un Job est la ressource principale pour coordonner, planifier et exécuter vos Opérations. Les Jobs peuvent varier en complexité, allant d'une tâche unique exécutant un Notebook Databricks à des centaines de tâches avec une logique conditionnelle et des dépendances. Les tâches d'un Job sont visuellement représentées par un Graphe orienté acyclique (DAG). Vous pouvez spécifier les propriétés du Job, notamment :
- Trigger – cela définit quand exécuter le Job.
- Parameters – paramètres d'exécution qui sont automatiquement transférés aux tâches au sein du Job.
- Notifications – e-mails ou webhooks à envoyer lorsqu'un Job échoue ou prend trop de temps.
- Git – paramètres de contrôle de source pour les tâches du Job.
Tâche - Une tâche est une unité de travail spécifique au sein d'un Job. Chaque tâche peut effectuer diverses opérations, notamment :
- Une tâche de Notebook exécute un Notebook Databricks. Vous spécifiez le chemin d'accès au Notebook ainsi que tous les parameters dont il a besoin.
- Une tâche de pipeline exécute un pipeline. Vous pouvez spécifier les Lakeflow pipelines existants, tels qu’une vue matérialisée ou une table de streaming.
- Une tâche de script Python exécute un fichier Python. Vous fournissez le chemin d'accès au fichier et tous les paramètres nécessaires.
Il existe de nombreux types de tâches. Pour une liste complète, consultez Types de tâches. Les tâches peuvent avoir des dépendances vis-à-vis d'autres tâches et exécuter d'autres tâches de manière conditionnelle, ce qui vous permet de créer des workflows complexes avec une logique conditionnelle et des dépendances.
Trigger - Un trigger est un mécanisme qui initie l'exécution d'un job basé sur des conditions ou des événements spécifiques. Un trigger peut être basé sur le temps, comme l'exécution d'un job à une heure planifiée (par exemple, tous les jours à 2 h), ou basé sur les événements, comme l'exécution d'un job lorsque de nouvelles données arrivent dans le cloud storage.
Monitoring et observabilité
Les Jobs offrent un support intégré pour le monitoring et l'observabilité. Les sujets suivants donnent un aperçu de ce support. Pour plus de détails sur le monitoring des Jobs et l'orchestration, consultez Surveiller les Lakeflow Jobs.
monitoring et observabilité des Jobs dans l'interface utilisateur — Dans l'interface utilisateur de Databricks, vous pouvez visualiser les Jobs, y compris des détails tels que le propriétaire du Job et le résultat de la dernière exécution, et filtrer par propriétés du Job. Vous pouvez consulter l’historique des exécutions de jobs et obtenir des informations détaillées sur chaque tâche du job.
État et métriques de l’exécution du job - Databricks signale la réussite de l’exécution du job, ainsi que les logs et les métriques de chaque tâche au sein de l’exécution du job pour diagnostiquer des problèmes (de données) et comprendre les performances.
Notifications et alertes — Vous pouvez configurer des notifications pour les événements de Job par le biais d'e-mail, Slack, de webhooks personnalisés et d'une multitude d'autres options.
Requêtes personnalisées via les tables système - Databricks fournit des tables système qui enregistrent les exécutions de Job et les tâches sur l'ensemble du compte. Vous pouvez utiliser ces tables pour interroger et analyser les performances des jobs et les coûts. Vous pouvez créer des tableaux de bord pour visualiser les métriques et les tendances des Jobs, afin de surveiller la santé et les performances de vos workflows.
Limitations
Les limitations suivantes existent :
- Un Workspace est limité à 2000 exécutions de tâches simultanées. Une réponse
429 Too Many Requestsest renvoyée lorsque vous demandez une exécution qui ne peut pas start immédiatement. - Le nombre de Jobs qu’un Workspace peut créer en une heure est limité à 10 000 (inclut les « exécutions soumises »). Cette limite affecte également le Job créé par l’API REST et les workflows de Notebook.
- Un Workspace peut contenir jusqu'à 12 000 jobs enregistrés.
- Un Job peut contenir jusqu'à 1 000 tâches.
- Lorsque les tâches utilisent des valeurs dynamiques dans leurs paramètres, les paramètres de job sont limités à 10 000 caractères.
Gérer les workflows par programme
Databricks dispose d'outils et d'APIs qui vous permettent de planifier et d'orchestrer vos workflows par programmation, notamment :
- Databricks CLI
- Declarative Automation Bundles
- Extension Databricks pour Visual Studio Code
- SDK Databricks
- API REST Jobs
Pour des exemples d'utilisation d'outils et d'APIs pour créer et gérer des jobs, consultez Automatiser la création et la gestion de jobs. Pour la documentation sur tous les outils de développement disponibles, consultez Outils de développement locaux.
Les outils externes utilisent les outils et les API Databricks pour planifier les workflows par programmation. Par exemple, vous pouvez également planifier vos jobs à l'aide d'outils tels que Apache Airflow. Voir Orchestrer les Lakeflow Jobs avec Apache Airflow.