Aller au contenu principal

groupe de commandesbundle

remarque

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 ?

remarque

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:

Bash
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 validate pour 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

important

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.

Indicateurs globaux

Exemples

L'exemple suivant déploie un bundle à l'aide d'un ID de cluster spécifique :

Bash
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 :

Bash
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.

astuce

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 exemple my_catalog.my_schema
  • volume : nom complet au format catalog.schema.volume, tel que my_catalog.my_schema.my_volume
  • registered_model : nom complet au format catalog.schema.model
  • **quality_monitor** : nom complet de la table au catalog.schema.table format

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.

Indicateurs globaux

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.

Bash
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 :

Bash
databricks bundle deployment bind my_bundle_schema_ref my_existing_catalog.my_existing_schema

migration du déploiement de bundle databricks

info

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

Indicateurs globaux

Exemples

L'exemple suivant migre le bundle actuel pour utiliser le moteur de déploiement direct:

Bash
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.

Indicateurs globaux

Exemples

L'exemple suivant délie la ressource hello_job :

Bash
databricks bundle deployment unbind hello_job

databricks bundle destroy

attention

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]
remarque

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.

Indicateurs globaux

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 :

Bash
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.

important

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

Indicateurs globaux

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 »)

Indicateurs globaux

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.

Bash
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.

Bash
databricks bundle generate app --existing-app-name "hello_world"
YAML
# 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]
astuce

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

Indicateurs globaux

Exemples

L'exemple suivant génère la configuration à partir d'un ID de tableau de bord existant :

Bash
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.

Bash
databricks bundle generate dashboard --existing-path "/Workspace/Users/someone@example.com/baby_gender_by_county.lvdash.json"
YAML
# 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]
astuce

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.

Indicateurs globaux

Exemples

L'exemple suivant génère une configuration à l'aide d'un ID d'agent Genie existant :

Bash
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 :

Bash
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.

remarque

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 »)

Indicateurs globaux

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.

Bash
databricks bundle generate job --existing-job-id 6565621249 --bind
YAML
# 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]
astuce

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 »)

Indicateurs globaux

Exemples

L'exemple suivant génère une configuration pour un pipeline existant :

Bash
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.

Indicateurs globaux

Exemples

Les exemples de prompts suivants présentent une liste de bundle Template default parmi lesquels choisir :

Bash
databricks bundle init

L’exemple suivant initialise un bundle à l’aide du Template Python default :

Bash
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é :

Bash
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 :

Bash
databricks bundle init https://github.com/my/repository

L'exemple suivant s'initialise avec une Branch spécifique :

Bash
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

Indicateurs globaux

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 :

Bash
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.

Indicateurs globaux

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 :

Bash
databricks bundle plan
Output
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 :

Bash
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:

Bash
databricks bundle run --params message=HelloWorld hello_job
remarque

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 :

Bash
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 :

Bash
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:

Bash
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.

Bash
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ès bundle run pour exécuter des scripts en ligne. Par exemple, la commande suivante affiche le répertoire de travail actuel de l'utilisateur actuel :

    Bash
    databricks bundle run -- python3 -c 'import os; print(os.getcwd())'
  • Vous pouvez également définir un script dans le mappage scripts de votre configuration de bundle, puis utiliser bundle run pour exécuter le script :

    YAML
    scripts:
    my_script:
    content: python3 -c 'import os; print(os.getcwd())'
    Bash
    databricks bundle run my_script

    Pour 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 globaux

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 :

Bash
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:

Bash
databricks bundle run -t dev hello_job

L'exemple suivant annule et redémarre l'exécution d'un job existant :

Bash
databricks bundle run --restart hello_job

L’exemple suivant exécute un pipeline avec une refresh complète :

Bash
databricks bundle run my_pipeline --full-refresh-all

L'exemple suivant exécute une commande dans le contexte du bundle :

Bash
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

Indicateurs globaux

Exemples

L'exemple suivant présente le schéma JSON de la configuration du bundle :

Bash
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 :

Bash
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]
astuce

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

Indicateurs globaux

Exemples

L'exemple suivant affiche un résumé des ressources déployées d'un bundle :

Bash
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.

remarque

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

Indicateurs globaux

Exemples

L'exemple suivant effectue une synchronisation de simulation :

Bash
databricks bundle sync --dry-run

L'exemple suivant surveille les modifications et se synchronise automatiquement :

Bash
databricks bundle sync --watch

L'exemple suivant effectue une synchronisation complète :

Bash
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 :

Output
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!
remarque

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

Indicateurs globaux

Exemples

L'exemple suivant valide la configuration du bundle :

Bash
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"