Exécutions de l’interface CLI (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 runs
la tâche Databricks et exécuter des sous-commandes CLI en les ajoutant à databricks jobs
. Pour les sous-commandes CLI des tâches Databricks, consultez l’interface CLI Jobs (héritée). Ensemble, ces sous-commandes appellent l’API Travaux et l’API Travaux 2.0.
Important
L’interface CLI des exécutions de tâches Databricks prend en charge les appels à deux versions de l’API REST Databricks Jobs : versions 2.1 et 2.0. (La fonctionnalité d’exécution des projets fait partie de l’API REST de projets.) La version 2.1 ajoute la prise en charge de l’orchestration des projets comportant plusieurs tâches. Consultez Planifier et orchestrer des workflows 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.
Notes
Si vous recevez une erreur de niveau 500 lorsque vous effectuez des requêtes CLI d’exécution de tâches, Databricks recommande de réessayer les requêtes pendant 10 minutes au maximum (avec un intervalle minimum de 30 secondes entre les nouvelles tentatives).
Conditions requises pour appeler l’API REST Travaux 2.1
Pour configurer l’interface CLI des tâches Databricks (et la CLI des travaux) pour appeler l’API REST Jobs 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 l’exécution des travaux (et de l’interface CLI des travaux) feront appel à l’API REST Jobs 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 l’exécution des travaux (et de l’interface CLI des travaux) feront appel à l’API REST Jobs 2.1 par défaut. - Ajoutez l’option
--version=2.1
(par exemple,databricks runs list --version=2.1
) pour indiquer à l’interface CLI des exécutions de tâches d’appeler l’API REST Jobs 2.1 pour cet appel uniquement.
Si vous ne prenez aucune des mesures précédentes, l’interface CLI d’exécutions de tâches (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 l’interface CLI des tâches Databricks (et la CLI des travaux) pour appeler l’API REST Jobs 2.0, procédez comme suit :
- Utilisez une version de l’interface CLI Databricks sous 0.16.0, ou
- Mettez à jour le CLI à la version 0.16.0 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 l’exécution des travaux (et de l’interface CLI des travaux) feront appel à l’API REST Jobs 2.0 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 l’exécution des travaux (et de l’interface CLI des travaux) feront appel à l’API REST Jobs 2.0 par défaut. - Ajoutez l’option
--version=2.1
(par exemple,databricks runs list --version=2.0
) pour indiquer à l’interface CLI des exécutions de tâches d’appeler l’API REST Jobs 2.0 pour cet appel uniquement.
- Exécutez la commande
Si vous ne prenez aucune des mesures précédentes, l’interface CLI d’exécutions de tâches (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 runs --help
Usage: databricks runs [OPTIONS] COMMAND [ARGS]...
Utility to interact with jobs runs.
Options:
-v, --version [VERSION]
--debug Debug mode. Shows full stack trace on error.
--profile TEXT CLI connection profile to use. The default profile is
"DEFAULT".
-h, --help Show this message and exit.
Commands:
cancel Cancels the specified run.
get Gets the metadata about a run in JSON form.
get-output Gets the output of a run.
list Lists job runs.
submit Submits a one-time run.
Annuler une exécution
Pour afficher la documentation d’utilisation, exécutez databricks runs cancel --help
.
databricks runs cancel --run-id 119
{}
Obtenir des informations sur une exécution
Pour afficher la documentation d’utilisation, exécutez databricks runs get --help
.
Utilisation générale
databricks runs get --run-id 2785782
Notes d'utilisation et exemple de demande de travaux CLI 2.1
Consultez Obtenir des exécutions dans Mise à jour des travaux de l’API de 2.0 vers 2.1.
Exemple de réponse Jobs CLI 2.0
{
"job_id": 1269263,
"run_id": 2785782,
"number_in_job": 1111,
"original_attempt_run_id": 2785782,
"state": {
"life_cycle_state": "TERMINATED",
"result_state": "SUCCESS",
"state_message": ""
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
}
},
"cluster_spec": {
"new_cluster": {
"spark_version": "8.1.x-scala2.12",
"node_type_id": "Standard_F16s",
"enable_elastic_disk": true,
"azure_attributes": {
"availability": "ON_DEMAND_AZURE"
},
"num_workers": 8
}
},
"cluster_instance": {
"cluster_id": "1234-567890-abcd123",
"spark_context_id": "1234567890123456789"
},
"start_time": 1620947196985,
"setup_duration": 36000,
"execution_duration": 119000,
"cleanup_duration": 3000,
"end_time": 1620947355499,
"trigger": "ONE_TIME",
"creator_user_name": "someone@example.com",
"run_name": "my-notebook-run",
"run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
"run_type": "JOB_RUN",
"attempt_number": 0
}
Obtenir la sortie d’une exécution
Pour afficher la documentation d’utilisation, exécutez databricks runs get-output --help
.
Notes
Quand notebook_task
retourne une valeur d’un appel à dbutils.notebook.exit()
, Databricks limite la valeur retournée aux cinq premiers Mo de données. Pour obtenir un résultat plus grand, vous pouvez stocker les résultats des travaux dans un service de stockage cloud.
Utilisation générale
databricks runs get-output --run-id 2785782
Remarques sur l’utilisation de Jobs CLI 2.1
Consultez Obtenir des exécutions de sortie dans Mise à jour des travaux de l’API de 2.0 vers 2.1.
Exemple de réponse Jobs CLI 2.0
{
"metadata": {
"job_id": 1269263,
"run_id": 2785782,
"number_in_job": 1111,
"original_attempt_run_id": 2785782,
"state": {
"life_cycle_state": "TERMINATED",
"result_state": "SUCCESS",
"state_message": ""
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
}
},
"cluster_spec": {
"new_cluster": {
"spark_version": "8.1.x-scala2.12",
"node_type_id": "Standard_F16s",
"enable_elastic_disk": true,
"azure_attributes": {
"availability": "ON_DEMAND_AZURE"
},
"num_workers": 8
}
},
"cluster_instance": {
"cluster_id": "1234-567890-abcd123",
"spark_context_id": "1234567890123456789"
},
"start_time": 1620947196985,
"setup_duration": 36000,
"execution_duration": 119000,
"cleanup_duration": 3000,
"end_time": 1620947355499,
"trigger": "ONE_TIME",
"creator_user_name": "someone@example.com",
"run_name": "my-notebook-run",
"run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
"run_type": "JOB_RUN",
"attempt_number": 0
},
"notebook_output": {}
}
Obtenir des informations sur toutes les exécutions
Pour afficher la documentation d’utilisation, exécutez databricks runs list --help
.
Utilisation générale
databricks runs list --output JSON
Notes d'utilisation et exemple de demande de travaux CLI 2.1
Consultez Répertorier des exécutions dans Mise à jour des travaux de l’API de 2.0 vers 2.1.
Exemple de réponse Jobs CLI 2.0
{
"runs": [
{
"job_id": 1269263,
"run_id": 2785782,
"number_in_job": 1111,
"original_attempt_run_id": 2785782,
"state": {
"life_cycle_state": "TERMINATED",
"result_state": "SUCCESS",
"state_message": ""
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
}
},
"cluster_spec": {
"new_cluster": {
"spark_version": "8.1.x-scala2.12",
"node_type_id": "Standard_F16s",
"enable_elastic_disk": true,
"azure_attributes": {
"availability": "ON_DEMAND_AZURE"
},
"num_workers": 8
}
},
"cluster_instance": {
"cluster_id": "1234-567890-abcd123",
"spark_context_id": "1234567890123456789"
},
"start_time": 1620947196985,
"setup_duration": 36000,
"execution_duration": 119000,
"cleanup_duration": 3000,
"end_time": 1620947355499,
"trigger": "ONE_TIME",
"creator_user_name": "someone@example.com",
"run_name": "my-notebook-run",
"run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
"run_type": "JOB_RUN",
"attempt_number": 0
},
...
],
"has_more": false
}
Si has_more
retourne true
, des informations sur les exécutions supplémentaires sont disponibles. Utilisez l’option --offset
pour renvoyer des informations sur les exécutions relatives à la dernière exécution. Par exemple, pour retourner des informations à partir de la dixième exécution la plus récente, spécifiez --offset 10
.
Utilisez l’option --limit
pour renvoyer des informations sur un nombre fixe d’exécutions. Par exemple, pour retourner des informations pour les cinq prochaines exécutions, spécifiez --limit 5
. Vous pouvez indiquer jusqu’à 1000 exécutions. Si cet argument n’est pas spécifié, la valeur par défaut est 20.
Envoyer une exécution unique
Pour afficher la documentation d’utilisation, exécutez databricks runs submit --help
.
Utilisation générale
databricks runs submit --json-file submit-run.json
Remarques d’utilisation et exemple de requête de l’API REST Jobs 2.1
Consultez Envoyer des exécutions dans Mise à jour des travaux de l’API de 2.0 vers 2.1.
Exemple de requête et de réponse de l’API REST Jobs 2.0
submit-run.json
:
{
"run_name": "my-spark-run",
"new_cluster": {
"spark_version": "8.1.x-scala2.12",
"node_type_id": "Standard_F16s",
"enable_elastic_disk": true,
"azure_attributes": {
"availability": "ON_DEMAND_AZURE"
},
"num_workers": 8
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
}
{
"run_id": 123
}