Référence des infrastructures publiques Databricks (dbutils)
Cette page contient une référence pour les utilitaires Databricks (dbutils). Les infrastructures publiques fournissent des modules avec des commandes qui vous permettent de travailler avec votre environnement Databricks depuis des notebooks. Par exemple, vous pouvez gérer les fichiers et le stockage d'objets, et travailler avec des secrets. dbutils sont disponibles dans les notebooks Python, R et Scala.
dbutils prend uniquement en charge les environnements de compute qui utilisent DBFS.
Modules d'infrastructures publiques
Le tableau suivant répertorie les modules des infrastructures publiques de Databricks, que vous pouvez récupérer à l'aide de dbutils.help().
Module | Description |
|---|---|
Utilitaires pour interagir avec les informations d'identification dans les Notebooks. | |
Utilitaires pour comprendre et interagir avec les datasets (EXPÉRIMENTAL) | |
Utilitaire pour accéder au système de fichiers Databricks (DBFS) | |
Fonctionnalités pour l'exploitation des caractéristiques de Job | |
Obsolète. Outils pour la gestion des bibliothèques de session | |
meta | Utilitaires pour se connecter au compilateur (EXPERIMENTAL) |
Utilitaires de gestion du flux de contrôle des notebooks (EXPÉRIMENTAL) | |
Aperçu | Infrastructures publiques en préversion |
Outils pour exploiter les secrets dans les Notebooks | |
Outils pour paramétrer les Notebook. | |
Utilitaires pour la gestion des versions d'applications |
Aide de la commande
Pour lister les commandes d'un module utilitaire ainsi qu'une courte description de chaque commande, ajoutez .help() après le nom du module utilitaire. L'exemple suivant répertorie les commandes disponibles pour l'utilitaire Notebook :
dbutils.notebook.help()
The notebook module.
exit(value: String): void -> This method lets you exit a notebook with a value
run(path: String, timeoutSeconds: int, arguments: Map): String -> This method runs a notebook and returns its exit value
Pour afficher l'aide d'une commande, exécutez dbutils.<utility-name>.help("<command-name>"). L'exemple suivant affiche l'aide pour la commande de copie des utilitaires du système de fichiers, dbutils.fs.cp:
dbutils.fs.help("cp")
/**
* Copies a file or directory, possibly across FileSystems.
*
* Example: cp("/mnt/my-folder/a", "dbfs:/a/b")
*
* @param from FileSystem URI of the source file or directory
* @param to FileSystem URI of the destination file or directory
* @param recurse if true, all files and directories will be recursively copied
* @return true if all files were successfully copied
*/
cp(from: java.lang.String, to: java.lang.String, recurse: boolean = false): boolean
Utilitaire d'informations d'identification (dbutils.credentials)
Le module utilitaire d'identifiants contient des commandes pour interagir avec les identifiants au sein des Notebooks. Cet utilitaire n'est utilisable que sur les clusters avec transmission des identifiants activée.
Le tableau suivant répertorie les commandes disponibles pour cet utilitaire, que vous pouvez récupérer à l'aide de dbutils.credentials.help().
Commande | Description |
|---|---|
Définit l'ARN du rôle à assumer lors de la recherche d'informations d'identification pour l'authentification auprès de S3. | |
Renvoie un fournisseur d'identifiants de service pour l'identifiant de service donné. | |
Affiche le rôle actuellement défini. | |
Affiche l'ensemble des rôles assumés possibles. |
Commande assumeRole (dbutils.credentials.assumeRole)
assumeRole(role: String): boolean
Définit l'Amazon Resource Name (ARN) du rôle AWS Identity and Access Management (IAM) à endosser lors de la recherche d'informations d'identification pour s'authentifier auprès d'Amazon S3. Après avoir exécuté cette commande, vous pouvez exécuter des commandes d'accès S3, telles que sc.textFile("s3a://my-bucket/my-file.csv") pour accéder à un objet.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.credentials.help("assumeRole")
Exemple
- Python
- R
- Scala
dbutils.credentials.assumeRole("arn:aws:iam::123456789012:roles/my-role")
# Out[1]: True
dbutils.credentials.assumeRole("arn:aws:iam::123456789012:roles/my-role")
# TRUE
dbutils.credentials.assumeRole("arn:aws:iam::123456789012:roles/my-role")
// res0: Boolean = true
commande getServiceCredentialsProvider (dbutils.credentials.getServiceCredentialsProvider)
getServiceCredentialsProvider(credentialName: String): Object
Renvoie un fournisseur d'identifiants de service pour l'identifiant de service donné. Le type d'objet renvoyé est spécifique au fournisseur de cloud.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.credentials.help("getServiceCredentialsProvider")
Exemple
- Python
- R
- Scala
dbutils.credentials.getServiceCredentialsProvider("my-credential")
Cet utilitaire n'est pas pris en charge dans R.
dbutils.credentials.getServiceCredentialsProvider("my-credential")
Commande showCurrentRole (dbutils.credentials.showCurrentRole)
showCurrentRole: List
Liste le rôle AWS Identity and Access Management (IAM) actuellement défini.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.credentials.help("showCurrentRole")
Exemple
- Python
- R
- Scala
dbutils.credentials.showCurrentRole()
# Out[1]: ['arn:aws:iam::123456789012:role/my-role-a']
dbutils.credentials.showCurrentRole()
# [[1]]
# [1] "arn:aws:iam::123456789012:role/my-role-a"
dbutils.credentials.showCurrentRole()
// res0: java.util.List[String] = [arn:aws:iam::123456789012:role/my-role-a]
commande showRoles (dbutils.credentials.showRoles)
showRoles: List
Répertorie l'ensemble des rôles AWS Identity and Access Management (IAM) pouvant être assumés.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.credentials.help("showRoles")
Exemple
- Python
- R
- Scala
dbutils.credentials.showRoles()
# Out[1]: ['arn:aws:iam::123456789012:role/my-role-a', 'arn:aws:iam::123456789012:role/my-role-b']
dbutils.credentials.showRoles()
# [[1]]
# [1] "arn:aws:iam::123456789012:role/my-role-a"
#
# [[2]]
# [1] "arn:aws:iam::123456789012:role/my-role-b"
dbutils.credentials.showRoles()
// res0: java.util.List[String] = [arn:aws:iam::123456789012:role/my-role-a, arn:aws:iam::123456789012:role/my-role-b]
Utilitaire de données (dbutils.data)
Aperçu
Cette fonctionnalité est en aperçu public.
Disponible dans Databricks Runtime 9.0 et versions ultérieures.
Le module d'utilitaires de données contient des commandes pour comprendre et interagir avec les datasets.
Le tableau suivant répertorie les commandes disponibles pour cet utilitaire, que vous pouvez récupérer à l'aide de dbutils.data.help().
Commande | Description |
|---|---|
Résumez un DataFrame Spark et visualisez les statistiques pour obtenir des insights rapides |
commande de résumé (dbutils.data.summarize)
Cette fonctionnalité est en aperçu public.
summarize(df: Object, precise: boolean): void
Calcule et affiche les statistiques récapitulatives d'un Apache Spark DataFrame ou d'un pandas DataFrame. Cette commande est disponible pour Python, Scala et R.
Cette commande analyse le contenu complet du DataFrame. L'exécution de cette commande pour de très grands DataFrames peut être très coûteuse.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.data.help("summarize")
Dans Databricks Runtime 10.4 LTS et versions ultérieures, vous pouvez utiliser le paramètre precise supplémentaire pour ajuster la précision des statistiques calculées.
-
Lorsque
preciseest défini sur false (the default), certaines statistiques renvoyées incluent des approximations pour réduire le temps d'exécution.- Le nombre de valeurs distinctes pour les colonnes catégorielles peut présenter environ 5 % d'erreur relative pour les colonnes à cardinalité élevée.
- Le décompte des valeurs fréquentes peut présenter une erreur allant jusqu'à 0,01 % lorsque le nombre de valeurs distinctes est supérieur à 10 000.
- Les histogrammes et les estimations de centiles peuvent présenter une erreur allant jusqu'à 0,01 % par rapport au nombre total de lignes.
-
Lorsque
preciseest défini sur true, les statistiques sont calculées avec une plus grande précision. Toutes les statistiques, à l'exception des histogrammes et des percentiles pour les colonnes numériques, sont désormais exactes.- Les histogrammes et les estimations de centile peuvent présenter une erreur allant jusqu'à 0,0001 % par rapport au nombre total de lignes.
L'info-bulle en haut de la sortie du résumé des données indique le mode de l'exécution actuelle.
Exemple
Cet exemple affiche des statistiques récapitulatives pour un DataFrame Apache Spark avec des approximations activées par default. Pour voir les résultats, exécutez cette commande dans un Notebook. Cet exemple est basé sur des Sample datasets.
- Python
- R
- Scala
df = spark.read.format('csv').load(
'/databricks-datasets/Rdatasets/data-001/csv/ggplot2/diamonds.csv',
header=True,
inferSchema=True
)
dbutils.data.summarize(df)
df <- read.df("/databricks-datasets/Rdatasets/data-001/csv/ggplot2/diamonds.csv", source = "csv", header="true", inferSchema = "true")
dbutils.data.summarize(df)
val df = spark.read.format("csv")
.option("inferSchema", "true")
.option("header", "true")
.load("/databricks-datasets/Rdatasets/data-001/csv/ggplot2/diamonds.csv")
dbutils.data.summarize(df)
La visualisation utilise la notation SI pour rendre de manière concise les valeurs numériques inférieures à 0,01 ou supérieures à 10 000. Par exemple, la valeur numérique 1.25e-15 sera affichée comme 1.25f. Une exception : la visualisation utilise « B » pour 1.0e9 (giga) au lieu de « G ».
Utilitaire de système de fichiers (dbutils.fs)
Le module utilitaire du système de fichiers contient des commandes pour accéder à Qu’est-ce que DBFS ?. Pour accéder aux fichiers Workspace, utilisez des commandes Shell telles que %sh ls, car il existe des limitations lors de l'utilisation des commandes dbutils.fs avec les fichiers Workspace.
L'implémentation Python de toutes les méthodes dbutils.fs utilise snake_case plutôt que camelCase pour le formatage des mots-clés.
Par exemple, dbutils.fs.help() affiche l'option extraConfigs pour dbutils.fs.mount(). Cependant, en Python, vous utiliseriez le mot-clé extra_configs.
Le tableau suivant répertorie les commandes disponibles pour cet utilitaire, que vous pouvez récupérer à l'aide de dbutils.fs.help().
Commande | Description |
|---|---|
Copie un fichier ou un répertoire, éventuellement à travers des systèmes de fichiers | |
Renvoie jusqu’aux 'max_bytes' premiers octets du fichier donné en tant que String encodée en UTF-8. | |
Liste le contenu d'un répertoire | |
Crée le répertoire spécifié s'il n'existe pas, en créant également les répertoires parents nécessaires | |
Monte le répertoire source donné dans DBFS au point de montage donné | |
Affiche des informations sur ce qui est monté dans DBFS | |
Déplace un fichier ou un répertoire, éventuellement entre les systèmes de fichiers | |
Écrit la chaîne donnée dans un fichier, encodée en UTF-8 | |
Force toutes les machines de ce cluster à refresh leur cache de montage, garantissant ainsi qu'elles reçoivent les informations les plus récentes. | |
Supprime un fichier ou un répertoire | |
Supprime un point de montage DBFS | |
Similaire à mount(), mais met à jour un point de montage existant au lieu d’en créer un nouveau |
Dans les Notebooks, vous pouvez utiliser la commande magique %fs pour accéder à DBFS. Par exemple, %fs ls /Volumes/main/default/my-volume/ est identique à dbutils.fs.ls("/Volumes/main/default/my-volume/"). Voir les commandes magiques.
commande cp (dbutils.fs.cp)
cp(from: String, to: String, recurse: boolean = false): boolean
Copie un fichier ou un répertoire, éventuellement entre des systèmes de fichiers.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.fs.help("cp")
Exemple
Cet exemple copie le fichier nommé data.csv de /Volumes/main/default/my-volume/ vers new-data.csv dans le même volume.
- Python
- R
- Scala
dbutils.fs.cp("/Volumes/main/default/my-volume/data.csv", "/Volumes/main/default/my-volume/new-data.csv")
# Out[4]: True
dbutils.fs.cp("/Volumes/main/default/my-volume/data.csv", "/Volumes/main/default/my-volume/new-data.csv")
# [1] TRUE
dbutils.fs.cp("/Volumes/main/default/my-volume/data.csv", "/Volumes/main/default/my-volume/new-data.csv")
// res3: Boolean = true
commande head (dbutils.fs.head)
head(file: String, max_bytes: int = 65536): String
Renvoie jusqu'au nombre maximal d'octets spécifié dans le fichier donné. Les octets sont renvoyés en tant que chaîne encodée UTF-8.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.fs.help("head")
Exemple
Cet exemple affiche les 25 premiers octets du fichier data.csv situé dans /Volumes/main/default/my-volume/.
- Python
- R
- Scala
dbutils.fs.head("/Volumes/main/default/my-volume/data.csv", 25)
# [Truncated to first 25 bytes]
# Out[12]: 'Year,First Name,County,Se'
dbutils.fs.head("/Volumes/main/default/my-volume/data.csv", 25)
# [1] "Year,First Name,County,Se"
dbutils.fs.head("/Volumes/main/default/my-volume/data.csv", 25)
// [Truncated to first 25 bytes]
// res4: String =
// "Year,First Name,County,Se"
commande ls (dbutils.fs.ls)
ls(dir: String): Seq
Liste le contenu d'un répertoire.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.fs.help("ls")
Exemple
Cet exemple affiche des informations sur le contenu de /Volumes/main/default/my-volume/. Le champ modificationTime est disponible dans Databricks Runtime 10.4 LTS et versions ultérieures. En R, modificationTime est retourné sous forme de chaîne.
- Python
- R
- Scala
dbutils.fs.ls("/Volumes/main/default/my-volume/")
# Out[13]: [FileInfo(path='dbfs:/Volumes/main/default/my-volume/data.csv', name='data.csv', size=2258987, modificationTime=1711357839000)]
dbutils.fs.ls("/Volumes/main/default/my-volume/")
# For prettier results from dbutils.fs.ls(<dir>), please use `%fs ls <dir>`
# [[1]]
# [[1]]$path
# [1] "/Volumes/main/default/my-volume/data.csv"
# [[1]]$name
# [1] "data.csv"
# [[1]]$size
# [1] 2258987
# [[1]]$isDir
# [1] FALSE
# [[1]]$isFile
# [1] TRUE
# [[1]]$modificationTime
# [1] "1711357839000"
dbutils.fs.ls("/tmp")
// res6: Seq[com.databricks.backend.daemon.dbutils.FileInfo] = WrappedArray(FileInfo(/Volumes/main/default/my-volume/data.csv, 2258987, 1711357839000))
Commande mkdirs (dbutils.fs.mkdirs)
mkdirs(dir: String): boolean
Crée le répertoire donné s’il n’existe pas. Crée également tous les répertoires parents nécessaires.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.fs.help("mkdirs")
Exemple
Cet exemple crée le répertoire my-data dans /Volumes/main/default/my-volume/.
- Python
- R
- Scala
dbutils.fs.mkdirs("/Volumes/main/default/my-volume/my-data")
# Out[15]: True
dbutils.fs.mkdirs("/Volumes/main/default/my-volume/my-data")
# [1] TRUE
dbutils.fs.mkdirs("/Volumes/main/default/my-volume/my-data")
// res7: Boolean = true
commande de montage (dbutils.fs.mount)
mount(source: String, mountPoint: String, encryptionType: String = "",
owner: String = null, extraConfigs: Map = Map.empty[String, String]): boolean
Monte le répertoire source spécifié dans DBFS au point de montage spécifié.
:::note Compatibilité Serverless
Databricks recommande de s’éloigner de dbutils.fs.mount, car il n’est pas compatible avec l’architecture de compute serverless de Databricks. Utilisez un emplacement externe Unity Catalog avec des volumes externes à la place.
:::
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.fs.help("mount")
Exemple
- Python
- Scala
aws_bucket_name = "my-bucket"
mount_name = "s3-my-bucket"
dbutils.fs.mount("s3a://%s" % aws_bucket_name, "/mnt/%s" % mount_name)
val AwsBucketName = "my-bucket"
val MountName = "s3-my-bucket"
dbutils.fs.mount(s"s3a://$AwsBucketName", s"/mnt/$MountName")
Pour d’autres exemples de code, consultez Connecter à Amazon S3.
commande mounts (dbutils.fs.mounts)
mounts: Seq
Affiche les informations sur ce qui est actuellement monté dans DBFS.
:::note Compatibilité Serverless
Databricks recommande de ne plus utiliser dbutils.fs.mounts, car il n'est pas compatible avec l'architecture de compute serverless de Databricks.
:::
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.fs.help("mounts")
Exemple
Appelez dbutils.fs.refreshMounts() sur tous les autres clusters en cours d'exécution pour propager le nouveau montage. Voir commande refreshMounts (dbutils.fs.refreshMounts).
- Python
- Scala
dbutils.fs.mounts()
# Out[11]: [MountInfo(mountPoint='/mnt/databricks-results', source='databricks-results', encryptionType='sse-s3')]
dbutils.fs.mounts()
Pour d’autres exemples de code, consultez Connecter à Amazon S3.
commande mv (dbutils.fs.mv)
mv(from: String, to: String, recurse: boolean = false): boolean
Déplace un fichier ou un répertoire, éventuellement entre systèmes de fichiers. Un déplacement est une copie suivie d'une suppression, même pour les déplacements au sein des systèmes de fichiers.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.fs.help("mv")
Exemple
Cet exemple déplace le fichier rows.csv de /Volumes/main/default/my-volume/ vers /Volumes/main/default/my-volume/my-data/.
- Python
- R
- Scala
dbutils.fs.mv("/Volumes/main/default/my-volume/rows.csv", "/Volumes/main/default/my-volume/my-data/")
# Out[2]: True
dbutils.fs.mv("/Volumes/main/default/my-volume/rows.csv", "/Volumes/main/default/my-volume/my-data/")
# [1] TRUE
dbutils.fs.mv("/Volumes/main/default/my-volume/rows.csv", "/Volumes/main/default/my-volume/my-data/")
// res1: Boolean = true
commande put (dbutils.fs.put)
put(file: String, contents: String, overwrite: boolean = false): boolean
Écrit la chaîne spécifiée dans un fichier. La chaîne est encodée en UTF-8.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.fs.help("put")
Exemple
Cet exemple écrit la chaîne Hello, Databricks! dans un fichier nommé hello.txt dans /Volumes/main/default/my-volume/. Si le fichier existe, il sera écrasé.
- Python
- R
- Scala
dbutils.fs.put("/Volumes/main/default/my-volume/hello.txt", "Hello, Databricks!", True)
# Wrote 2258987 bytes.
# Out[6]: True
dbutils.fs.put("/Volumes/main/default/my-volume/hello.txt", "Hello, Databricks!", TRUE)
# [1] TRUE
dbutils.fs.put("/Volumes/main/default/my-volume/hello.txt", "Hello, Databricks!", true)
// Wrote 2258987 bytes.
// res2: Boolean = true
commande refreshMounts (dbutils.fs.refreshMounts)
refreshMounts: boolean
Force toutes les machines du cluster à refresh leur cache de montage, garantissant ainsi qu'elles reçoivent les informations les plus récentes.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.fs.help("refreshMounts")
Exemple
- Python
- Scala
dbutils.fs.refreshMounts()
dbutils.fs.refreshMounts()
Pour d’autres exemples de code, consultez Connecter à Amazon S3.
commande rm (dbutils.fs.rm)
rm(dir: String, recurse: boolean = false): boolean
Supprime un fichier ou un répertoire et, éventuellement, tout son contenu. Si un fichier est spécifié, le paramètre recurse est ignoré. Si un répertoire est spécifié, une erreur se produit lorsque recurse est désactivé et que le répertoire n'est pas vide.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.fs.help("rm")
Exemple
Cet exemple supprime l'intégralité du répertoire /Volumes/main/default/my-volume/my-data/, y compris son contenu.
- Python
- R
- Scala
dbutils.fs.rm("/Volumes/main/default/my-volume/my-data/", True)
# Out[8]: True
dbutils.fs.rm("/Volumes/main/default/my-volume/my-data/", TRUE)
# [1] TRUE
dbutils.fs.rm("/Volumes/main/default/my-volume/my-data/", true)
// res6: Boolean = true
commande de démontage (dbutils.fs.unmount)
unmount(mountPoint: String): boolean
Supprime un point de montage DBFS.
Pour éviter les erreurs, ne modifiez jamais un point de montage pendant que d'autres Jobs le lisent ou l'écrivent. Après avoir modifié un point de montage, exécutez toujours dbutils.fs.refreshMounts() sur tous les autres clusters en cours d'exécution pour propager toute mise à jour de point de montage. Voir la commande refreshMounts (dbutils.fs.refreshMounts).
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.fs.help("unmount")
Exemple
dbutils.fs.unmount("/mnt/<mount-name>")
Pour d’autres exemples de code, consultez Connecter à Amazon S3.
commande updateMount (dbutils.fs.updateMount)
updateMount(source: String, mountPoint: String, encryptionType: String = "",
owner: String = null, extraConfigs: Map = Map.empty[String, String]): boolean
Similaire à la commande dbutils.fs.mount, mais met à jour un point de montage existant au lieu d'en créer un nouveau. Renvoie une erreur si le point de montage n'est pas présent.
Pour éviter les erreurs, ne modifiez jamais un point de montage pendant que d'autres Jobs le lisent ou l'écrivent. Après avoir modifié un point de montage, exécutez toujours dbutils.fs.refreshMounts() sur tous les autres clusters en cours d'exécution pour propager toute mise à jour de point de montage. Voir la commande refreshMounts (dbutils.fs.refreshMounts).
Cette commande est disponible dans Databricks Runtime 10.4 LTS et versions ultérieures.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.fs.help("updateMount")
Exemple
- Python
- Scala
aws_bucket_name = "my-bucket"
mount_name = "s3-my-bucket"
dbutils.fs.updateMount("s3a://%s" % aws_bucket_name, "/mnt/%s" % mount_name)
val AwsBucketName = "my-bucket"
val MountName = "s3-my-bucket"
dbutils.fs.updateMount(s"s3a://$AwsBucketName", s"/mnt/$MountName")
Utilitaire Jobs (dbutils.jobs)
Le module d'utilitaires des Jobs contient les commandes de fonctionnalités des Jobs.
Cet utilitaire est disponible uniquement pour Python.
Le tableau suivant répertorie les modules disponibles pour cet utilitaire, que vous pouvez récupérer à l'aide de dbutils.jobs.help().
Sous-module | Description |
|---|---|
Fournit des infrastructures publiques pour tirer parti des valeurs de tâches de Job |
Sous-utilitaire taskValues (dbutils.jobs.taskValues)
Cette sous-utilité est disponible uniquement pour Python.
Fournit des commandes pour exploiter les valeurs de tâche de Job.
Utilisez ce sous-utilitaire pour définir et obtenir des valeurs arbitraires lors de l'exécution d'un job. Ces valeurs sont appelées valeurs de tâche . N'importe quelle tâche peut obtenir les valeurs définies par les tâches en amont et définir des valeurs à utiliser par les tâches en aval.
Chaque valeur de tâche possède une clé unique au sein de la même tâche. Cette clé unique est connue comme la clé de la valeur de la tâche. Une valeur de tâche est accessible avec le nom de la tâche et la clé de la valeur de la tâche. Vous pouvez l'utiliser pour transmettre des informations en aval de tâche en tâche au sein de la même exécution de Job. Par exemple, vous pouvez transmettre des identifiants ou des métriques, telles que des informations sur l'évaluation d'un Modèle de machine learning, entre différentes tâches au sein d'une exécution de Job.
Le tableau suivant répertorie les commandes disponibles pour ce sous-utilitaire, que vous pouvez récupérer en utilisant dbutils.jobs.taskValues.help().
obtenir la commande (dbutils.jobs.taskValues.get)
Cette commande est disponible uniquement pour Python.
Sur Databricks Runtime 10.4 et versions antérieures, si get ne trouve pas la tâche, une Py4JJavaError est levée au lieu d'un ValueError.
get(taskKey: String, key: String, default: int, debugValue: int): Seq
Obtient le contenu de la valeur de tâche spécifiée pour la tâche spécifiée dans l'exécution de Job actuelle.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.jobs.taskValues.help("get")
Exemple
Par exemple :
dbutils.jobs.taskValues.get(taskKey = "my-task", \
key = "my-key", \
default = 7, \
debugValue = 42)
Dans l'exemple précédent :
taskKeyest le nom de la tâche qui définit la valeur de la tâche. Si la commande ne trouve pas cette tâche, uneValueErrorest levée.keyest le nom de la clé de la valeur de tâche que vous avez définie avec la commande set (dbutils.jobs.taskValues.set). Si la commande ne trouve pas la clé de cette valeur de tâche, uneValueErrorest levée (sauf sidefaultest spécifié).defaultest une valeur facultative qui est retournée sikeyest introuvable.defaultne peut pas êtreNone.debugValueest une valeur facultative qui est renvoyée si vous essayez d'obtenir la valeur de la tâche à partir d'un Notebook qui s'exécute en dehors d'un job. Cela peut être utile pendant le debugging lorsque vous souhaitez exécuter votre Notebook manuellement et retourner une valeur au lieu de lever uneTypeErrorpar default.debugValuene peut pas êtreNone.
Si vous tentez d'obtenir une valeur de tâche à partir d'un Notebook qui s'exécute en dehors d'un Job, cette commande déclenche une TypeError par default. Toutefois, si l'argument debugValue est spécifié dans la commande, la valeur de debugValue est renvoyée au lieu de générer une TypeError.
commande set (dbutils.jobs.taskValues.set)
Cette commande est disponible uniquement pour Python.
set(key: String, value: String): boolean
Définit ou met à jour une valeur de tâche. Vous pouvez définir jusqu'à 250 valeurs de tâche pour une exécution de job.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.jobs.taskValues.help("set")
Exemple
Voici quelques exemples :
dbutils.jobs.taskValues.set(key = "my-key", \
value = 5)
dbutils.jobs.taskValues.set(key = "my-other-key", \
value = "my other value")
Dans les exemples précédents :
keyest la clé de la valeur de tâche. Cette clé doit être unique pour la tâche. Autrement dit, si deux tâches différentes définissent chacune une valeur de tâche avec la cléK, il s'agit de deux valeurs de tâche différentes qui ont la même cléK.valueest la valeur de la clé de cette valeur de tâche. Cette commande doit pouvoir représenter la valeur en interne au format JSON. La taille de la représentation JSON de la valeur ne peut pas dépasser 48 KiB.
Si vous essayez de définir une valeur de tâche à partir d'un notebook qui s'exécute en dehors d'un job, cette commande ne fait rien.
utilitaire de bibliothèque (dbutils.library)
La plupart des méthodes du module dbutils.library sont obsolètes. Voir Utilitaire de bibliothèque (dbutils.library) (hérité).
Vous pourriez avoir besoin de redémarrer par programmation le processus Python sur Databricks pour vous assurer que les bibliothèques installées localement ou mises à jour fonctionnent correctement dans le noyau Python pour votre SparkSession actuelle. Pour ce faire, exécutez la commande dbutils.library.restartPython. Consultez Redémarrer le processus Python sur Databricks.
Utilitaire Notebook (dbutils.notebook)
Le module utilitaire Notebook contient des commandes pour enchaîner les Notebooks et agir sur leurs résultats. Voir Orchestrer les notebooks Databricks et modulariser le code.
Le tableau suivant répertorie les commandes disponibles pour cet utilitaire, que vous pouvez récupérer à l'aide de dbutils.notebook.help().
commande de sortie (dbutils.notebook.exit)
exit(value: String): void
Quitte un notebook avec une valeur.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.notebook.help("exit")
Exemple
Cet exemple quitte le notebook avec la valeur Exiting from My Other Notebook.
- Python
- R
- Scala
dbutils.notebook.exit("Exiting from My Other Notebook")
# Notebook exited: Exiting from My Other Notebook
dbutils.notebook.exit("Exiting from My Other Notebook")
# Notebook exited: Exiting from My Other Notebook
dbutils.notebook.exit("Exiting from My Other Notebook")
// Notebook exited: Exiting from My Other Notebook
Si l'exécution comporte une query avec streaming structuré s'exécutant en arrière-plan, l'appel de dbutils.notebook.exit() ne met pas fin à l'exécution. L'exécution continuera de s'exécuter tant que la query s'exécutera en arrière-plan. Vous pouvez arrêter la query exécutée en arrière-plan en cliquant sur Annuler dans la cellule de la query ou en exécutant query.stop(). Lorsque la query s'arrête, vous pouvez terminer l'exécution avec dbutils.notebook.exit().
exécuter la commande (dbutils.notebook.run)
run(path: String, timeoutSeconds: int, arguments: Map): String
Exécute un notebook et renvoie sa valeur de sortie. Le notebook s'exécutera dans le cluster actuel.
La longueur maximale de la valeur de chaîne renvoyée par la commande run est de 5 Mo. Consultez Obtenir la sortie d'une seule exécution (GET /jobs/runs/get-output).
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.notebook.help("run")
Exemple
Cet exemple exécute un Notebook nommé My Other Notebook au même emplacement que le Notebook appelant. Le Notebook appelé se termine par la ligne de code dbutils.notebook.exit("Exiting from My Other Notebook"). Si le notebook appelé ne termine pas son exécution dans les 60 secondes, une exception est levée.
- Python
- Scala
dbutils.notebook.run("My Other Notebook", 60)
# Out[14]: 'Exiting from My Other Notebook'
dbutils.notebook.run("My Other Notebook", 60)
// res2: String = Exiting from My Other Notebook
Utilitaire Secrets (dbutils.secrets)
Le module utilitaire de gestion des secrets contient des commandes permettant de stocker et d'accéder aux informations d'identification sensibles sans les rendre visibles dans les notebooks. Consultez Gestion des secrets et Étape 3 : Utiliser les secrets dans un Notebook.
Le tableau suivant répertorie les commandes disponibles pour cet utilitaire, que vous pouvez récupérer à l'aide de dbutils.secrets.help().
Commande | Description |
|---|---|
Obtient la représentation sous forme de chaîne d'une valeur secrète avec portée et clé. | |
Obtient la représentation en octets d'une valeur de secret avec un périmètre et une clé. | |
Répertorie les métadonnées secrètes pour les secrets au sein d'un périmètre secret. | |
Lister les Secret Scope |
obtenir la commande (dbutils.secrets.get)
get(scope: String, key: String): String
Obtient la représentation textuelle d'une valeur secrète pour le Secret Scope et la clé spécifiés.
Les administrateurs, les créateurs de secrets et les utilisateurs ayant obtenu une autorisation peuvent lire les secrets Databricks. Bien que Databricks s'efforce de masquer les valeurs secrètes qui pourraient être affichées dans les blocs-notes, il n'est pas possible d'empêcher ces utilisateurs de lire les secrets. Pour plus d'informations, veuillez consulter la rédaction des secrets.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.secrets.help("get")
Exemple
Cet exemple obtient la représentation de chaîne de caractères de la valeur secrète pour le périmètre nommé my-scope et la clé nommée my-key.
- Python
- R
- Scala
dbutils.secrets.get(scope="my-scope", key="my-key")
# Out[14]: '[REDACTED]'
dbutils.secrets.get(scope="my-scope", key="my-key")
# [1] "[REDACTED]"
dbutils.secrets.get(scope="my-scope", key="my-key")
// res0: String = [REDACTED]
Commande getBytes (dbutils.secrets.getBytes)
getBytes(scope: String, key: String): byte[]
Obtient la représentation en octets d'une valeur secrète pour le périmètre et la clé spécifiés.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.secrets.help("getBytes")
Exemple
Cet exemple obtient la représentation octet de la valeur secrète (dans cet exemple, a1!b2@c3#) pour l'étendue nommée my-scope et la clé nommée my-key.
- Python
- R
- Scala
dbutils.secrets.getBytes(scope="my-scope", key="my-key")
# Out[1]: b'a1!b2@c3#'
dbutils.secrets.getBytes(scope="my-scope", key="my-key")
# [1] 61 31 21 62 32 40 63 33 23
dbutils.secrets.getBytes(scope="my-scope", key="my-key")
// res1: Array[Byte] = Array(97, 49, 33, 98, 50, 64, 99, 51, 35)
commande de liste (dbutils.secrets.list)
list(scope: String): Seq
Répertorie les métadonnées des secrets dans le périmètre spécifié.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.secrets.help("list")
Exemple
Cet exemple répertorie les métadonnées des secrets dans le périmètre nommé my-scope.
- Python
- R
- Scala
dbutils.secrets.list("my-scope")
# Out[10]: [SecretMetadata(key='my-key')]
dbutils.secrets.list("my-scope")
# [[1]]
# [[1]]$key
# [1] "my-key"
dbutils.secrets.list("my-scope")
// res2: Seq[com.databricks.dbutils_v1.SecretMetadata] = ArrayBuffer(SecretMetadata(my-key))
Commande listScopes (dbutils.secrets.listScopes)
listScopes: Seq
Liste les portées disponibles.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.secrets.help("listScopes")
Exemple
Cet exemple répertorie les étendues disponibles.
- Python
- R
- Scala
dbutils.secrets.listScopes()
# Out[14]: [SecretScope(name='my-scope')]
dbutils.secrets.listScopes()
# [[1]]
# [[1]]$name
# [1] "my-scope"
dbutils.secrets.listScopes()
// res3: Seq[com.databricks.dbutils_v1.SecretScope] = ArrayBuffer(SecretScope(my-scope))
Utilitaire de widgets (dbutils.widgets)
Le module d'utilitaires de widgets contient des commandes pour paramétrer les Notebooks. Consulter les widgets Databricks.
Le tableau suivant répertorie les commandes disponibles pour cet utilitaire, que vous pouvez récupérer à l'aide de dbutils.widgets.help().
Commande | Description |
|---|---|
Crée un widget d'entrée de zone de liste déroulante avec un nom donné, une valeur default et des choix. | |
Crée un widget d'entrée déroulant avec un nom donné, une valeur default et des choix | |
Récupère la valeur actuelle d'un widget d'entrée | |
Récupère une carte de tous les noms de widgets et de leurs valeurs | |
Obsolète. Équivalent à obtenir | |
Crée un widget d'entrée à sélection multiple avec un nom donné, une valeur default et des choix | |
Supprime un widget de saisie du Notebook | |
Supprime tous les widgets du notebook. | |
Crée un widget de saisie de texte avec un nom donné et une valeur default |
commande de boîte combinée (dbutils.widgets.combobox)
combobox(name: String, defaultValue: String, choices: Seq, label: String): void
Crée et affiche un widget de type liste déroulante avec le nom programmatique spécifié, la valeur par default, les choix et un libellé facultatif.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.widgets.help("combobox")
Exemple
Cet exemple crée et affiche un widget de zone de liste déroulante avec le nom programmatique fruits_combobox. Il offre les choix apple, banana, coconut et dragon fruit et est défini sur la valeur initiale de banana. Ce widget de boîte combinée comporte une étiquette d'accompagnement Fruits. Cet exemple se termine en affichant la valeur initiale du widget de zone de liste déroulante, banana.
- Python
- R
- Scala
- SQL
dbutils.widgets.combobox(
name='fruits_combobox',
defaultValue='banana',
choices=['apple', 'banana', 'coconut', 'dragon fruit'],
label='Fruits'
)
print(dbutils.widgets.get("fruits_combobox"))
# banana
dbutils.widgets.combobox(
name='fruits_combobox',
defaultValue='banana',
choices=list('apple', 'banana', 'coconut', 'dragon fruit'),
label='Fruits'
)
print(dbutils.widgets.get("fruits_combobox"))
# [1] "banana"
dbutils.widgets.combobox(
"fruits_combobox",
"banana",
Array("apple", "banana", "coconut", "dragon fruit"),
"Fruits"
)
print(dbutils.widgets.get("fruits_combobox"))
// banana
CREATE WIDGET COMBOBOX fruits_combobox DEFAULT "banana" CHOICES SELECT * FROM (VALUES ("apple"), ("banana"), ("coconut"), ("dragon fruit"))
SELECT :fruits_combobox
-- banana
commande de menu déroulant (dbutils.widgets.dropdown)
dropdown(name: String, defaultValue: String, choices: Seq, label: String): void
Crée et affiche un widget déroulant avec le nom programmatique spécifié, la valeur default, les choix et l'étiquette facultative.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.widgets.help("dropdown")
Exemple
Cet exemple crée et affiche un widget de liste déroulante avec le nom programmatique toys_dropdown. Il offre les choix alphabet blocks, basketball, cape et doll et est défini sur la valeur initiale de basketball. Ce widget de liste déroulante a un libellé associé Toys. Cet exemple se termine en affichant la valeur initiale du widget de liste déroulante, basketball.
- Python
- R
- Scala
- SQL
dbutils.widgets.dropdown(
name='toys_dropdown',
defaultValue='basketball',
choices=['alphabet blocks', 'basketball', 'cape', 'doll'],
label='Toys'
)
print(dbutils.widgets.get("toys_dropdown"))
# basketball
dbutils.widgets.dropdown(
name='toys_dropdown',
defaultValue='basketball',
choices=list('alphabet blocks', 'basketball', 'cape', 'doll'),
label='Toys'
)
print(dbutils.widgets.get("toys_dropdown"))
# [1] "basketball"
dbutils.widgets.dropdown(
"toys_dropdown",
"basketball",
Array("alphabet blocks", "basketball", "cape", "doll"),
"Toys"
)
print(dbutils.widgets.get("toys_dropdown"))
// basketball
CREATE WIDGET DROPDOWN toys_dropdown DEFAULT "basketball" CHOICES SELECT * FROM (VALUES ("alphabet blocks"), ("basketball"), ("cape"), ("doll"))
SELECT :toys_dropdown
-- basketball
commande get (dbutils.widgets.get)
get(name: String): String
Obtient la valeur actuelle du widget avec le nom programmatique spécifié. Ce nom programmatique peut être :
- Le nom d'un widget personnalisé dans le Notebook, par exemple,
fruits_comboboxoutoys_dropdown. - Le nom d'un parameter personnalisé transmis au Notebook dans le cadre d'une tâche de Notebook, par exemple
nameouage. Pour plus d'information, consultez la couverture des parameters pour les tâches de Notebook dans l'interface utilisateur des Jobs ou le champnotebook_paramsdans l'opération Trigger une nouvelle exécution de Job (POST /jobs/run-now) dans l'API Jobs.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.widgets.help("get")
Exemple
Cet exemple obtient la valeur du widget dont le nom programmatique est fruits_combobox.
- Python
- R
- Scala
- SQL
dbutils.widgets.get('fruits_combobox')
# banana
dbutils.widgets.get('fruits_combobox')
# [1] "banana"
dbutils.widgets.get("fruits_combobox")
// res6: String = banana
SELECT :fruits_combobox
-- banana
Cet exemple obtient la valeur du paramètre de tâche Notebook qui a le nom programmatique age. Ce paramètre a été défini sur 35 lors de l'exécution de la tâche de Notebook associée.
- Python
- R
- Scala
- SQL
dbutils.widgets.get('age')
# 35
dbutils.widgets.get('age')
# [1] "35"
dbutils.widgets.get("age")
// res6: String = 35
SELECT :age
-- 35
commande getAll (dbutils.widgets.getAll)
getAll: map
Obtient un mappage de tous les noms et valeurs de widget actuels. Ceci peut être particulièrement utile pour transférer rapidement des valeurs de widget à une query spark.sql().
Cette commande est disponible dans Databricks Runtime 13.3 LTS et versions ultérieures. Il n'est disponible que pour Python et Scala.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.widgets.help("getAll")
Exemple
Cet exemple obtient la map des valeurs de widget et la transmet en tant qu'arguments de parameter dans une query Spark SQL.
- Python
- Scala
df = spark.sql("SELECT * FROM table where col1 = :param", dbutils.widgets.getAll())
df.show()
# Query output
val df = spark.sql("SELECT * FROM table where col1 = :param", dbutils.widgets.getAll())
df.show()
// res6: Query output
Commande getArgument (dbutils.widgets.getArgument)
getArgument(name: String, optional: String): String
Obtient la valeur actuelle du widget avec le nom programmatique spécifié. Si le widget n'existe pas, un message facultatif peut être renvoyé.
Cette commande est obsolète. Utilisez dbutils.widgets.get à la place.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.widgets.help("getArgument")
Exemple
Cet exemple obtient la valeur du widget dont le nom programmatique est fruits_combobox. Si ce widget n'existe pas, le message Error: Cannot find fruits combobox est renvoyé.
- Python
- R
- Scala
dbutils.widgets.getArgument('fruits_combobox', 'Error: Cannot find fruits combobox')
# Deprecation warning: Use dbutils.widgets.text() or dbutils.widgets.dropdown() to create a widget and dbutils.widgets.get() to get its bound value.
# Out[3]: 'banana'
dbutils.widgets.getArgument('fruits_combobox', 'Error: Cannot find fruits combobox')
# Deprecation warning: Use dbutils.widgets.text() or dbutils.widgets.dropdown() to create a widget and dbutils.widgets.get() to get its bound value.
# [1] "banana"
dbutils.widgets.getArgument("fruits_combobox", "Error: Cannot find fruits combobox")
// command-1234567890123456:1: warning: method getArgument in trait WidgetsUtils is deprecated: Use dbutils.widgets.text() or dbutils.widgets.dropdown() to create a widget and dbutils.widgets.get() to get its bound value.
// dbutils.widgets.getArgument("fruits_combobox", "Error: Cannot find fruits combobox")
// ^
// res7: String = banana
commande de sélection multiple (dbutils.widgets.multiselect)
multiselect(name: String, defaultValue: String, choices: Seq, label: String): void
Crée et affiche un widget de sélection multiple avec le nom programmatique spécifié, la valeur default, les choix et une étiquette facultative.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.widgets.help("multiselect")
Exemple
Cet exemple crée et affiche un widget de sélection multiple portant le nom programmatique days_multiselect. Il offre les choix Monday à Sunday et est défini sur la valeur initiale de Tuesday. Ce widget de sélection multiple a un libellé associé Days of the Week. Cet exemple se termine par l'impression de la valeur initiale du widget de sélection multiple, Tuesday.
- Python
- R
- Scala
- SQL
dbutils.widgets.multiselect(
name='days_multiselect',
defaultValue='Tuesday',
choices=['Monday', 'Tuesday', 'Wednesday', 'Thursday',
'Friday', 'Saturday', 'Sunday'],
label='Days of the Week'
)
print(dbutils.widgets.get("days_multiselect"))
# Tuesday
dbutils.widgets.multiselect(
name='days_multiselect',
defaultValue='Tuesday',
choices=list('Monday', 'Tuesday', 'Wednesday', 'Thursday',
'Friday', 'Saturday', 'Sunday'),
label='Days of the Week'
)
print(dbutils.widgets.get("days_multiselect"))
# [1] "Tuesday"
dbutils.widgets.multiselect(
"days_multiselect",
"Tuesday",
Array("Monday", "Tuesday", "Wednesday", "Thursday",
"Friday", "Saturday", "Sunday"),
"Days of the Week"
)
print(dbutils.widgets.get("days_multiselect"))
// Tuesday
CREATE WIDGET MULTISELECT days_multiselect DEFAULT "Tuesday" CHOICES SELECT * FROM (VALUES ("Monday"), ("Tuesday"), ("Wednesday"), ("Thursday"), ("Friday"), ("Saturday"), ("Sunday"))
SELECT :days_multiselect
-- Tuesday
commande de suppression (dbutils.widgets.remove)
remove(name: String): void
Supprime le widget portant le nom programmatique spécifié.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.widgets.help("remove")
Si vous ajoutez une commande pour supprimer un widget, vous ne pouvez pas ajouter une commande ultérieure pour créer un widget dans la même cellule. Vous devez créer le widget dans une autre cellule.
Exemple
Cet exemple supprime le widget avec le nom programmatique fruits_combobox.
- Python
- R
- Scala
- SQL
dbutils.widgets.remove('fruits_combobox')
dbutils.widgets.remove('fruits_combobox')
dbutils.widgets.remove("fruits_combobox")
REMOVE WIDGET fruits_combobox
Commande removeAll (dbutils.widgets.removeAll)
removeAll: void
Supprime tous les widgets du notebook.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.widgets.help("removeAll")
Si vous ajoutez une commande pour supprimer tous les widgets, vous ne pouvez pas ajouter de commande ultérieure pour créer des widgets dans la même cellule. Vous devez créer les widgets dans une autre cellule.
Exemple
Cet exemple supprime tous les widgets du Notebook.
- Python
- R
- Scala
dbutils.widgets.removeAll()
dbutils.widgets.removeAll()
dbutils.widgets.removeAll()
commande texte (dbutils.widgets.text)
text(name: String, defaultValue: String, label: String): void
Crée et affiche un widget de texte avec le nom programmatique spécifié, la valeur default et une étiquette facultative.
Pour afficher l'aide complète de cette commande, exécutez :
dbutils.widgets.help("text")
Exemple
Cet exemple crée et affiche un widget de texte avec le nom programmatique your_name_text. Il est défini sur la valeur initiale de Enter your name. Ce widget de texte est accompagné du libellé Your name. Cet exemple se termine en affichant la valeur initiale du widget de texte, Enter your name.
- Python
- R
- Scala
- SQL
dbutils.widgets.text(
name='your_name_text',
defaultValue='Enter your name',
label='Your name'
)
print(dbutils.widgets.get("your_name_text"))
# Enter your name
dbutils.widgets.text(
name='your_name_text',
defaultValue='Enter your name',
label='Your name'
)
print(dbutils.widgets.get("your_name_text"))
# [1] "Enter your name"
dbutils.widgets.text(
"your_name_text",
"Enter your name",
"Your name"
)
print(dbutils.widgets.get("your_name_text"))
// Enter your name
CREATE WIDGET TEXT your_name_text DEFAULT "Enter your name"
SELECT :your_name_text
-- Enter your name
Bibliothèque de l'API Databricks Utilitaires
La bibliothèque de l'API Databricks Utilities (dbutils-api) est dépréciée. Databricks vous recommande d'utiliser l'une des options suivantes à la place :
Pour accélérer le développement d'applications, il peut être utile de compiler, de créer et de tester les applications avant de les déployer en tant que Jobs de production. Pour vous permettre de compiler avec Databricks Utilities, Databricks fournit la bibliothèque dbutils-api. Vous pouvez download la bibliothèque dbutils-api depuis la page Web de l'API DBUtils sur le site Web du Maven repository ou inclure la bibliothèque en ajoutant une dépendance à votre fichier de construction :
-
SBT
ScalalibraryDependencies += "com.databricks" % "dbutils-api_TARGET" % "VERSION" -
Maven
XML<dependency>
<groupId>com.databricks</groupId>
<artifactId>dbutils-api_TARGET</artifactId>
<version>VERSION</version>
</dependency> -
Gradle
Bashcompile 'com.databricks:dbutils-api_TARGET:VERSION'
Remplacez TARGET par la cible souhaitée (par exemple, 2.12) et VERSION par la version souhaitée (par exemple, 0.0.5). Pour une liste des cibles et versions disponibles, consultez la page web de l'API DBUtils sur le site web du repository Maven.
Une fois que vous avez créé votre application avec cette bibliothèque, vous pouvez la déployer.
La bibliothèque dbutils-api vous permet uniquement de compiler localement une application qui utilise dbutils, pas de l'exécuter. Pour exécuter l'application, vous devez la déployer dans Databricks.
Limitations
L'appel de dbutils à l'intérieur des exécuteurs peut produire des résultats inattendus ou des erreurs.
Si vous avez besoin d’exécuter des opérations de système de fichiers sur des exécuteurs à l’aide de dbutils, consultez Paralléliser les opérations de système de fichiers.
Pour plus d'informations sur les exécuteurs, consultez la Présentation du Mode cluster sur le site web d'Apache Spark.