groupe de commandesbundle
L'utilisation de Databricks CLI est soumise à la licence Databricks et à la politique de confidentialité Databricks, y compris toutes les dispositions relatives aux données d'utilisation.
Le groupe de commandes bundle au sein de la CLI Databricks contient des commandes pour la gestion des Declarative Automation Bundles. Les Declarative Automation Bundles vous permettent d'exprimer des projets sous forme de code et de valider, déployer et exécuter par programme des workflows Databricks tels que des Job Databricks, des LakeFlow Pipelines et des piles MLOps. Consultez Que sont les Declarative Automation Bundles ?
Les commandes de bundle utilisent les paramètres de databricks.yml pour l'authentification lorsqu'elles sont exécutées depuis le dossier du bundle. Si vous souhaitez exécuter des commandes de bundle avec une authentification différente depuis le dossier du bundle, spécifiez un profil de configuration à l'aide de l'indicateur --profile (ou -p) et ne spécifiez pas de --target.
Vous pouvez également exécuter des commandes qui ne nécessitent pas la même authentification que le bundle, en dehors du dossier du bundle.
déploiement de bundles Databricks
Déployer un bundle sur le workspace distant.
databricks bundle deploy [flags]
Cible du bundle et identité
Pour déployer le bundle vers une cible spécifique, définissez l'option -t (ou --target) avec le nom de la cible tel que déclaré dans les fichiers de configuration du bundle. Si aucune option de commande n'est spécifiée, la cible default, telle que déclarée dans les fichiers de configuration du bundle, est utilisée. Par exemple, pour une cible déclarée avec le nom dev:
databricks bundle deploy -t dev
Un bundle peut être déployé sur plusieurs workspaces, tels que les workspaces de développement, de staging et de production. Fondamentalement, la propriété root_path détermine l'identité unique d'un bundle, qui utilise la default ~/.bundle/${bundle.name}/${bundle.target}. Par conséquent, par default, l'identité d'un bundle est composée de l'identité du déployeur, du nom du bundle et du nom cible du bundle. Si elles sont identiques dans différents bundles, le déploiement de ces bundles interférera les uns avec les autres.
De plus, un déploiement de bundle suit les Ressources qu'il crée dans le workspace cible par leurs ID comme un état qui est stocké dans le système de fichiers du workspace. Les noms de ressource ne sont pas utilisés pour corréler un déploiement de bundle et une instance de ressource, donc :
- Si une ressource de la configuration du bundle n'existe pas dans le Workspace cible, elle est créée.
- Si une ressource dans la configuration du bundle existe dans le Workspace cible, elle est mise à jour dans le Workspace.
- Si une ressource est supprimée de la configuration du bundle, elle est supprimée du Workspace cible si elle a été précédemment déployée.
- L'association d'une ressource à un bundle ne peut être oubliée que si vous modifiez le nom du bundle, la cible du bundle ou le Workspace. Vous pouvez exécuter
bundle validatepour afficher un résumé contenant ces valeurs.
Options
--auto-approve
Ignorer les approbations interactives qui pourraient être requises pour le déploiement.
-c, --cluster-id string
Remplacer le cluster dans le déploiement avec l'ID de cluster donné.
--fail-on-active-runs
Échouer s'il y a des jobs ou des pipelines en cours d'exécution dans le déploiement.
--force
Forcer le remplacement de la validation de la branch Git.
--force-lock
Forcer l'acquisition du verrouillage de déploiement. Cette option désactive le mécanisme qui empêche les déploiements concurrents d'interagir les uns avec les autres. Il ne doit être utilisé que si le déploiement précédent a échoué ou a été interrompu et a laissé un fichier de verrouillage obsolète.
--plan
Chemin d'accès à un fichier de plan JSON à appliquer au lieu de la planification (moteur direct uniquement). Le fichier de plan peut être créé à l'aide de databricks bundle plan -o json.
--select strings
Databricks recommande d'utiliser uniquement cette option pour le déploiement des ressources vers les Workspaces de développement. Il n'est pas destiné à être utilisé en production. Seules la ou les ressources spécifiées et les dépendances en amont requises sont déployées ; les ressources et dépendances en aval ne sont pas mises à jour. Cela peut provoquer des erreurs de dépendance et un comportement inattendu.
Déployer uniquement la ou les ressource(s) spécifiée(s) (par exemple, my_job ou jobs.my_job). Peut être répété ou séparé par des virgules.
Exemples
L'exemple suivant déploie un bundle à l'aide d'un ID de cluster spécifique :
databricks bundle deploy --cluster-id 0123-456789-abcdef
L'exemple suivant ne déploie que les Ressources spécifiées. Utilisez l'indicateur --select avec la ou les clés de Ressources, éventuellement qualifiées par type de Ressource, et répétez l'indicateur ou utilisez une liste séparée par des virgules pour déployer plusieurs Ressources :
databricks bundle deploy --select my_job
databricks bundle deploy --select jobs.my_job --select pipelines.my_pipeline
databricks bundle deploy --select my_job,my_pipeline
déploiement d'ensembles Databricks
Commandes liées au déploiement.
databricks bundle deployment [command]
Commandes disponibles
bind- Lier une ressource définie par un bundle à une ressource existante dans le workspace distant.migrate- Migrez un bundle pour utiliser le moteur de déploiement direct.unbind- Dissocier une ressource définie par un bundle de sa ressource distante.
Liaison de déploiement de bundle Databricks
Link les ressources définies par le bundle à des ressources existantes dans le Workspace Databricks afin qu'elles soient gérées par les Declarative Automation Bundles. Si vous liez une ressource, la ressource Databricks existante dans le workspace est mise à jour en fonction de la configuration définie dans le bundle auquel elle est liée après le prochain bundle deploy.
databricks bundle deployment bind KEY RESOURCE_ID [flags]
La liaison ne recrée pas les données. Par exemple, si une liaison avait été appliquée à un pipeline contenant des données dans un catalogue, vous pouvez le déployer sans perdre les données existantes. De plus, il n'est pas nécessaire de recalculer la vue matérialisée, par exemple, de sorte que les pipelines n'ont pas à être réexécutés.
La commande de liaison doit être utilisée avec l'indicateur --target. Le format de l'identifiant dépend du type de ressource — voir Arguments ci-dessous.
Il est recommandé de confirmer la Ressource dans le Workspace avant d'exécuter la liaison.
Bind est pris en charge pour tous les types de ressource Declarative Automation Bundles. Notez que certaines ressources ne sont disponibles qu’avec le moteur direct, voir Ressources Declarative Automation Bundles.
Pour les ressources prises en charge par la commande bundle generate, liez automatiquement la ressource après la génération à l'aide de l'option --bind.
Arguments
KEY
La clé de la Ressource à lier
RESOURCE_ID
L'identifiant de la ressource existante à laquelle se lier. Le format dépend du type de ressource, car la commande de liaison utilise l'endpoint d'API REST GET pour découvrir la ressource. Pour les ressources identifiées par un ID numérique ou de style UUID (comme les Jobs et les pipelines), passez cet ID. Pour les ressources Unity Catalog identifiées par leur nom complet (telles que les schémas et les volumes), transmettez plutôt le chemin d'accès au nom complet. Par exemple :
- **Job** : ID numérique, tel que
6565621249 - pipeline : UUID, tel que
7688611149d5709ac9-2900-1229-9996-586a9zez8929 - Schéma : nom complet au format
catalog.schema, par exemplemy_catalog.my_schema - volume : nom complet au format
catalog.schema.volume, tel quemy_catalog.my_schema.my_volume - registered_model : nom complet au format
catalog.schema.model - **quality_monitor** : nom complet de la table au
catalog.schema.tableformat
Options
--auto-approve
Approuver automatiquement la liaison, au lieu d'afficher une invite
--force-lock
Forcer l'acquisition du verrouillage de déploiement. Cette option désactive le mécanisme qui empêche les déploiements concurrents d'interagir les uns avec les autres. Il ne doit être utilisé que si le déploiement précédent a échoué ou a été interrompu et a laissé un fichier de verrouillage obsolète.
Exemples
La commande suivante lie la ressource de bundle hello_job à un job existant dans le workspace à l’aide de l’ID numérique du job. La commande affiche un diff et vous permet de refuser la liaison des ressources, mais si elle est confirmée, toutes les mises à jour de la définition du job dans le bundle sont appliquées au job distant correspondant lors du prochain déploiement du bundle.
databricks bundle deployment bind hello_job 6565621249
Pour les Ressources Unity Catalog, telles que les schémas et les volumes, transmettez le chemin d'accès complet au lieu d'un ID. La commande suivante lie un schéma défini par le bundle à un schéma existant dans le Workspace :
databricks bundle deployment bind my_bundle_schema_ref my_existing_catalog.my_existing_schema
migration du déploiement de bundle databricks
Aperçu
Cette fonctionnalité est en aperçu public.
Migrez le bundle de l'utilisation du moteur de déploiement Terraform à l'utilisation du moteur de déploiement direct. Consultez Migrer vers le moteur de déploiement direct. Pour terminer la migration, vous devez ensuite déployer le bundle.
Vous pouvez vérifier qu'une migration a réussi en exécutant databricks bundle plan. Voir databricks bundle plan.
databricks bundle deployment migrate [flags]
Arguments
Aucun
Options
Exemples
L'exemple suivant migre le bundle actuel pour utiliser le moteur de déploiement direct:
databricks bundle deployment migrate
dissocier le déploiement du bundle Databricks
Supprimer le Link entre la ressource d'un bundle et son équivalent distant dans un workspace.
databricks bundle deployment unbind KEY [flags]
Arguments
KEY
La clé de la ressource à dissocier
Options
--force-lock
Forcer l'acquisition du verrouillage de déploiement. Cette option désactive le mécanisme qui empêche les déploiements concurrents d'interagir les uns avec les autres. Il ne doit être utilisé que si le déploiement précédent a échoué ou a été interrompu et a laissé un fichier de verrouillage obsolète.
Exemples
L'exemple suivant délie la ressource hello_job :
databricks bundle deployment unbind hello_job
databricks bundle destroy
La destruction d'un bundle supprime définitivement les jobs, pipelines et artefacts précédemment déployés d'un bundle. Cette action ne peut pas être annulée.
Supprimez les jobs, pipelines, autres ressources et artefacts précédemment déployés.
databricks bundle destroy [flags]
L'identité d'un bundle est composée du nom du bundle, de la cible du bundle et du Workspace. Si vous avez modifié l'un d'entre eux et que vous tentez ensuite de détruire un bundle avant le déploiement, une erreur se produira.
By default, il vous est demandé de confirmer la suppression permanente des jobs, pipelines et artefacts précédemment déployés. Pour ignorer ces invites et effectuer une suppression permanente automatique, ajoutez l'option --auto-approve à la commande bundle destroy.
Vous pouvez utiliser le paramètre lifecycle pour empêcher la destruction de ressources spécifiques. Voir le cycle de vie.
Options
--auto-approve
Ignorer les approbations interactives pour la suppression des ressources et des fichiers
--force-lock
Forcer l'acquisition du verrouillage de déploiement. Cette option désactive le mécanisme qui empêche les déploiements concurrents d'interagir les uns avec les autres. Il ne doit être utilisé que si le déploiement précédent a échoué ou a été interrompu et a laissé un fichier de verrouillage obsolète.
Exemples
La commande suivante supprime toutes les ressources et tous les artefacts précédemment déployés qui sont définis dans les fichiers de configuration du bundle :
databricks bundle destroy
databricks bundle generate
Générez la configuration du bundle pour une ressource qui existe déjà dans votre Workspace Databricks. Les ressources suivantes sont prises en charge : application, tableau de bord, Job, pipeline.
Par default, cette commande génère un fichier *.yml pour la ressource dans le dossier resources du projet de bundle et download également tous les fichiers, tels que les Notebooks, référencés dans la configuration.
La commande bundle generate est fournie à titre de commodité pour générer automatiquement la configuration des ressources. Cependant, si votre bundle inclut une configuration de ressources et que vous le déployez, Databricks crée une nouvelle ressource plutôt que de mettre à jour celle qui existe déjà. Pour mettre à jour une ressource existante, vous devez soit utiliser l'indicateur --bind avec bundle generate, soit exécuter bundle deployment bind avant le déploiement. Reportez-vous à databricks bundle deployment bind.
databricks bundle generate [command]
Commandes disponibles
app- Générer la configuration du bundle pour une application Databricks.dashboard- Générer la configuration d’un tableau de bord.genie-space– Générer la configuration d’un agent Genie.job- Générer la configuration de bundle pour un Job.pipeline- Générer la configuration d'un bundle pour un pipeline.
Options
--key string
Clé de ressource à utiliser pour la configuration générée
databricks bundle generate app
Générez la configuration du bundle pour une application Databricks existante dans le workspace.
databricks bundle generate app [flags]
Options
--bind
Liez automatiquement la ressource générée à celle existante dans le workspace.
-d, --config-dir string
Chemin du répertoire où la configuration du bundle de sortie sera stockée (default « Ressources »)
--existing-app-name string
Nom de l’application pour générer la config.
-f, --force
Forcer l'écrasement des fichiers existants dans le répertoire de sortie
-s, --source-dir string
Chemin du répertoire où les fichiers de l'application seront stockés (default « src/app »)
Exemples
L'exemple suivant génère la configuration d'une application existante nommée my-app. Vous pouvez obtenir le nom de l'application depuis l'onglet Compute > Apps de l'interface utilisateur du workspace.
databricks bundle generate app --existing-app-name my-app
La commande suivante génère un nouveau fichier hello_world.app.yml dans le dossier de projet de bundle resources, et download les fichiers de code de l'application, tels que le fichier de configuration de la commande de l'application app.yaml et le principal app.py. Par défaut, les fichiers de code sont copiés dans le dossier src de votre pipeline.
databricks bundle generate app --existing-app-name "hello_world"
# This is the contents of the resulting /resources/hello-world.app.yml file.
resources:
apps:
hello_world:
name: hello-world
description: A basic starter application.
source_code_path: ../src/app
databricks bundle générer un tableau de bord
Générer la configuration d'un tableau de bord existant dans le Workspace.
databricks bundle generate dashboard [flags]
Pour mettre à jour le fichier .lvdash.json après avoir déjà déployé un tableau de bord, utilisez l'option --resource lorsque vous exécutez bundle generate dashboard pour générer ce fichier pour la ressource de tableau de bord existante. Pour interroger et récupérer en continu les mises à jour d'un tableau de bord, utilisez les options --force et --watch.
Options
--bind
Liez automatiquement la ressource générée à celle existante dans le workspace.
-s, --dashboard-dir string
Répertoire pour écrire la représentation du tableau de bord (par default « src »)
--existing-id string
ID du tableau de bord pour lequel générer la configuration
--existing-path string
Chemin du Workspace du tableau de bord pour générer la configuration
-f, --force
Forcer l'écrasement des fichiers existants dans le répertoire de sortie
--resource string
Clé de ressource du tableau de bord à surveiller pour les modifications
-d, --resource-dir string
Dossier où écrire la configuration (default « ressources »)
--watch
Surveiller les modifications du tableau de bord et mettre à jour la configuration
Exemples
L'exemple suivant génère la configuration à partir d'un ID de tableau de bord existant :
databricks bundle generate dashboard --existing-id abc123
Vous pouvez également générer la configuration d'un tableau de bord existant par chemin d'accès au workspace. Copiez le chemin d'accès au workspace pour un tableau de bord à partir de l'interface utilisateur du workspace.
Par exemple, la commande suivante génère un nouveau fichier baby_gender_by_county.dashboard.yml dans le dossier de projet du bundle resources contenant le YAML ci-dessous, et download le fichier baby_gender_by_county.lvdash.json dans le dossier de projet src.
databricks bundle generate dashboard --existing-path "/Workspace/Users/someone@example.com/baby_gender_by_county.lvdash.json"
# This is the contents of the resulting baby_gender_by_county.dashboard.yml file.
resources:
dashboards:
baby_gender_by_county:
display_name: 'Baby gender by county'
warehouse_id: aae11o8e6fe9zz79
file_path: ../src/baby_gender_by_county.lvdash.json
databricks bundle generate Genie space
Générer la configuration pour un agent Genie existant dans le workspace.
Cette commande génère :
- Un fichier YAML de configuration d’agent Genie avec des paramètres et une référence à la définition de l’agent Genie
- Un fichier de définition d'agent Genie (
*.geniespace.json) avec le contenu de l'espace sérialisé
databricks bundle generate genie-space [flags]
Pour mettre à jour le fichier .geniespace.json après avoir déjà déployé un agent Genie, utilisez l'option --resource lorsque vous exécutez bundle generate genie-space pour générer ce fichier pour la Ressource existante. Pour interroger et récupérer en continu les mises à jour d'un agent Genie, utilisez les options --force et --watch.
Options
--existing-id string
ID de l'agent Genie pour générer la configuration
-f, --force
Forcer l'écrasement des fichiers existants dans le répertoire de sortie
-s, --genie-space-dir string
Répertoire dans lequel écrire la représentation de l'agent Genie (default « src »)
--resource string
Clé de ressource de l'agent Genie pour surveiller les modifications
-d, --resource-dir string
Dossier où écrire la configuration (default « ressources »)
--watch
Surveillez les modifications apportées à l'agent Genie et mettez à jour la configuration.
Exemples
L'exemple suivant génère une configuration à l'aide d'un ID d'agent Genie existant :
databricks bundle generate genie-space --existing-id abc123
L'exemple suivant maintient le bundle synchronisé avec les modifications de l'interface utilisateur apportées à l'agent Genie :
databricks bundle generate genie-space --resource my_genie_space --watch --force
databricks bundle generate job
Générez la configuration de bundle pour un job.
Actuellement, seules les jobs avec des tâches de notebook sont prises en charge par cette commande.
databricks bundle generate job [flags]
Options
--bind
Liez automatiquement la ressource générée à celle existante dans le workspace.
-d, --config-dir string
Chemin du répertoire où la configuration de sortie sera stockée (default « Ressources »)
--existing-job-id int
ID de Job du Job pour lequel générer la configuration
-f, --force
Forcer l'écrasement des fichiers existants dans le répertoire de sortie
-s, --source-dir string
Chemin du répertoire où les fichiers téléchargés seront stockés (default « src »)
Exemples
L'exemple suivant génère un nouveau fichier hello_job.yml dans le dossier de projet du bundle resources contenant le YAML ci-dessous, et download le simple_notebook.py dans le dossier de projet src. Il lie également la ressource générée avec le job existant dans le Workspace.
databricks bundle generate job --existing-job-id 6565621249 --bind
# This is the contents of the resulting hello_job.yml file.
resources:
jobs:
hello_job:
name: 'Hello Job'
tasks:
- task_key: run_notebook
email_notifications: {}
notebook_task:
notebook_path: ../src/simple_notebook.py
source: WORKSPACE
run_if: ALL_SUCCESS
max_concurrent_runs: 1
databricks bundle generate pipeline
Générer la configuration du bundle pour un pipeline existant.
databricks bundle generate pipeline [flags]
Si vous avez un projet Spark Declarative Pipelines (SDP) existant, vous pouvez générer une configuration pour celui-ci à l'aide de databricks pipelines generate. Consultez génération de pipelines Databricks.
Options
--bind
Liez automatiquement la ressource générée à celle existante dans le workspace.
-d, --config-dir string
Chemin du répertoire où la configuration de sortie sera stockée (default « Ressources »)
--existing-pipeline-id string
ID du pipeline pour lequel générer la configuration
-f, --force
Forcer l'écrasement des fichiers existants dans le répertoire de sortie
-s, --source-dir string
Chemin du répertoire où les fichiers téléchargés seront stockés (default « src »)
Exemples
L'exemple suivant génère une configuration pour un pipeline existant :
databricks bundle generate pipeline --existing-pipeline-id abc-123-def
databricks bundle init
Initialisez un nouveau bundle en utilisant un Template de bundle. Les modèles peuvent être configurés pour demander à l’utilisateur de saisir des valeurs. Consultez les modèles de projet Declarative Automation Bundles.
databricks bundle init [TEMPLATE_PATH] [flags]
Arguments
TEMPLATE_PATH
Template à utiliser pour l'initialisation (facultatif)
Options
--branch string
Branch Git à utiliser pour l'initialisation du Template
--config-file string
Fichier JSON contenant des paires clé-valeur de parameter d'entrée requis pour l'initialisation de la Template.
--output-dir string
Répertoire dans lequel écrire le template initialisé.
--tag string
Tag Git à utiliser pour l'initialisation du template
--template-dir string
Chemin du répertoire dans un repository Git contenant le Template.
Exemples
Les exemples de prompts suivants présentent une liste de bundle Template default parmi lesquels choisir :
databricks bundle init
L’exemple suivant initialise un bundle à l’aide du Template Python default :
databricks bundle init default-python
Pour créer un bundle à l'aide d'un template de bundle personnalisé, spécifiez le chemin du template personnalisé :
databricks bundle init <project-template-local-path-or-url> \
--project-dir="</local/path/to/project/template/output>"
L'exemple suivant initialise un bundle à partir d'un repository Git :
databricks bundle init https://github.com/my/repository
L'exemple suivant s'initialise avec une Branch spécifique :
databricks bundle init --branch main
databricks bundle open
Naviguez vers une ressource de bundle dans le Workspace, en spécifiant la ressource à ouvrir. Si une clé de ressources n'est pas spécifiée, cette commande génère une liste des ressources du bundle parmi lesquelles choisir.
databricks bundle open [flags]
Options
--force-pull
Ignorer le cache local et charger l'état à partir du workspace distant
Exemples
L'exemple suivant lance un navigateur et accède au tableau de bord baby_gender_by_county dans le bundle, dans le workspace Databricks configuré pour le bundle :
databricks bundle open baby_gender_by_county
Plan de bundle Databricks
Afficher le plan de déploiement pour la configuration actuelle du bundle.
Cette commande crée le bundle et affiche les actions qui seraient effectuées sur les Ressources à déployer, sans apporter de modifications. Ceci vous permet de prévisualiser les modifications avant d'exécuter bundle deploy.
databricks bundle plan [flags]
Options
-c, --cluster-id string
Remplacer le cluster dans le déploiement avec l'ID de cluster donné.
--force
Forcer le remplacement de la validation de la branch Git.
--select strings
Planifiez uniquement la ou les Ressources spécifiées (par exemple, my_job ou jobs.my_job). Peut être répété ou séparé par des virgules.
Exemples
L’exemple suivant présente le plan de déploiement d’un bundle qui construit un Python wheel et définit un Job et un pipeline :
databricks bundle plan
Building python_artifact...
create jobs.my_bundle_job
create pipelines.my_bundle_pipeline
Exécution de bundle Databricks
Exécuter un Job, un pipeline ou un script. Si vous ne spécifiez pas une Ressource, la commande vous invite à choisir parmi les Jobs, les pipelines et les scripts définis. Alternativement, spécifiez la clé du Job ou du pipeline, ou le nom du script déclaré dans les fichiers de configuration du bundle.
databricks bundle run [flags] [KEY]
Valider un pipeline
Si vous souhaitez effectuer une exécution de validation de pipeline, utilisez l'option --validate-only, comme indiqué dans l'exemple suivant :
databricks bundle run --validate-only my_pipeline
Transmettre les paramètres de job
Pour transmettre des paramètres de job, utilisez l'option --params, suivie de paires clé-valeur séparées par des virgules, où la clé est le nom du paramètre. Par exemple, la commande suivante définit le paramètre avec le nom message sur HelloWorld pour le job hello_job:
databricks bundle run --params message=HelloWorld hello_job
Comme indiqué dans les exemples suivants, vous pouvez passer des parameters aux tâches de Job en utilisant les options des tâches de Job, mais l'option --params est la méthode recommandée pour passer les parameters de Job. Une erreur se produit si des parameters de Job sont spécifiés pour un Job qui n'a pas de parameters de Job définis, ou si des parameters de tâche sont spécifiés pour un Job qui a des parameters de Job définis.
Vous pouvez également spécifier des arguments par mot-clé ou positionnels. Si le Job spécifié utilise des parameters de Job ou si le Job a une tâche de Notebook avec des parameters, les noms des indicateurs sont mappés aux noms des parameters :
databricks bundle run hello_job -- --key1 value1 --key2 value2
Ou si le job spécifié n'utilise pas de paramètres de job et que le job comporte une tâche de fichier Python ou une tâche Python wheel :
databricks bundle run my_job -- value1 value2 value3
Pour un exemple de définition de Job avec des paramètres, consultez Job avec des paramètres.
Exécuter des tâches spécifiques
Pour exécuter uniquement des tâches spécifiques dans un job au lieu de l'intégralité du job, utilisez l'option --only avec une liste de clés de tâches séparées par des virgules. Par exemple, la commande suivante exécute uniquement task_a et task_b dans le job hello_job:
databricks bundle run --only task_a,task_b hello_job
Pour exécuter également les dépendances d'une tâche, ajoutez un modificateur + à la clé de la tâche :
- Préfixez une clé de tâche avec
+pour également exécuter les tâches en amont dont elle dépend. - Suffixez une clé de tâche avec
+pour exécuter également ses tâches en aval (les tâches qui en dépendent).
Par exemple, la commande suivante exécute task_b ainsi que ses tâches en amont et en aval.
databricks bundle run --only +task_b+ hello_job
Exécuter des scripts
Pour exécuter des scripts tels que des tests d’intégration avec les informations d’identification d’authentification configurées d’un bundle, vous pouvez soit exécuter des scripts en ligne, soit exécuter un script défini dans la configuration du bundle. Les scripts s'exécutent en utilisant le même contexte d'authentification configuré dans le bundle.
-
Ajoutez un double trait d’union (
--) aprèsbundle runpour exécuter des scripts en ligne. Par exemple, la commande suivante affiche le répertoire de travail actuel de l'utilisateur actuel :Bashdatabricks bundle run -- python3 -c 'import os; print(os.getcwd())' -
Vous pouvez également définir un script dans le mappage
scriptsde votre configuration de bundle, puis utiliserbundle runpour exécuter le script :YAMLscripts:
my_script:
content: python3 -c 'import os; print(os.getcwd())'Bashdatabricks bundle run my_scriptPour plus d’informations sur la configuration de
scripts, voir les scripts.
Les informations d'authentification du bundle sont transmises aux processus enfants à l'aide de variables d'environnement. Consultez l'authentification unifiée Databricks.
Arguments
KEY
L'identifiant unique de la ressource à exécuter (facultatif).
Options
--no-wait
N'attendez pas que l'exécution se termine.
--restart
Redémarrez l'exécution si elle est déjà en cours.
Indicateurs de Job
Les indicateurs suivants sont des indicateurs au niveau du job. Pour les paramètres de job, consultez Configurer les paramètres de job.
--only strings
Liste de clés de tâche séparées par des virgules à exécuter. Ajoutez un préfixe à une clé avec + pour également exécuter ses tâches en amont. Ajoutez un suffixe à une clé avec + pour également exécuter ses tâches en aval.
--params stringToString
paires k=v séparées par des virgules pour les paramètres de Job ( default [])
Indicateurs de tâche de Job
Les indicateurs suivants sont des indicateurs de paramètre au niveau de la tâche. Consultez Configurer les paramètres de tâche. Databricks recommande d'utiliser les paramètres au niveau du Job (--params) plutôt que les paramètres au niveau de la tâche.
--dbt-commands strings
Une liste de commandes à exécuter pour les Jobs avec des tâches DBT.
--jar-params strings
Une liste de paramètres pour les jobs avec des tâches Spark JAR.
--notebook-params stringToString
Une correspondance entre les clés et les valeurs pour les Jobs avec des tâches de Notebook. (default [])
--pipeline-params stringToString
Une correspondance des clés aux valeurs pour les jobs avec des tâches de pipeline. (default [])
--python-named-params stringToString
Une correspondance des clés aux valeurs pour les jobs avec des tâches Python wheel. (default [])
--python-params strings
Une liste de paramètres pour les Jobs avec des tâches Python.
--spark-submit-params strings
Une liste de parameters pour les jobs avec des tâches de soumission Spark.
--sql-params stringToString
Une correspondance des clés aux valeurs pour les jobs avec des tâches SQL. (default [])
Indicateurs de pipeline
Les indicateurs suivants sont des indicateurs de pipeline.
--full-refresh strings
Liste des tables à reset et recalculer.
--full-refresh-all
Effectuer un Reset complet du Graphe et un recalcul.
--refresh strings
Liste des tables à mettre à jour.
--refresh-all
Effectuez une mise à jour complète du Graphe.
--validate-only
Effectuez une mise à jour pour valider l'exactitude du graphe.
Exemples
L'exemple suivant exécute un Job hello_job dans la cible par default :
databricks bundle run hello_job
L'exemple suivant exécute un job hello_job dans le contexte d'une cible déclarée avec le nom dev:
databricks bundle run -t dev hello_job
L'exemple suivant annule et redémarre l'exécution d'un job existant :
databricks bundle run --restart hello_job
L’exemple suivant exécute un pipeline avec une refresh complète :
databricks bundle run my_pipeline --full-refresh-all
L'exemple suivant exécute une commande dans le contexte du bundle :
databricks bundle run -- echo "hello, world"
schéma de bundle Databricks
Afficher le schéma JSON pour la configuration du bundle.
databricks bundle schema [flags]
Options
Exemples
L'exemple suivant présente le schéma JSON de la configuration du bundle :
databricks bundle schema
Pour exporter le schéma de configuration du bundle sous forme de fichier JSON, exécutez la commande bundle schema et redirigez la sortie vers un fichier JSON. Par exemple, vous pouvez générer un fichier nommé bundle_config_schema.json dans le répertoire actuel :
databricks bundle schema > bundle_config_schema.json
résumé du bundle Databricks
Affiche un résumé de l'identité et des Ressources d'un bundle, y compris des liens profonds pour les Ressources afin que vous puissiez facilement naviguer vers la Ressource dans le Workspace Databricks.
databricks bundle summary [flags]
Vous pouvez également utiliser bundle open pour naviguer vers une Ressource dans le Workspace Databricks. Consultez databricks bundle open.
Options
--force-pull
Ignorer le cache local et charger l'état à partir du workspace distant
Exemples
L'exemple suivant affiche un résumé des ressources déployées d'un bundle :
databricks bundle summary
Le résultat suivant est le résumé d'un bundle nommé my_pipeline_bundle qui définit un Job et un pipeline :
Name: my_pipeline_bundle
Target: dev
Workspace:
Host: https://myworkspace.cloud.databricks.com
User: someone@example.com
Path: /Users/someone@example.com/.bundle/my_pipeline/dev
Resources:
Jobs:
my_project_job:
Name: [dev someone] my_project_job
URL: https://myworkspace.cloud.databricks.com/jobs/206000809187888?o=6051000018419999
Pipelines:
my_project_pipeline:
Name: [dev someone] my_project_pipeline
URL: https://myworkspace.cloud.databricks.com/pipelines/7f559fd5-zztz-47fa-aa5c-c6bf034b4f58?o=6051000018419999
databricks bundle sync
Effectuez une synchronisation unidirectionnelle des modifications de fichiers d'un bundle au sein d'un répertoire du système de fichiers local, vers un répertoire au sein d'un workspace Databricks distant.
bundle sync les commandes ne peuvent pas synchroniser les modifications de fichiers d'un répertoire au sein d'un workspace Databricks distant, vers un répertoire au sein d'un système de fichiers local.
databricks bundle sync [flags]
databricks bundle sync les commandes fonctionnent de la même manière que les commandes databricks sync et sont fournies par souci de commodité et de productivité. Pour les informations d'utilisation de la commande, consultez la commandesync.
Options
--dry-run
Simulez l'exécution de la synchronisation sans apporter de modifications réelles.
--full
Effectuer une synchronisation complète (default est incrémentiel)
--interval duration
Intervalle d'interrogation du système de fichiers (pour --watch) (default 1s)
--output type
Type du format de sortie
--watch
Surveiller le système de fichiers local pour les modifications
Exemples
L'exemple suivant effectue une synchronisation de simulation :
databricks bundle sync --dry-run
L'exemple suivant surveille les modifications et se synchronise automatiquement :
databricks bundle sync --watch
L'exemple suivant effectue une synchronisation complète :
databricks bundle sync --full
Valider le bundle Databricks
Vérifiez que les fichiers de configuration du bundle sont syntaxiquement corrects.
databricks bundle validate [flags]
Par default, cette commande renvoie un résumé de l'identité du bundle :
Name: MyBundle
Target: dev
Workspace:
Host: https://my-host.cloud.databricks.com
User: someone@example.com
Path: /Users/someone@example.com/.bundle/MyBundle/dev
Validation OK!
La commande bundle validate génère des avertissements si des propriétés de Ressources sont définies dans les fichiers de configuration du bundle et ne sont pas trouvées dans le schéma de l'objet correspondant.
Si vous souhaitez uniquement afficher un résumé de l'identité et des Ressources du bundle, utilisez le résumé du bundle.
Options
Exemples
L'exemple suivant valide la configuration du bundle :
databricks bundle validate
Drapeaux globaux
--debug
Activer ou non la journalisation de débogage.
-h OU --help
Afficher l'aide de Databricks CLI ou du groupe de commandes associé ou de la commande associée.
--log-file chaîne
Une chaîne représentant le fichier dans lequel écrire les logs de sortie. Si cet indicateur n'est pas spécifié, la default est d'écrire les logs de sortie dans stderr.
--log-format Format
Le type de format de log, text ou json. La valeur par default est text.
--log-level chaîne
Une chaîne représentant le niveau de format du log. S'il n'est pas spécifié, le niveau de format du log est désactivé.
-o, --output Type
Le type de sortie de commande, text ou json. La valeur par default est text.
-p, --profile chaîne
Nom du profil dans le fichier ~/.databrickscfg à utiliser pour exécuter la commande. Si cet indicateur n'est pas spécifié, alors s'il existe, le profil nommé DEFAULT est utilisé.
--progress-format Format
Le format pour afficher les logs de progression : default, append, inplace ou json
-t, --target chaîne
Le cas échéant, la cible de bundle à utiliser
--var strings
définir les valeurs des variables définies dans la configuration du bundle. Exemple : --var="foo=bar"