Ajouter des tâches aux Jobs dans les Declarative Automation Bundles
Cette page fournit des informations sur la façon de définir les tâches de Job dans les Declarative Automation Bundles. Pour plus d'informations sur les tâches de Job, consultez Configurer et modifier les tâches dans les Lakeflow Jobs.
Le champ git_source du job et le champ source de la tâche définis sur GIT ne sont pas recommandés pour les bundles, car les chemins relatifs locaux peuvent ne pas pointer vers le même contenu dans le repository Git. Les Bundles s'attendent à ce qu'un job déployé ait les mêmes fichiers que la copie locale à partir de laquelle il a été déployé.
Au lieu de cela, clonez le repository localement et configurez votre projet de bundle dans ce repository, de sorte que la source des tâches soit le workspace.
Configurez les tâches
Définissez des tâches pour un Job dans un bundle dans la clé tasks pour la définition du Job. Des exemples de configuration de tâche pour les types de tâches disponibles se trouvent dans la section Paramètres de tâche. Pour plus d'informations sur la définition d'un Job dans un bundle, consultez le Job.
Pour générer rapidement la configuration des ressources pour un Job existant à l'aide de la CLI Databricks, vous pouvez utiliser la commande bundle generate job. Consultez les commandes de bundle.
Pour définir les valeurs des tâches, la plupart des types de tâches de job ont des paramètres spécifiques aux tâches, mais vous pouvez également définir des paramètres de job qui sont transmis aux tâches. Les références de valeur dynamiques sont prises en charge pour les paramètres de job, ce qui permet de transmettre entre les tâches des valeurs propres à l'exécution du job. Pour des informations complètes sur la façon de transmettre des valeurs de tâche par type de tâche, consultez Détails par type de tâche.
Vous pouvez également remplacer les paramètres généraux des tâches de Job par les paramètres d'un Workspace cible. Voir Remplacer avec les paramètres cibles.
L'exemple de configuration suivant définit un job avec deux tâches Notebook, et transmet une valeur de tâche de la première tâche à la deuxième tâche.
resources:
jobs:
pass_task_values_job:
name: pass_task_values_job
tasks:
# Output task
- task_key: output_value
notebook_task:
notebook_path: ../src/output_notebook.ipynb
# Input task
- task_key: input_value
depends_on:
- task_key: output_value
notebook_task:
notebook_path: ../src/input_notebook.ipynb
base_parameters:
received_message: '{{tasks.output_value.values.message}}'
Le output_notebook.ipynb contient le code suivant, qui définit une valeur de tâche pour la clé message :
# Databricks notebook source
# This first task sets a simple output value.
message = "Hello from the first task"
# Set the message to be used by other tasks
dbutils.jobs.taskValues.set(key="message", value=message)
print(f"Produced message: {message}")
Le input_notebook.ipynb récupère la valeur du paramètre received_message, qui a été définie dans la configuration pour la tâche :
# This notebook receives the message as a parameter.
dbutils.widgets.text("received_message", "")
received_message = dbutils.widgets.get("received_message")
print(f"Received message: {received_message}")
Paramètres de la tâche
Cette section contient les paramètres et des exemples pour chaque type de tâche Job.
Tâche d’alerte (v2).
La tâche d'alerte (v2) évalue une alerte Databricks et envoie des notifications aux abonnés lorsque le champ alert_task est présent. Pour plus d'information sur les tâches d'alerte, consultez Tâche d'alerte SQL pour les jobs.
Les clés suivantes sont disponibles pour une tâche d'alerte (v2). Pour la définition de l'objet d'API REST correspondant, voir alert_task.
Ajouté à la version 0,296.0 de Databricks CLI
Clé | Type | Description |
|---|---|---|
| Chaîne | L'ID de l'alerte à évaluer. Seul l'un des éléments |
| Séquence | Une liste d'abonnés pour recevoir les notifications de résultats d'évaluation d'alerte une fois la tâche d'alerte terminée. Le nombre d'abonnements est limité à 100. Chaque abonné est un objet comportant l'un des éléments suivants : |
| Chaîne | Les paramètres du warehouse utilisés par la tâche d'alerte. |
| Chaîne | Le chemin d'accès au fichier d'alerte dans le Workspace. Le chemin doit start avec "/Workspace" et doit être un chemin normalisé. Seul l'un de |
Exemples
L'exemple suivant ajoute une tâche d'alerte à un job :
resources:
jobs:
my_job:
name: my_job
tasks:
- task_key: alert_task
alert_task:
workspace_path: ./my_alert.dbalert.json
warehouse_id: 1a111111a1111aa1
Tâche de notebook de salle blanche
La tâche du notebook de salle blanche exécute un notebook de salle blanche lorsque le champ clean_rooms_notebook_task est présent. Pour obtenir des informations sur les clean rooms, consultez Qu'est-ce que Databricks Clean Rooms ?.
Les clés suivantes sont disponibles pour une tâche de notebook de salle blanche. Pour la définition d’objet de l’API REST correspondante, consultez tâche de notebook de salle blanche.
Ajouté dans la version 0.237.0 de Databricks CLI.
Clé | Type | Description |
|---|---|---|
| Chaîne | Obligatoire. La salle blanche à laquelle le Notebook appartient. |
| Chaîne | Somme de contrôle pour valider l'actualisation de la ressource Notebook. Elle peut être récupérée en appelant l'opération de récupération des assets de salle blanche. |
| Carte | Parameters de base à utiliser pour le Job de Notebook de la salle blanche. |
| Chaîne | Obligatoire. Nom du notebook en cours d'exécution. |
Tâche Condition
Le condition_task vous permet d'ajouter une tâche avec une logique conditionnelle if/else à votre Job. La tâche évalue une condition qui peut être utilisée pour contrôler l'exécution d'autres tâches. La tâche de condition ne nécessite pas de cluster pour s'exécuter et ne prend pas en charge les nouvelles tentatives ou les notifications. Pour plus d'informations sur la tâche de condition if/else, consultez Ajouter une logique de branchement à un Job avec la tâche If/else.
Les clés suivantes sont disponibles pour une tâche de condition. Pour la définition d'objet d'API REST correspondante, voir condition_task.
Clé | Type | Description |
|---|---|---|
| Chaîne | Obligatoire. L'opérande gauche de la condition. Peut être une valeur de chaîne, un état de Job ou une référence de valeur dynamique, telle que |
| Chaîne | Obligatoire. L'opérateur à utiliser pour la comparaison. Les valeurs valides sont : |
| Chaîne | Obligatoire. L'opérande de droite de la condition. Peut être une valeur de chaîne, un état de Job ou une référence de valeur dynamique. |
Exemples
L'exemple suivant contient une tâche de condition et une tâche de Notebook, où la tâche de Notebook ne s'exécute que si le nombre de réparations de Job est inférieur à 5.
resources:
jobs:
my-job:
name: my-job
tasks:
- task_key: condition_task
condition_task:
op: LESS_THAN
left: '{{job.repair_count}}'
right: '5'
- task_key: notebook_task
depends_on:
- task_key: condition_task
outcome: 'true'
notebook_task:
notebook_path: ../src/notebook.ipynb
Tâche de tableau de bord
Vous utilisez cette tâche pour refresh un tableau de bord et envoyer un instantané aux abonnés. Pour plus d'informations sur les tableaux de bord dans les bundles, consultez tableau de bord.
Les clés suivantes sont disponibles pour une tâche de tableau de bord. Pour la définition d’objet REST API correspondante, voir tâche de tableau de bord.
Ajouté dans la version 0.248.0 de Databricks CLI.
Clé | Type | Description |
|---|---|---|
| Chaîne | Obligatoire. L'identifiant du tableau de bord à actualiser. Le tableau de bord doit déjà exister. |
| Carte | La configuration de l'abonnement pour l'envoi de l'instantané du tableau de bord. Chaque objet d'abonnement peut spécifier des paramètres de destination pour l'envoi des instantanés une fois que le refresh du tableau de bord est terminé. Voir abonnement. |
| Chaîne | L'ID du warehouse à utiliser pour exécuter le tableau de bord selon le calendrier. Si non spécifié, le default warehouse du tableau de bord sera utilisé. |
Exemples
L'exemple suivant ajoute une tâche de tableau de bord à un job. Lorsque le job est exécuté, le tableau de bord avec l'ID spécifié est actualisé.
resources:
jobs:
my-dashboard-job:
name: my-dashboard-job
tasks:
- task_key: my-dashboard-task
dashboard_task:
dashboard_id: 11111111-1111-1111-1111-111111111111
tâche dbt
Vous utilisez cette tâche pour exécuter une ou plusieurs commandes dbt. Pour plus d'information sur dbt, consultez Connectez-vous à dbt Cloud.
Les clés suivantes sont disponibles pour une tâche dbt. Pour la définition d'objet API REST correspondante, consultez dbt_task.
Clé | Type | Description |
|---|---|---|
| Chaîne | Nom du catalogue à utiliser. La valeur du catalogue ne peut être spécifiée que si un |
| Séquence | Obligatoire. Une liste de commandes dbt à exécuter dans l'ordre. Chaque commande doit être une commande dbt complète (par exemple, |
| Chaîne | Le chemin d’accès au répertoire contenant le fichier dbt profiles.yml. Ne peut être spécifié que si aucun |
| Chaîne | Le chemin d'accès au répertoire contenant le projet dbt. Si aucune valeur n'est spécifiée, la racine du repository ou du répertoire Workspace est définie par default. Pour les projets stockés dans le Databricks Workspace, le chemin doit être absolu et commencer par une barre oblique. Pour les projets dans un repository distant, le chemin d'accès doit être relatif. |
| Chaîne | Le schéma dans lequel écrire. Ce paramètre n’est utilisé que lorsqu’un |
| Chaîne | Le type d'emplacement du projet dbt. Les valeurs valides sont |
| Chaîne | L'ID du SQL Warehouse à utiliser pour l'exécution des commandes dbt. S'il n'est pas spécifié, le warehouse default sera utilisé. |
Exemples
L'exemple suivant ajoute une tâche dbt à un job. Cette tâche dbt utilise le SQL warehouse spécifié pour exécuter les commandes dbt spécifiées.
Pour obtenir l'ID d'un SQL Warehouse, ouvrez la page des paramètres du SQL Warehouse, puis copiez l'ID trouvé entre parenthèses après le nom du warehouse dans le champ Nom sous le tab Vue d'ensemble .
Declarative Automation Bundles comprend également un template de projet dbt-sql qui définit un job avec une tâche dbt, ainsi que des profils dbt pour les jobs dbt déployés. Pour obtenir des informations sur les Template de Declarative Automation Bundles, consultez les bundles default.
resources:
jobs:
my-dbt-job:
name: my-dbt-job
tasks:
- task_key: my-dbt-task
dbt_task:
commands:
- 'dbt deps'
- 'dbt seed'
- 'dbt run'
project_directory: /Users/someone@example.com/Testing
warehouse_id: 1a111111a1111aa1
libraries:
- pypi:
package: 'dbt-databricks>=1.0.0,<2.0.0'
Pour chaque tâche
Le for_each_task vous permet d'ajouter une tâche avec une boucle pour chaque à votre job. La tâche exécute une tâche imbriquée pour chaque entrée fournie. Pour plus d'informations sur le for_each_task, consultez Utiliser une tâche For each pour exécuter une autre tâche en boucle.
Les clés suivantes sont disponibles pour un for_each_task. Pour la définition d'objet API REST correspondante, consultez for_each_task.
Clé | Type | Description |
|---|---|---|
| Entier | Le nombre maximal d'itérations de tâche pouvant s'exécuter simultanément. Si non spécifié, toutes les itérations peuvent s'exécuter en parallèle sous réserve des limites des clusters et du workspace. |
| Chaîne | Obligatoire. Les données d'entrée pour la boucle. Il peut s'agir d'une chaîne JSON ou d'une référence à un parameter de tableau. Chaque élément du tableau sera transmis à une itération de la tâche imbriquée. |
| Carte | Obligatoire. La définition de la tâche imbriquée à exécuter pour chaque entrée. Cet objet contient la spécification complète de la tâche, y compris |
Exemples
L'exemple suivant ajoute un for_each_task à un Job, où il parcourt les valeurs d'une autre tâche et les traite.
resources:
jobs:
my_job:
name: my_job
tasks:
- task_key: generate_countries_list
notebook_task:
notebook_path: ../src/generate_countries_list.ipnyb
- task_key: process_countries
depends_on:
- task_key: generate_countries_list
for_each_task:
inputs: '{{tasks.generate_countries_list.values.countries}}'
task:
task_key: process_countries_iteration
notebook_task:
notebook_path: ../src/process_countries_notebook.ipnyb
Tâche JAR
Vous utilisez cette tâche pour exécuter un JAR. Vous pouvez référencer des bibliothèques JAR locales ou celles d'un Workspace, un volume Unity Catalog ou un emplacement de stockage cloud externe. Voir le fichier JAR (Java ou Scala).
Pour plus d’informations sur la façon de compiler et de déployer des fichiers Scala JAR sur un cluster compatible Unity Catalog en mode d’accès standard, consultez Didacticiel : Exécuter du code Scala sur un compute serverless.
Les clés suivantes sont disponibles pour une tâche JAR. Pour la définition de l'objet API REST correspondante, consultez jar_task.
Clé | Type | Description |
|---|---|---|
| Chaîne | Obsolète. L'URI du JAR à exécuter. Les chemins DBFS et de stockage cloud sont pris en charge. Ce champ est obsolète et ne doit pas être utilisé. Utilisez plutôt le champ |
| Chaîne | Obligatoire. Le nom complet de la classe contenant la méthode principale à exécuter. Cette classe doit être contenue dans un JAR fourni en tant que bibliothèque. Le code doit utiliser |
| Séquence | Les paramètres transmis à la méthode principale. Utiliser les variables de paramètre de tâche pour définir les paramètres contenant des informations sur les exécutions de job. |
Exemples
L'exemple suivant ajoute une tâche JAR à un Job. Le chemin du JAR se trouve à un emplacement de volume.
resources:
jobs:
my-jar-job:
name: my-jar-job
tasks:
- task_key: my-jar-task
spark_jar_task:
main_class_name: org.example.com.Main
libraries:
- jar: /Volumes/main/default/my-volume/my-project-0.1.0-SNAPSHOT.jar
Tâche de Notebook
Vous utilisez cette tâche pour exécuter un notebook. Consultez Tâche de Notebook pour les Jobs.
Les clés suivantes sont disponibles pour une tâche de Notebook. Pour la définition d'objet d'API REST correspondante, consultez la tâche de bloc-notes.
Clé | Type | Description |
|---|---|---|
| Carte | Les paramètres de base à utiliser pour chaque exécution de ce Job.
|
| Chaîne | Obligatoire. Chemin du Notebook dans le Workspace Databricks ou le repository distant, par exemple |
| Chaîne | Type d'emplacement du Notebook. Les valeurs valides sont |
| Chaîne | L'ID du warehouse sur lequel exécuter le notebook. Les Warehouses SQL classiques ne sont pas pris en charge. Utilisez des SQL Warehouse Serverless ou Pro à la place. Notez que les SQL Warehouse prennent uniquement en charge les cellules SQL. Si le Notebook contient des cellules non-SQL, l'exécution échouera. Ainsi, si vous devez utiliser Python (ou autre) dans une cellule, utilisez Serverless. |
Exemples
L'exemple suivant ajoute une tâche de Notebook à un Job et définit un paramètre de Job nommé my_job_run_id. Le chemin du Notebook à déployer est relatif au fichier de configuration dans lequel cette tâche est déclarée. La tâche récupère le Notebook à partir de son emplacement de déploiement dans le Workspace Databricks.
resources:
jobs:
my-notebook-job:
name: my-notebook-job
tasks:
- task_key: my-notebook-task
notebook_task:
notebook_path: ./my-notebook.ipynb
parameters:
- name: my_job_run_id
default: '{{job.run_id}}'
Tâche de pipeline
Vous utilisez cette tâche pour exécuter un pipeline. See Spark Declarative Pipelines.
Les clés suivantes sont disponibles pour une tâche de pipeline. Pour la définition d'objet de l'API REST correspondante, voir pipeline_task.
Clé | Type | Description |
|---|---|---|
| Booléen | Si vrai, un refresh complet du pipeline sera déclenché, ce qui recalculera entièrement tous les datasets du pipeline. Si faux ou omis, seules les données incrémentielles seront traitées. Pour plus de détails, consultez Sémantique de refresh du pipeline. |
| Chaîne | Obligatoire. L'ID du pipeline à exécuter. Le pipeline doit déjà exister. |
Exemples
L'exemple suivant ajoute une tâche de pipeline à un Job. Cette tâche exécute le pipeline spécifié.
Vous pouvez obtenir l’ID d'un pipeline en l'ouvrant dans le Workspace et en copiant la valeur ID du pipeline dans l'onglet Détails du pipeline de la page des paramètres du pipeline.
resources:
jobs:
my-pipeline-job:
name: my-pipeline-job
tasks:
- task_key: my-pipeline-task
pipeline_task:
pipeline_id: 11111111-1111-1111-1111-111111111111
Tâche Power BI
Aperçu
Le type de tâche Power BI est en préversion publique.
Utilisez cette tâche pour Trigger une refresh d'un modèle sémantique Power BI (anciennement connu sous le nom de dataset).
Les clés suivantes sont disponibles pour une tâche Power BI. Pour la définition d’objet d’API REST correspondante, consultez power_bi_task.
Ajouté dans la version 0.248.0 de Databricks CLI.
Clé | Type | Description |
|---|---|---|
| Chaîne | Obligatoire. Le nom de la connexion Unity Catalog pour l'authentification de Databricks à Power BI. |
| Chaîne | Obligatoire. Le nom du modèle sémantique Power BI (dataset) à mettre à jour. |
| Booléen | Indique s'il faut refresh le modèle sémantique Power BI une fois la mise à jour terminée. default to false. |
| Séquence | Une liste de tables (chacune sous forme de Map) à exporter vers Power BI. Consultez les tables. |
| Chaîne | L'ID du SQL Warehouse à utiliser comme source de données Power BI. |
Exemples
L'exemple suivant définit une tâche Power BI, qui spécifie une connexion, le modèle Power BI à mettre à jour et la table Databricks à exporter.
resources:
jobs:
my_job:
name: my_job
tasks:
- task_key: power_bi_task
power_bi_task:
connection_resource_name: 'connection_name'
power_bi_model:
workspace_name: 'workspace_name'
model_name: 'model_name'
storage_mode: 'DIRECT_QUERY'
authentication_method: 'OAUTH'
overwrite_existing: false
refresh_after_update: false
tables:
- catalog: 'main'
schema: 'tpch'
name: 'customers'
storage_mode: 'DIRECT_QUERY'
warehouse_id: '1a111111a1111aa1'
Tâche de script Python
Vous utilisez cette tâche pour exécuter un fichier Python.
Les clés suivantes sont disponibles pour une tâche de script Python. Pour la définition d'objet API REST correspondante, consultez python_task.
Clé | Type | Description |
|---|---|---|
| Séquence | Les parameters à transmettre au fichier Python. Utiliser les variables de paramètre de tâche pour définir les paramètres contenant des informations sur les exécutions de job. |
| Chaîne | Obligatoire. L'URI du fichier Python à exécuter, par exemple |
| Chaîne | Le type d'emplacement du fichier Python. Les valeurs valides sont |
Exemples
L'exemple suivant ajoute une tâche de script Python à un Job. Le chemin d'accès du fichier Python à déployer est relatif au fichier de configuration dans lequel cette tâche est déclarée. La tâche récupère le fichier Python à partir de son emplacement déployé dans le Workspace Databricks.
resources:
jobs:
my-python-script-job:
name: my-python-script-job
tasks:
- task_key: my-python-script-task
spark_python_task:
python_file: ./my-script.py
Tâche Python wheel
Vous utilisez cette tâche pour exécuter une Python wheel. Voir Créer un fichier Python wheel à l'aide des Declarative Automation Bundles.
Les clés suivantes sont disponibles pour une tâche Python wheel. Pour la définition d'objet d'API REST correspondante, consultez python_wheel_task.
Clé | Type | Description |
|---|---|---|
| Chaîne | Obligatoire. Le Point d'entrée nommé à exécuter : fonction ou classe. Si elle n’existe pas dans les métadonnées du package, elle exécute la fonction du package directement à l’aide de |
| Carte | Les parameters nommés à transmettre à la tâche Python wheel, également appelés arguments mot-clé . Un parameter nommé est une paire clé-valeur avec une clé de chaîne et une valeur de chaîne. Les deux |
| Chaîne | Obligatoire. Le nom du package Python à exécuter. Toutes les dépendances doivent être installées dans l’environnement. Cela ne vérifie ni n'installe les dépendances de package. |
| Séquence | Les paramètres à transmettre à la tâche Python wheel, aussi connus sous le nom d' arguments positionnels . Chaque parameter est une chaîne. Si spécifié, |
Exemples
L'exemple suivant ajoute une tâche Python wheel à un Job. Le chemin d'accès du fichier Python wheel à déployer est relatif au fichier de configuration dans lequel cette tâche est déclarée. Consultez les dépendances de la bibliothèque Declarative Automation Bundles.
resources:
jobs:
my-python-wheel-job:
name: my-python-wheel-job
tasks:
- task_key: my-python-wheel-task
python_wheel_task:
entry_point: run
package_name: my_package
libraries:
- whl: ./my_package/dist/my_package-*.whl
Exécuter une tâche de job
Vous utilisez cette tâche pour exécuter un autre job.
Les clés suivantes sont disponibles pour une tâche d'exécution de Job. Pour la définition d'objet REST API correspondante, consultez tâche d'exécution de Job.
Clé | Type | Description |
|---|---|---|
| Entier | Obligatoire. L'ID du Job à exécuter. Le Job doit déjà exister dans le Workspace. |
| Carte | Paramètres au niveau du Job à transmettre au Job en cours d'exécution. Ces paramètres sont accessibles au sein des tâches du Job. |
| Carte | Paramètres pour la tâche de pipeline. Utilisé uniquement si le Job en cours d'exécution contient une tâche de pipeline. Peut inclure |
Exemples
L'exemple suivant contient une tâche d'exécution de job dans le deuxième job qui exécute le premier job.
Cet exemple utilise une substitution pour récupérer l'ID du job à exécuter. Pour obtenir l'ID d'un Job depuis l'interface utilisateur, ouvrez le Job dans le Workspace et copiez l'ID de la valeur ID de Job dans la tab Détails du Job de la page des paramètres du Job.
resources:
jobs:
my-first-job:
name: my-first-job
tasks:
- task_key: my-first-job-task
new_cluster:
spark_version: '13.3.x-scala2.12'
node_type_id: 'i3.xlarge'
num_workers: 2
notebook_task:
notebook_path: ./src/test.py
my_second_job:
name: my-second-job
tasks:
- task_key: my-second-job-task
run_job_task:
job_id: ${resources.jobs.my-first-job.id}
Tâche SQL
Vous utilisez cette tâche pour exécuter un fichier SQL, une query ou une alerte.
Les clés suivantes sont disponibles pour une tâche SQL. Pour la définition correspondante de l'API REST, consultez sql_task.
Clé | Type | Description |
|---|---|---|
| Carte | Configuration pour l'exécution d'une alerte SQL. Contient :
|
| Carte | Configuration pour l'actualisation d'un tableau de bord SQL. Contient :
|
| Carte | Configuration pour l'exécution d'un fichier SQL. Contient :
|
| Carte | Paramètres à utiliser pour chaque exécution de cette tâche. Les requêtes SQL et les fichiers peuvent utiliser ces paramètres en y faisant référence avec la syntaxe |
| Carte | Configuration pour l'exécution d'une requête SQL. Contient :
|
| Chaîne | Obligatoire. L'ID du SQL Warehouse à utiliser pour exécuter la tâche SQL. Le SQL Warehouse doit déjà exister. |
Exemples
Pour obtenir l'ID d'un SQL Warehouse, ouvrez la page des paramètres du SQL Warehouse, puis copiez l'ID trouvé entre parenthèses après le nom du warehouse dans le champ Nom sous le tab Vue d'ensemble .
L’exemple suivant ajoute une tâche de fichier SQL à un job. Cette tâche de fichier SQL utilise le SQL warehouse spécifié pour exécuter le fichier SQL spécifié.
resources:
jobs:
my-sql-file-job:
name: my-sql-file-job
tasks:
- task_key: my-sql-file-task
sql_task:
file:
path: /Users/someone@example.com/hello-world.sql
source: WORKSPACE
warehouse_id: 1a111111a1111aa1
L'exemple suivant ajoute une tâche d'alerte SQL à un Job. Cette tâche d'alerte SQL utilise le SQL Warehouse spécifié pour refresh l'alerte SQL spécifiée.
resources:
jobs:
my-sql-file-job:
name: my-sql-alert-job
tasks:
- task_key: my-sql-alert-task
sql_task:
warehouse_id: 1a111111a1111aa1
alert:
alert_id: 11111111-1111-1111-1111-111111111111
L'exemple suivant ajoute une tâche de requête SQL à un Job. Cette tâche de query SQL utilise le SQL Warehouse spécifié pour exécuter la query SQL spécifiée.
resources:
jobs:
my-sql-query-job:
name: my-sql-query-job
tasks:
- task_key: my-sql-query-task
sql_task:
warehouse_id: 1a111111a1111aa1
query:
query_id: 11111111-1111-1111-1111-111111111111
Autres paramètres de tâche
Les paramètres de tâche suivants vous permettent de configurer les comportements pour toutes les tâches. Pour les définitions d'objet d'API REST correspondantes, consultez les tâches.
Clé | Type | Description |
|---|---|---|
| Carte | Configuration du compute au niveau des tâches. Chaque élément contient :
|
| Séquence | Une liste facultative de dépendances de tâche. Chaque élément contient :
|
| Chaîne | Une description facultative pour la tâche. |
| Booléen | S'il faut désactiver l'optimisation automatique pour cette tâche. Si vrai, les optimisations automatiques comme l'exécution adaptative des requêtes seront désactivées. |
| Carte | Un ensemble facultatif d'adresses e-mail à notifier lorsqu'une exécution commence, se termine ou échoue. Chaque élément contient :
|
| Chaîne | La clé d'un environnement définie dans la configuration |
| Chaîne | ID d'un cluster existant qui sera utilisé pour toutes les exécutions de cette tâche. |
| Carte | Une spécification facultative pour le monitoring de l'état de santé de cette tâche qui inclut une clé |
| Chaîne | La clé d'un cluster Job définie dans la configuration |
| Séquence | Une liste facultative de bibliothèques à installer sur le cluster qui exécutera la tâche. Chaque bibliothèque est spécifiée comme une carte avec des clés telles que |
| Entier | Un nombre maximal facultatif de tentatives pour relancer la tâche en cas d'échec. Si elle n'est pas spécifiée, la tâche ne sera pas relancée. |
| Entier | Un intervalle minimal facultatif en millisecondes entre le start de l'exécution échouée et l'exécution de nouvelle tentative suivante. Si non spécifié, le default est 0 (nouvelle tentative immédiate). |
| Carte | Une spécification pour un nouveau cluster à créer pour chaque exécution de cette tâche. See clusters. |
| Carte | Paramètres de notification facultatifs pour cette tâche. Chaque élément contient :
|
| Booléen | Une stratégie facultative pour spécifier s'il faut relancer la tâche lorsqu'elle expire. Si non spécifié, default est false. |
| Chaîne | Une valeur optionnelle indiquant la condition dans laquelle la tâche doit s'exécuter. Les valeurs valides sont :
|
| Chaîne | Obligatoire. Un nom unique pour la tâche. Ce champ est utilisé pour faire référence à cette tâche à partir d'autres tâches à l'aide du champ |
| Entier | Un délai d'expiration facultatif appliqué à chaque exécution de cette tâche. Une valeur de 0 signifie aucun délai d'expiration. Si aucune valeur n'est définie, le délai d'attente par default de la configuration du cluster est utilisé. |
| Carte | Un ensemble facultatif de destinations système à notifier lorsqu'une exécution commence, se termine ou échoue. Chaque élément contient :
|