CLI de tâches (héritée)
Important
Cette documentation a été mise hors service et peut ne pas être mise à jour.
Ces informations s’appliquent aux anciennes versions Databricks CLI 0,18 et inférieures. Databricks vous recommande d’utiliser à la place la nouvelle version 0.205 ou supérieure de l’interface CLI Databricks. Consultez Qu’est-ce que l’interface CLI Databricks ?. Pour trouver votre version de l’interface CLI Databricks, exécutez databricks -v
.
Pour migrer de Databricks CLI version 0,18 ou inférieure vers Databricks CLI version 0,205 ou supérieure, consultez Migration Databricks CLI.
Pour exécuter des sous-commandes de l’interface CLI des tâches Databricks, vous devez les ajouter à databricks jobs
la tâche Databricks et exécuter des sous-commandes CLI en les ajoutant à databricks runs
. Pour le travail Databricks exécute les sous-commandes CLI, consultez Runs CLI (legacy). Ensemble, ces sous-commandes appellent l’API Travaux et l’API Travaux 2.0.
Important
L’interface CLI des travaux Databricks prend en charge les appels à deux versions de l’API REST des tâches Databricks : versions 2.1 et 2.0. La version 2.1 ajoute la prise en charge de l’orchestration de projets comportant plusieurs tâches ; consultez Planifier et orchestrer des flux de travail et Mise à jour de l’API de projets 2.0 à 2.1. Databricks vous recommande d’appeler la version 2.1, sauf si vous avez des scripts hérités qui reposent sur la version 2.0 et qui ne peuvent pas être migrés.
Sauf indication contraire, les comportements de programmation décrits dans cet article s’appliquent également aux versions 2.1 et 2.0.
Conditions requises pour appeler l’API REST Travaux 2.1
Pour configurer et utiliser l’interface CLI des tâches Databricks (et la CLI exécutions de tâches) pour appeler l’API REST de travaux 2.1, procédez comme suit :
Mettez à jour l’interface CLI vers la version 0.16.0 ou ultérieure.
Effectuez l’une des opérations suivantes :
- Exécutez la commande
databricks jobs configure --version=2.1
. Cela ajoute le paramètrejobs-api-version = 2.1
au fichier~/.databrickscfg
sur UNIX, Linux ou MacOS, ou%USERPROFILE%\.databrickscfg
sur Windows. Toutes les sous-commandes de l'interface CLI de Travaux (et de l'interface CLI d'exécution de travaux) feront appel à l'API REST de Travaux 2.1 par défaut. - Ajoutez manuellement le paramètre
jobs-api-version = 2.1
au fichier~/.databrickscfg
sous Unix, Linux ou macOS, ou%USERPROFILE%\.databrickscfg
sous Windows. Toutes les sous-commandes de l'interface CLI de Travaux (et de l'interface CLI d'exécution de travaux) feront appel à l'API REST de Travaux 2.1 par défaut. - Ajoutez l’option
--version=2.1
(par exemple,databricks jobs list --version=2.1
) pour indiquer à l’interface CLI des travaux d’appeler l’API REST de travaux 2.1 pour cet appel uniquement.
Si vous ne prenez aucune des mesures précédentes, l'interface CLI de Jobs (et l'interface CLI d'exécution des tâches) appelle l'API REST Jobs 2.0 par défaut.
- Exécutez la commande
Conditions requises pour appeler l’API REST Travaux 2.0
Pour configurer et utiliser la CLI jobs de Databricks (et la CLI jobs runs) pour appeler l'API REST Jobs 2.0, effectuez l'une des opérations suivantes :
- Utilisez une version de l’interface CLI Databricks sous 0.16.0, ou
- Mettez à jour le CLI à la version X.Y.Z ou supérieure, puis effectuez l'une des opérations suivantes :
- Exécutez la commande
databricks jobs configure --version=2.0
. Cela ajoute le paramètrejobs-api-version = 2.0
au fichier~/.databrickscfg
sur UNIX, Linux ou MacOS, ou%USERPROFILE%\.databrickscfg
sur Windows. Toutes les sous-commandes de l'interface CLI de Jobs (et de l'interface CLI d'exécution des tâches) feront appel à l'API REST 2.0 de Jobs par défaut. - Ajoutez manuellement le paramètre
jobs-api-version = 2.0
au fichier~/.databrickscfg
sous Unix, Linux ou macOS, ou%USERPROFILE%\.databrickscfg
sous Windows. Toutes les sous-commandes de l'interface CLI de Jobs (et de l'interface CLI d'exécution des tâches) feront appel à l'API REST 2.0 de Jobs par défaut. - Ajoutez l’option
--version=2.1
(par exemple,databricks jobs list --version=2.0
) pour indiquer à l’interface CLI des travaux d’appeler l’API REST de travaux 2.0 pour cet appel uniquement.
- Exécutez la commande
Si vous ne prenez aucune des mesures précédentes, l'interface CLI de Jobs (et l'interface CLI d'exécution des tâches) appelle l'API REST Jobs 2.0 par défaut.
Sous-commandes et utilisation générale
databricks jobs -h
Usage: databricks jobs [OPTIONS] COMMAND [ARGS]...
Utility to interact with jobs.
Job runs are handled by ``databricks runs``.
Options:
-v, --version [VERSION]
-h, --help Show this message and exit.
Commands:
create Creates a job.
Options:
--json-file PATH File containing JSON request to POST to /api/2.0/jobs/create.
--json JSON JSON string to POST to /api/2.0/jobs/create.
delete Deletes a job.
Options:
--job-id JOB_ID Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#job/$JOB_ID. [required]
get Describes the metadata for a job.
Options:
--job-id JOB_ID Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#job/$JOB_ID. [required]
list Lists the jobs in the Databricks Job Service.
reset Resets (edits) the definition of a job.
Options:
--job-id JOB_ID Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#job/$JOB_ID. [required]
--json-file PATH File containing JSON request to POST to /api/2.0/jobs/create.
--json JSON JSON string to POST to /api/2.0/jobs/create.
run-now Runs a job with optional per-run parameters.
Options:
--job-id JOB_ID Can be found in the URL at https://<databricks-instance>/#job/$JOB_ID. [required]
--jar-params JSON JSON string specifying an array of parameters. i.e. '["param1", "param2"]'
--notebook-params JSON JSON string specifying a map of key-value pairs. i.e. '{"name": "john doe", "age": 35}'
--python-params JSON JSON string specifying an array of parameters. i.e. '["param1", "param2"]'
--spark-submit-params JSON JSON string specifying an array of parameters. i.e. '["--class", "org.apache.spark.examples.SparkPi"]'
Créer un travail
Pour afficher la documentation d’utilisation, exécutez databricks jobs create --help
.
Utilisation générale
databricks jobs create --json-file create-job.json
Notes d'utilisation et exemple de demande de travaux CLI 2.1
Consultez Créer dans Mise à jour des travaux de l’API de 2.0 vers 2.1.
Exemple de données utiles et de réponse à une demande de travaux CLI 2.0
create-job.json
:
{
"name": "my-job",
"existing_cluster_id": "1234-567890-reef123",
"notebook_task": {
"notebook_path": "/Users/someone@example.com/My Notebook"
},
"email_notifications": {
"on_success": [
"someone@example.com"
],
"on_failure": [
"someone@example.com"
]
}
}
{ "job_id": 246 }
Conseil
Pour copier un travail, exécutez la commande create
et transmettez un objet JSON avec les paramètres de la tâche à copier. Cet exemple copie les paramètres de la tâche avec l’ID de 246
dans un nouveau travail. Elle nécessite l’utilitaire JQ .
SETTINGS_JSON=$(databricks jobs get --job-id 246 | jq .settings)
databricks jobs create --json "$SETTINGS_JSON"
{ "job_id": 247 }
Supprimer un travail
Pour afficher la documentation d’utilisation, exécutez databricks jobs delete --help
.
databricks job delete --job-id 246
En cas de réussite, aucune sortie ne s’affiche.
Conseil
Pour supprimer plusieurs travaux ayant le même paramètre, récupérez la liste des ID de travail qui correspondent à ce paramètre, puis exécutez la commande delete
pour chaque ID de travail correspondant. Cet exemple supprime toutes les tâches dont le nom de Untitled
tâche est. Elle nécessite l’utilitaire JQ .
databricks jobs list --output json | jq '.jobs[] | select(.settings.name == "Untitled") | .job_id' | xargs -n 1 databricks jobs delete --job-id
Lister les informations relatives à un travail
Pour afficher la documentation d’utilisation, exécutez databricks jobs get --help
.
Utilisation générale
databricks jobs get --job-id 246
Notes d'utilisation et exemple de demande de travaux CLI 2.1
Consultez Obtenir dans Mise à jour des travaux de l’API de 2.0 vers 2.1.
Exemple de réponse CLI de travaux 2.0
{
"job_id": 246,
"settings": {
"name": "my-job",
"existing_cluster_id": "1234-567890-reef123",
"email_notifications": {
"on_success": [
"someone@example.com"
],
"on_failure": [
"someone@example.com"
]
},
"timeout_seconds": 0,
"notebook_task": {
"notebook_path": "/Users/someone@example.com/My Notebook"
},
"max_concurrent_runs": 1
},
"created_time": 1620163107742,
"creator_user_name": "someone@example.com"
}
Répertorier les informations sur les tâches disponibles
Pour afficher la documentation d’utilisation, exécutez databricks jobs list --help
.
Utilisation générale
databricks jobs list
Notes d'utilisation et exemple de demande de travaux CLI 2.1
Consultez Répertorier dans Mise à jour des travaux de l’API de 2.0 vers 2.1.
Exemple de réponse Jobs CLI 2.0
{
"jobs": [
{
"job_id": 246,
"settings": {
"name": "my-job",
"existing_cluster_id": "1234-567890-reef123",
"email_notifications": {
"on_success": [
"someone@example.com"
],
"on_failure": [
"someone@example.com"
]
},
"timeout_seconds": 0,
"notebook_task": {
"notebook_path": "/Users/someone@example.com/My Notebook"
},
"max_concurrent_runs": 1
},
"created_time": 1620163107742,
"creator_user_name": "someone@example.com"
},
...
]
}
Lister tous les travaux (API 2.1 uniquement)
Pour indiquer à l’interface CLI de retourner tous les travaux en effectuant des appels séquentiels à l’API, utilisez l’option --all
. Pour utiliser l’option --all
, vous devez définir la version d’API sur 2.1.
databricks jobs list --all
Paginer la liste des travaux (API 2.1 uniquement)
Pour retourner une liste de travaux paginée, utilisez les arguments --limit
et --offset
. Par défaut, la liste des travaux est retournée sous forme de table avec l’ID de travail et le nom du travail. Pour retourner éventuellement un document JSON contenant les informations de travail, utilisez l’argument --output JSON
.
Pour utiliser les arguments --limit
et --offset
, vous devez définir la version d’API sur 2.1.
Quand vous utilisez --output JSON
, la liste est retournée par ordre décroissant de la date de création du travail. Quand vous utilisez --output TABLE
, la liste est retournée par ordre décroissant de la date de création du travail, puis triée par ordre alphabétique du nom de travail.
L’exemple suivant pagine la liste des travaux avec 10 travaux à la fois et retourne les résultats au format JSON :
databricks jobs list --output JSON --limit 10
databricks jobs list --output JSON --limit 10 --offset 10
databricks jobs list --output JSON --limit 10 --offset 20
Modifier les paramètres d’un travail.
Pour afficher la documentation d’utilisation, exécutez databricks jobs reset --help
.
Utilisation générale
databricks jobs reset --job-id 246 --json-file reset-job.json
Notes d'utilisation et exemple de demande de travaux CLI 2.1
Consultez Mettre à jour et Réinitialiser dans Mise à jour des travaux de l’API de 2.0 vers 2.1.
Exemple de requête CLI de travaux 2.0
reset-job.json
:
{
"job_id": 246,
"existing_cluster_id": "2345-678901-batch234",
"name": "my-changed-job",
"notebook_task": {
"notebook_path": "/Users/someone@example.com/My Other Notebook"
},
"email_notifications": {
"on_success": [
"someone-else@example.com"
],
"on_failure": [
"someone-else@example.com"
]
}
}
En cas de réussite, aucune sortie ne s’affiche.
Exécuter une tâche
Pour afficher la documentation d’utilisation, exécutez databricks jobs run-now --help
.
databricks jobs run-now --job-id 246
{
"run_id": 122,
"number_in_job": 1
}