Databricks Yardımcı Programları (dbutils
) başvurusu
Bu makale Databricks Yardımcı Programları (dbutils
) için bir başvurudur. dbutils
yardımcı programları Python, R ve Scala not defterlerinde kullanılabilir. Aşağıdakiler için yardımcı programları kullanabilirsiniz:
- Dosyalar ve nesne depolama ile verimli bir şekilde çalışın.
- Gizli dizilerle çalışma.
Nasıl yapılır: Yardımcı programları listeleme, komutları listeleme, komut yardımı görüntüleme
Yardımcı programlar: veriler, fs, işler, kitaplık, not defteri, gizli diziler, pencere öğeleri, Yardımcı Programlar API kitaplığı
Kullanılabilir yardımcı programları listeleme
Kullanılabilir yardımcı programları ve her yardımcı programın kısa açıklamasını listelemek için Python veya Scala için komutunu çalıştırın dbutils.help()
.
Bu örnekte Databricks Yardımcı Programları için kullanılabilir komutlar listelenir.
Python
dbutils.help()
Scala
dbutils.help()
This module provides various utilities for users to interact with the rest of Databricks.
credentials: DatabricksCredentialUtils -> Utilities for interacting with credentials within notebooks
data: DataUtils -> Utilities for understanding and interacting with datasets (EXPERIMENTAL)
fs: DbfsUtils -> Manipulates the Databricks filesystem (DBFS) from the console
jobs: JobsUtils -> Utilities for leveraging jobs features
library: LibraryUtils -> Utilities for session isolated libraries
meta: MetaUtils -> Methods to hook into the compiler (EXPERIMENTAL)
notebook: NotebookUtils -> Utilities for the control flow of a notebook (EXPERIMENTAL)
preview: Preview -> Utilities under preview category
secrets: SecretUtils -> Provides utilities for leveraging secrets within notebooks
widgets: WidgetsUtils -> Methods to create and get bound value of input widgets inside notebooks
Yardımcı program için kullanılabilir komutları listeleme
Bir yardımcı programın kullanılabilir komutlarını ve her komutun kısa bir açıklamasını listelemek için yardımcı programın programlı adından sonra komutunu çalıştırın .help()
.
Bu örnekte Databricks Dosya Sistemi (DBFS) yardımcı programı için kullanılabilir komutlar listeleniyor.
Python
dbutils.fs.help()
R
dbutils.fs.help()
Scala
dbutils.fs.help()
dbutils.fs provides utilities for working with FileSystems. Most methods in this package can take either a DBFS path (e.g., "/foo" or "dbfs:/foo"), or another FileSystem URI. For more info about a method, use dbutils.fs.help("methodName"). In notebooks, you can also use the %fs shorthand to access DBFS. The %fs shorthand maps straightforwardly onto dbutils calls. For example, "%fs head --maxBytes=10000 /file/path" translates into "dbutils.fs.head("/file/path", maxBytes = 10000)".
fsutils
cp(from: String, to: String, recurse: boolean = false): boolean -> Copies a file or directory, possibly across FileSystems
head(file: String, maxBytes: int = 65536): String -> Returns up to the first 'maxBytes' bytes of the given file as a String encoded in UTF-8
ls(dir: String): Seq -> Lists the contents of a directory
mkdirs(dir: String): boolean -> Creates the given directory if it does not exist, also creating any necessary parent directories
mv(from: String, to: String, recurse: boolean = false): boolean -> Moves a file or directory, possibly across FileSystems
put(file: String, contents: String, overwrite: boolean = false): boolean -> Writes the given String out to a file, encoded in UTF-8
rm(dir: String, recurse: boolean = false): boolean -> Removes a file or directory
mount
mount(source: String, mountPoint: String, encryptionType: String = "", owner: String = null, extraConfigs: Map = Map.empty[String, String]): boolean -> Mounts the given source directory into DBFS at the given mount point
mounts: Seq -> Displays information about what is mounted within DBFS
refreshMounts: boolean -> Forces all machines in this cluster to refresh their mount cache, ensuring they receive the most recent information
unmount(mountPoint: String): boolean -> Deletes a DBFS mount point
updateMount(source: String, mountPoint: String, encryptionType: String = "", owner: String = null, extraConfigs: Map = Map.empty[String, String]): boolean -> Similar to mount(), but updates an existing mount point instead of creating a new one
Komut için yardım görüntüleme
Komutun yardımını görüntülemek için komut adından sonra komutunu çalıştırın .help("<command-name>")
.
Bu örnekte DBFS kopyalama komutu için yardım görüntülenir.
Python
dbutils.fs.help("cp")
R
dbutils.fs.help("cp")
Scala
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
Veri yardımcı programı (dbutils.data)
Önemli
Bu özellik Genel Önizlemededir.
Not
Databricks Runtime 9.0 ve üzeri sürümleriyle kullanılabilir.
Komutlar: özetleme
Veri yardımcı programı, veri kümelerini anlamanıza ve yorumlamanıza olanak tanır. Kullanılabilir komutları listelemek için komutunu çalıştırın dbutils.data.help()
.
dbutils.data provides utilities for understanding and interpreting datasets. This module is currently in preview and may be unstable. For more info about a method, use dbutils.data.help("methodName").
summarize(df: Object, precise: boolean): void -> Summarize a Spark DataFrame and visualize the statistics to get quick insights
summarize komutu (dbutils.data.summarize)
Apache Spark DataFrame veya pandas DataFrame'in özet istatistiklerini hesaplar ve görüntüler. Bu komut Python, Scala ve R için kullanılabilir.
Bu komut, DataFrame'in tüm içeriğini analiz eder. Çok büyük DataFrame'ler için bu komutu çalıştırmak çok pahalı olabilir.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.data.help("summarize")
.
Databricks Runtime 10.4 LTS ve üzerinde hesaplanan istatistiklerin duyarlığı ayarlamak için ek precise
parametreyi kullanabilirsiniz.
Not
Bu özellik Genel Önizlemededir.
precise
False (varsayılan) olarak ayarlandığında, döndürülen bazı istatistikler çalışma süresini kısaltmak için yaklaşık değerleri içerir.- Kategorik sütunlar için ayrı değerlerin sayısı, yüksek kardinaliteli sütunlar için yaklaşık %5 göreli hataya sahip olabilir.
- Sık kullanılan değer sayılarında, ayrı değerlerin sayısı 10000'den büyük olduğunda %0,01'e varan bir hata olabilir.
- Histogramlar ve yüzdebirlik tahminler, toplam satır sayısına göre %0,01'e varan bir hataya sahip olabilir.
precise
true olarak ayarlandığında istatistikler daha yüksek hassasiyetle hesaplanır. Sayısal sütunların histogramları ve yüzdebirlik değerleri dışındaki tüm istatistikler artık tam olarak belirlendi.- Histogramlar ve yüzdebirlik tahminlerde toplam satır sayısına göre %0,0001'e kadar hata olabilir.
Veri özeti çıkışının üst kısmındaki araç ipucu geçerli çalıştırma modunu gösterir.
Bu örnek, varsayılan olarak yaklaşık değerlerin etkinleştirildiği bir Apache Spark DataFrame'in özet istatistiklerini görüntüler. Sonuçları görmek için bu komutu bir not defterinde çalıştırın. Bu örnek Örnek veri kümelerini temel alır.
Python
df = spark.read.format('csv').load(
'/databricks-datasets/Rdatasets/data-001/csv/ggplot2/diamonds.csv',
header=True,
inferSchema=True
)
dbutils.data.summarize(df)
R
df <- read.df("/databricks-datasets/Rdatasets/data-001/csv/ggplot2/diamonds.csv", source = "csv", header="true", inferSchema = "true")
dbutils.data.summarize(df)
Scala
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)
Görselleştirmenin 0,01'den küçük veya 10000'den büyük sayısal değerleri kısa bir şekilde işlemek için SI gösterimi kullandığını unutmayın. Örneğin, sayısal değer 1.25e-15
olarak 1.25f
işlenir. Bir özel durum: Görselleştirmede "B
" yerineG
"" 1.0e9
(giga) kullanılır.
Dosya sistemi yardımcı programı (dbutils.fs)
Uyarı
Tüm dbutils.fs
yöntemlerin Python uygulaması, anahtar sözcük biçimlendirmesi yerine camelCase
kullanırsnake_case
.
Örneğin: Python'da seçeneğini dbutils.fs.mount()
extraConfigs
görüntülerken dbutils.fs.help()
anahtar sözcüğünü extra_configs
kullanırsınız.
Komutlar: cp, head, ls, mkdirs, mount, mounts, mv, put, refreshMounts, rm, unmount, updateMount
Dosya sistemi yardımcı programı DBFS nedir? bölümüne erişmenize olanak sağlayarak Azure Databricks'i dosya sistemi olarak kullanmayı kolaylaştırır.
Not defterlerinde, DBFS'ye erişmek için sihirli komutunu da kullanabilirsiniz %fs
. Örneğin %fs ls /Volumes/main/default/my-volume/
, ile dbutils.fs.ls("/Volumes/main/default/my-volume/")
aynıdır. Bkz . sihirli komutlar.
Kullanılabilir komutları listelemek için komutunu çalıştırın dbutils.fs.help()
.
dbutils.fs provides utilities for working with FileSystems. Most methods in this package can take either a DBFS path (e.g., "/foo" or "dbfs:/foo"), or another FileSystem URI. For more info about a method, use dbutils.fs.help("methodName"). In notebooks, you can also use the %fs shorthand to access DBFS. The %fs shorthand maps straightforwardly onto dbutils calls. For example, "%fs head --maxBytes=10000 /file/path" translates into "dbutils.fs.head("/file/path", maxBytes = 10000)".
fsutils
cp(from: String, to: String, recurse: boolean = false): boolean -> Copies a file or directory, possibly across FileSystems
head(file: String, maxBytes: int = 65536): String -> Returns up to the first 'maxBytes' bytes of the given file as a String encoded in UTF-8
ls(dir: String): Seq -> Lists the contents of a directory
mkdirs(dir: String): boolean -> Creates the given directory if it does not exist, also creating any necessary parent directories
mv(from: String, to: String, recurse: boolean = false): boolean -> Moves a file or directory, possibly across FileSystems
put(file: String, contents: String, overwrite: boolean = false): boolean -> Writes the given String out to a file, encoded in UTF-8
rm(dir: String, recurse: boolean = false): boolean -> Removes a file or directory
mount
mount(source: String, mountPoint: String, encryptionType: String = "", owner: String = null, extraConfigs: Map = Map.empty[String, String]): boolean -> Mounts the given source directory into DBFS at the given mount point
mounts: Seq -> Displays information about what is mounted within DBFS
refreshMounts: boolean -> Forces all machines in this cluster to refresh their mount cache, ensuring they receive the most recent information
unmount(mountPoint: String): boolean -> Deletes a DBFS mount point
updateMount(source: String, mountPoint: String, encryptionType: String = "", owner: String = null, extraConfigs: Map = Map.empty[String, String]): boolean -> Similar to mount(), but updates an existing mount point instead of creating a new one
cp komutu (dbutils.fs.cp)
Büyük olasılıkla dosya sistemleri arasında bir dosya veya dizin kopyalar.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.fs.help("cp")
.
Bu örnek, adlı data.csv
/Volumes/main/default/my-volume/
new-data.csv
dosyayı aynı birimde öğesine kopyalar.
Python
dbutils.fs.cp("/Volumes/main/default/my-volume/data.csv", "/Volumes/main/default/my-volume/new-data.csv")
# Out[4]: True
R
dbutils.fs.cp("/Volumes/main/default/my-volume/data.csv", "/Volumes/main/default/my-volume/new-data.csv")
# [1] TRUE
Scala
dbutils.fs.cp("/Volumes/main/default/my-volume/data.csv", "/Volumes/main/default/my-volume/new-data.csv")
// res3: Boolean = true
head komutu (dbutils.fs.head)
Belirtilen dosyanın belirtilen en fazla bayt sayısına kadar döndürür. Baytlar UTF-8 ile kodlanmış bir dize olarak döndürülür.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.fs.help("head")
.
Bu örnek, içinde /Volumes/main/default/my-volume/
bulunan dosyanın data.csv
ilk 25 baytını görüntüler.
Python
dbutils.fs.head("/Volumes/main/default/my-volume/data.csv", 25)
# [Truncated to first 25 bytes]
# Out[12]: 'Year,First Name,County,Se'
R
dbutils.fs.head("/Volumes/main/default/my-volume/data.csv", 25)
# [1] "Year,First Name,County,Se"
Scala
dbutils.fs.head("/Volumes/main/default/my-volume/data.csv", 25)
// [Truncated to first 25 bytes]
// res4: String =
// "Year,First Name,County,Se"
ls komutu (dbutils.fs.ls)
Bir dizinin içeriğini listeler.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.fs.help("ls")
.
Bu örnekte içeriğinin /Volumes/main/default/my-volume/
bilgileri görüntülenir. Bu modificationTime
alan Databricks Runtime 10.4 LTS ve üzerinde kullanılabilir. R'de dize modificationTime
olarak döndürülür.
Python
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)]
R
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"
Scala
dbutils.fs.ls("/tmp")
// res6: Seq[com.databricks.backend.daemon.dbutils.FileInfo] = WrappedArray(FileInfo(/Volumes/main/default/my-volume/data.csv, 2258987, 1711357839000))
mkdirs komutu (dbutils.fs.mkdirs)
Mevcut değilse verilen dizini oluşturur. Ayrıca gerekli üst dizinleri de oluşturur.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.fs.help("mkdirs")
.
Bu örnek içinde /Volumes/main/default/my-volume/
dizini my-data
oluşturur.
Python
dbutils.fs.mkdirs("/Volumes/main/default/my-volume/my-data")
# Out[15]: True
R
dbutils.fs.mkdirs("/Volumes/main/default/my-volume/my-data")
# [1] TRUE
Scala
dbutils.fs.mkdirs("/Volumes/main/default/my-volume/my-data")
// res7: Boolean = true
mount komutu (dbutils.fs.mount)
Belirtilen kaynak dizini belirtilen bağlama noktasında DBFS'ye bağlar.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.fs.help("mount")
.
Python
dbutils.fs.mount(
source = "wasbs://<container-name>@<storage-account-name>.blob.core.windows.net",
mount_point = "/mnt/<mount-name>",
extra_configs = {"<conf-key>":dbutils.secrets.get(scope = "<scope-name>", key = "<key-name>")})
Scala
dbutils.fs.mount(
source = "wasbs://<container-name>@<storage-account-name>.blob.core.windows.net/<directory-name>",
mountPoint = "/mnt/<mount-name>",
extraConfigs = Map("<conf-key>" -> dbutils.secrets.get(scope = "<scope-name>", key = "<key-name>")))
Ek kod örnekleri için bkz. Azure Data Lake Storage 2. Nesil ve Blob Depolama'ya bağlanma.
mounts komutu (dbutils.fs.mounts)
DBFS'de şu anda nelerin bağlı olduğu hakkındaki bilgileri görüntüler.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.fs.help("mounts")
.
Uyarı
Yeni bağlamayı yaymak için diğer tüm çalışan kümeleri çağırın dbutils.fs.refreshMounts()
. Bkz . refreshMounts komutu (dbutils.fs.refreshMounts).
Python
dbutils.fs.mounts()
Scala
dbutils.fs.mounts()
Ek kod örnekleri için bkz. Azure Data Lake Storage 2. Nesil ve Blob Depolama'ya bağlanma.
mv komutu (dbutils.fs.mv)
Bir dosyayı veya dizini büyük olasılıkla dosya sistemleri arasında taşır. Taşıma, dosya sistemleri içindeki taşımalar için bile bir kopya ve ardından silme işlemidir.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.fs.help("mv")
.
Bu örnek, dosyasını rows.csv
'den /Volumes/main/default/my-volume/
öğesine /Volumes/main/default/my-volume/my-data/
taşır.
Python
dbutils.fs.mv("/Volumes/main/default/my-volume/rows.csv", "/Volumes/main/default/my-volume/my-data/")
# Out[2]: True
R
dbutils.fs.mv("/Volumes/main/default/my-volume/rows.csv", "/Volumes/main/default/my-volume/my-data/")
# [1] TRUE
Scala
dbutils.fs.mv("/Volumes/main/default/my-volume/rows.csv", "/Volumes/main/default/my-volume/my-data/")
// res1: Boolean = true
put komutu (dbutils.fs.put)
Belirtilen dizeyi bir dosyaya yazar. Dize UTF-8 kodludur.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.fs.help("put")
.
Bu örnek, dizesini Hello, Databricks!
içinde /Volumes/main/default/my-volume/
adlı hello.txt
bir dosyaya yazar. Dosya varsa üzerine yazılır.
Python
dbutils.fs.put("/Volumes/main/default/my-volume/hello.txt", "Hello, Databricks!", True)
# Wrote 2258987 bytes.
# Out[6]: True
R
dbutils.fs.put("/Volumes/main/default/my-volume/hello.txt", "Hello, Databricks!", TRUE)
# [1] TRUE
Scala
dbutils.fs.put("/Volumes/main/default/my-volume/hello.txt", "Hello, Databricks!", true)
// Wrote 2258987 bytes.
// res2: Boolean = true
refreshMounts komutu (dbutils.fs.refreshMounts)
Kümedeki tüm makineleri bağlama önbelleğini yenilemeye zorlayarak en son bilgileri almalarını sağlar.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.fs.help("refreshMounts")
.
Python
dbutils.fs.refreshMounts()
Scala
dbutils.fs.refreshMounts()
Ek kod örnekleri için bkz. Azure Data Lake Storage 2. Nesil ve Blob Depolama'ya bağlanma.
rm komutu (dbutils.fs.rm)
Bir dosyayı veya dizini ve isteğe bağlı olarak tüm içeriğini kaldırır. Bir dosya belirtilirse, özyineleme parametresi yoksayılır. Bir dizin belirtilirse, özyineleme devre dışı bırakılırsa ve dizin boş değilse bir hata oluşur.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.fs.help("rm")
.
Bu örnek, dizinin /Volumes/main/default/my-volume/my-data/
içeriğini de içeren dizini kaldırır.
Python
dbutils.fs.rm("/Volumes/main/default/my-volume/my-data/", True)
# Out[8]: True
R
dbutils.fs.rm("/Volumes/main/default/my-volume/my-data/", TRUE)
# [1] TRUE
Scala
dbutils.fs.rm("/Volumes/main/default/my-volume/my-data/", true)
// res6: Boolean = true
unmount komutu (dbutils.fs.unmount)
DBFS bağlama noktasını siler.
Uyarı
Hataları önlemek için, bağlama noktasını hiçbir zaman diğer işler okurken veya yazarken değiştirmeyin. Bağlamayı değiştirdikten sonra, tüm bağlama güncelleştirmelerini yaymak için her zaman çalışan diğer tüm kümelerde komutunu çalıştırın dbutils.fs.refreshMounts()
. Bkz . refreshMounts komutu (dbutils.fs.refreshMounts).
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.fs.help("unmount")
.
dbutils.fs.unmount("/mnt/<mount-name>")
Ek kod örnekleri için bkz. Azure Data Lake Storage 2. Nesil ve Blob Depolama'ya bağlanma.
updateMount komutu (dbutils.fs.updateMount)
Komutuna dbutils.fs.mount
benzer, ancak yeni bir bağlama noktası oluşturmak yerine mevcut bir bağlama noktasını güncelleştirir. Bağlama noktası yoksa bir hata döndürür.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.fs.help("updateMount")
.
Uyarı
Hataları önlemek için, bağlama noktasını hiçbir zaman diğer işler okurken veya yazarken değiştirmeyin. Bağlamayı değiştirdikten sonra, tüm bağlama güncelleştirmelerini yaymak için her zaman çalışan diğer tüm kümelerde komutunu çalıştırın dbutils.fs.refreshMounts()
. Bkz . refreshMounts komutu (dbutils.fs.refreshMounts).
Bu komut Databricks Runtime 10.4 LTS ve üzerinde kullanılabilir.
Python
dbutils.fs.updateMount(
source = "wasbs://<container-name>@<storage-account-name>.blob.core.windows.net",
mount_point = "/mnt/<mount-name>",
extra_configs = {"<conf-key>":dbutils.secrets.get(scope = "<scope-name>", key = "<key-name>")})
Scala
dbutils.fs.updateMount(
source = "wasbs://<container-name>@<storage-account-name>.blob.core.windows.net/<directory-name>",
mountPoint = "/mnt/<mount-name>",
extraConfigs = Map("<conf-key>" -> dbutils.secrets.get(scope = "<scope-name>", key = "<key-name>")))
İşler yardımcı programı (dbutils.jobs)
Alt Yardımcı Programlar: taskValues
Not
Bu yardımcı program yalnızca Python için kullanılabilir.
İşler yardımcı programı, iş özelliklerinden yararlanmanızı sağlar. Bu yardımcı programın yardımlarını görüntülemek için komutunu çalıştırın dbutils.jobs.help()
.
Provides utilities for leveraging jobs features.
taskValues: TaskValuesUtils -> Provides utilities for leveraging job task values
taskValues alt yardımcı programı (dbutils.jobs.taskValues)
Not
Bu alt yardımcı program yalnızca Python için kullanılabilir.
İş görev değerlerinden yararlanmaya yönelik komutlar sağlar.
Bir iş çalıştırması sırasında rastgele değerler ayarlamak ve almak için bu alt yardımcı programı kullanın. Bu değerler görev değerleri olarak adlandırılır. Aynı iş çalıştırmasında aşağı akış görevlerindeki görev değerlerine erişebilirsiniz. Örneğin, bir iş çalıştırması içindeki farklı görevler arasında makine öğrenmesi modelinin değerlendirmesiyle ilgili bilgiler gibi tanımlayıcıları veya ölçümleri iletebilirsiniz. Her görev birden çok görev değeri ayarlayabilir, bunları alabilir veya her ikisini birden yapabilir. Her görev değerinin aynı görev içinde benzersiz bir anahtarı vardır. Bu benzersiz anahtar, görev değerinin anahtarı olarak bilinir. Görev adına ve görev değerinin anahtarına sahip bir görev değerine erişilir.
Bu alt yardımcı program için yardım görüntülemek için komutunu çalıştırın dbutils.jobs.taskValues.help()
.
get komutu (dbutils.jobs.taskValues.get)
Not
Bu komut yalnızca Python için kullanılabilir.
Databricks Runtime 10.4 ve önceki sürümlerinde, get
görevi bulamazsa, yerine bir Py4JJavaError oluşturulur ValueError
.
Geçerli iş çalıştırmasında belirtilen görev için belirtilen görev değerinin içeriğini alır.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.jobs.taskValues.help("get")
.
Örneğin:
dbutils.jobs.taskValues.get(taskKey = "my-task", \
key = "my-key", \
default = 7, \
debugValue = 42)
Yukarıdaki örnekte:
taskKey
, görev değerini ayarlayan görevin adıdır. Komut bu görevi bulamazsa, birValueError
oluşturulur.key
, set komutuyla ayarladığınız görev değerinin anahtarının adıdır (dbutils.jobs.taskValues.set). Komut bu görev değerinin anahtarını bulamazsa, birValueError
oluşturulur (belirtilmediği sürecedefault
).default
, bulunamazsakey
döndürülen isteğe bağlı bir değerdir.default
olamazNone
.debugValue
, bir işin dışında çalışan bir not defterinin içinden görev değerini almaya çalışırsanız döndürülen isteğe bağlı bir değerdir. Bu, not defterinizi el ile çalıştırmak ve varsayılan değer oluşturmakTypeError
yerine bir değer döndürmek istediğinizde hata ayıklama sırasında yararlı olabilir.debugValue
olamazNone
.
bir işin dışında çalışan bir not defterinin içinden bir görev değeri almaya çalışırsanız, bu komut varsayılan olarak bir TypeError
oluşturur. Ancak, bağımsız değişken komutunda belirtilirse debugValue
, değeri debugValue
bir TypeError
oluşturmak yerine döndürülür.
set komutu (dbutils.jobs.taskValues.set)
Not
Bu komut yalnızca Python için kullanılabilir.
Görev değerini ayarlar veya güncelleştirir. bir iş çalıştırması için en fazla 250 görev değeri ayarlayabilirsiniz.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.jobs.taskValues.help("set")
.
Bazı Örnekler:
dbutils.jobs.taskValues.set(key = "my-key", \
value = 5)
dbutils.jobs.taskValues.set(key = "my-other-key", \
value = "my other value")
Yukarıdaki örneklerde:
key
görev değerinin anahtarıdır. Bu anahtar göreve özgü olmalıdır. Diğer bir ifadeyle, her biri anahtarıylaK
bir görev değeri ayarlayan iki farklı görev değeri varsa, bunlar aynı anahtaraK
sahip iki farklı görev değeridir.value
, bu görev değerinin anahtarının değeridir. Bu komutun değeri dahili olarak JSON biçiminde temsil edebilmesi gerekir. Değerin JSON gösteriminin boyutu 48 KiB'ı aşamaz.
bir işin dışında çalışan bir not defterinin içinden bir görev değeri ayarlamaya çalışırsanız, bu komut hiçbir şey yapmaz.
Kitaplık yardımcı programı (dbutils.library)
Alt modüldeki yöntemlerin dbutils.library
çoğu kullanım dışıdır. Bkz. Kitaplık yardımcı programı (dbutils.library) (eski).
Yerel olarak yüklenen veya yükseltilen kitaplıkların geçerli SparkSession'ınız için Python çekirdeğinde düzgün çalıştığından emin olmak için Azure Databricks'te Python işlemini program aracılığıyla yeniden başlatmanız gerekebilir. Bunu yapmak için dbutils.library.restartPython
komutunu çalıştırın. Bkz. Azure Databricks'te Python işlemini yeniden başlatma.
Not defteri yardımcı programı (dbutils.notebook)
Not defteri yardımcı programı, not defterlerini birbirine bağlamanıza ve sonuçlarına göre işlem yapmanızı sağlar. Bkz . Başka bir not defterinden Databricks not defteri çalıştırma.
Kullanılabilir komutları listelemek için komutunu çalıştırın dbutils.notebook.help()
.
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.
exit komutu (dbutils.notebook.exit)
Not defterinden bir değerle çıkar.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.notebook.help("exit")
.
Bu örnek, değeriyle Exiting from My Other Notebook
not defterinden çıkar.
Python
dbutils.notebook.exit("Exiting from My Other Notebook")
# Notebook exited: Exiting from My Other Notebook
R
dbutils.notebook.exit("Exiting from My Other Notebook")
# Notebook exited: Exiting from My Other Notebook
Scala
dbutils.notebook.exit("Exiting from My Other Notebook")
// Notebook exited: Exiting from My Other Notebook
Not
Çalıştırmanın arka planda çalışan yapılandırılmış akışı olan bir sorgusu varsa, çağrı dbutils.notebook.exit()
çalıştırmayı sonlandırmaz. Sorgu arka planda yürütülürken çalıştırma yürütülmeye devam eder. Sorgunun hücresinde İptal'e tıklayarak veya komutunu çalıştırarak query.stop()
sorgunun arka planda çalışmasını durdurabilirsiniz. Sorgu durduğunda ile çalıştırmayı dbutils.notebook.exit()
sonlandırabilirsiniz.
run command (dbutils.notebook.run)
Not defterini çalıştırır ve çıkış değerini döndürür. Not defteri varsayılan olarak geçerli kümede çalışır.
Not
Komuttan run
döndürülen dize değerinin uzunluğu üst sınırı 5 MB'tır. Bkz. Tek bir çalıştırmaGET /jobs/runs/get-output
() için çıkışı alma.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.notebook.help("run")
.
Bu örnek, çağıran not defteriyle aynı konumda adlı My Other Notebook
bir not defteri çalıştırır. Çağrılan not defteri kod dbutils.notebook.exit("Exiting from My Other Notebook")
satırıyla biter. Çağrılan not defterinin çalışması 60 saniye içinde tamamlanmazsa bir özel durum oluşur.
Python
dbutils.notebook.run("My Other Notebook", 60)
# Out[14]: 'Exiting from My Other Notebook'
Scala
dbutils.notebook.run("My Other Notebook", 60)
// res2: String = Exiting from My Other Notebook
Gizli diziler yardımcı programı (dbutils.secrets)
Komutlar: get, getBytes, list, listScopes
Gizli diziler yardımcı programı, not defterlerinde görünür hale getirmeden hassas kimlik bilgileri depolamanıza ve bunlara erişmenize olanak tanır. Bkz . Gizli dizi yönetimi ve Not defterinde gizli dizileri kullanma. Kullanılabilir komutları listelemek için komutunu çalıştırın dbutils.secrets.help()
.
get(scope: String, key: String): String -> Gets the string representation of a secret value with scope and key
getBytes(scope: String, key: String): byte[] -> Gets the bytes representation of a secret value with scope and key
list(scope: String): Seq -> Lists secret metadata for secrets within a scope
listScopes: Seq -> Lists secret scopes
get komutu (dbutils.secrets.get)
Belirtilen gizli dizi kapsamı ve anahtarı için bir gizli dizi değerinin dize gösterimini alır.
Uyarı
Yöneticiler, gizli dizi oluşturucuları ve izin verilen kullanıcılar Azure Databricks gizli dizilerini okuyabilir. Azure Databricks, not defterlerinde görüntülenebilen gizli dizi değerlerini yeniden uygulamak için çaba gösterse de, bu tür kullanıcıların gizli dizileri okumasını engellemek mümkün değildir. Daha fazla bilgi için bkz . Gizli dizi yeniden eylem.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.secrets.help("get")
.
Bu örnek, adlı kapsam ve adlı my-scope
anahtar my-key
için gizli dizi değerinin dize gösterimini alır.
Python
dbutils.secrets.get(scope="my-scope", key="my-key")
# Out[14]: '[REDACTED]'
R
dbutils.secrets.get(scope="my-scope", key="my-key")
# [1] "[REDACTED]"
Scala
dbutils.secrets.get(scope="my-scope", key="my-key")
// res0: String = [REDACTED]
getBytes komutu (dbutils.secrets.getBytes)
Belirtilen kapsam ve anahtar için bir gizli dizi değerinin bayt gösterimini alır.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.secrets.help("getBytes")
.
Bu örnek, adlı kapsam için gizli dizi değerinin bayt gösterimini (bu örnekte, a1!b2@c3#
) ve adlı my-scope
my-key
anahtarı alır.
Python
dbutils.secrets.getBytes(scope="my-scope", key="my-key")
# Out[1]: b'a1!b2@c3#'
R
dbutils.secrets.getBytes(scope="my-scope", key="my-key")
# [1] 61 31 21 62 32 40 63 33 23
Scala
dbutils.secrets.getBytes(scope="my-scope", key="my-key")
// res1: Array[Byte] = Array(97, 49, 33, 98, 50, 64, 99, 51, 35)
list komutu (dbutils.secrets.list)
Belirtilen kapsamdaki gizli diziler için meta verileri listeler.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.secrets.help("list")
.
Bu örnekte, adlı my-scope
kapsamdaki gizli dizilere yönelik meta veriler listelenir.
Python
dbutils.secrets.list("my-scope")
# Out[10]: [SecretMetadata(key='my-key')]
R
dbutils.secrets.list("my-scope")
# [[1]]
# [[1]]$key
# [1] "my-key"
Scala
dbutils.secrets.list("my-scope")
// res2: Seq[com.databricks.dbutils_v1.SecretMetadata] = ArrayBuffer(SecretMetadata(my-key))
listScopes komutu (dbutils.secrets.listScopes)
Kullanılabilir kapsamları listeler.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.secrets.help("listScopes")
.
Bu örnekte kullanılabilir kapsamlar listelenir.
Python
dbutils.secrets.listScopes()
# Out[14]: [SecretScope(name='my-scope')]
R
dbutils.secrets.listScopes()
# [[1]]
# [[1]]$name
# [1] "my-scope"
Scala
dbutils.secrets.listScopes()
// res3: Seq[com.databricks.dbutils_v1.SecretScope] = ArrayBuffer(SecretScope(my-scope))
Pencere öğeleri yardımcı programı (dbutils.widgets)
Komutlar: birleşik giriş kutusu, açılan liste, get, getArgument, multiselect, remove, RemoveAll, text
Pencere öğeleri yardımcı programı, not defterlerini parametreleştirmenizi sağlar. Bkz. Databricks pencere öğeleri.
Kullanılabilir komutları listelemek için komutunu çalıştırın dbutils.widgets.help()
.
combobox(name: String, defaultValue: String, choices: Seq, label: String): void -> Creates a combobox input widget with a given name, default value and choices
dropdown(name: String, defaultValue: String, choices: Seq, label: String): void -> Creates a dropdown input widget a with given name, default value and choices
get(name: String): String -> Retrieves current value of an input widget
getAll: map -> Retrieves a map of all widget names and their values
getArgument(name: String, optional: String): String -> (DEPRECATED) Equivalent to get
multiselect(name: String, defaultValue: String, choices: Seq, label: String): void -> Creates a multiselect input widget with a given name, default value and choices
remove(name: String): void -> Removes an input widget from the notebook
removeAll: void -> Removes all widgets in the notebook
text(name: String, defaultValue: String, label: String): void -> Creates a text input widget with a given name and default value
combobox komutu (dbutils.widgets.combobox)
Belirtilen program adı, varsayılan değer, seçenekler ve isteğe bağlı etikete sahip bir birleşik giriş kutusu pencere öğesi oluşturur ve görüntüler.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.widgets.help("combobox")
.
Bu örnekte program adıyla fruits_combobox
bir birleşik giriş kutusu pencere öğesi oluşturulur ve görüntülenir. , , coconut
banana
ve dragon fruit
seçeneklerini apple
sunar ve ilk değerine banana
ayarlanır. Bu birleşik giriş kutusu pencere öğesinin eşlik eden bir etiketi Fruits
vardır. Bu örnek, birleşik giriş kutusu pencere öğesinin banana
ilk değerini yazdırarak sona erer.
Python
dbutils.widgets.combobox(
name='fruits_combobox',
defaultValue='banana',
choices=['apple', 'banana', 'coconut', 'dragon fruit'],
label='Fruits'
)
print(dbutils.widgets.get("fruits_combobox"))
# banana
R
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"
Scala
dbutils.widgets.combobox(
"fruits_combobox",
"banana",
Array("apple", "banana", "coconut", "dragon fruit"),
"Fruits"
)
print(dbutils.widgets.get("fruits_combobox"))
// banana
SQL
CREATE WIDGET COMBOBOX fruits_combobox DEFAULT "banana" CHOICES SELECT * FROM (VALUES ("apple"), ("banana"), ("coconut"), ("dragon fruit"))
SELECT :fruits_combobox
-- banana
dropdown komutu (dbutils.widgets.dropdown)
Belirtilen program adı, varsayılan değer, seçenekler ve isteğe bağlı etiket içeren bir açılan pencere öğesi oluşturur ve görüntüler.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.widgets.help("dropdown")
.
Bu örnekte program adıyla toys_dropdown
bir açılan pencere öğesi oluşturulur ve görüntülenir. , , cape
basketball
ve doll
seçeneklerini alphabet blocks
sunar ve ilk değerine basketball
ayarlanır. Bu açılan pencere öğesinde eşlik eden bir etiket Toys
vardır. Bu örnek, açılan pencere öğesinin ilk değerini yazdırarak sona erer basketball
.
Python
dbutils.widgets.dropdown(
name='toys_dropdown',
defaultValue='basketball',
choices=['alphabet blocks', 'basketball', 'cape', 'doll'],
label='Toys'
)
print(dbutils.widgets.get("toys_dropdown"))
# basketball
R
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"
Scala
dbutils.widgets.dropdown(
"toys_dropdown",
"basketball",
Array("alphabet blocks", "basketball", "cape", "doll"),
"Toys"
)
print(dbutils.widgets.get("toys_dropdown"))
// basketball
SQL
CREATE WIDGET DROPDOWN toys_dropdown DEFAULT "basketball" CHOICES SELECT * FROM (VALUES ("alphabet blocks"), ("basketball"), ("cape"), ("doll"))
SELECT :toys_dropdown
-- basketball
get komutu (dbutils.widgets.get)
Belirtilen program adıyla pencere öğesinin geçerli değerini alır. Bu program adı aşağıdakilerden biri olabilir:
- Not defterindeki özel pencere öğesinin adı, örneğin
fruits_combobox
veyatoys_dropdown
. - Not defteri görevinin parçası olarak not defterine geçirilen özel parametrenin adı( örneğin
name
, veyaage
). Daha fazla bilgi için, işler kullanıcı arabirimindeki not defteri görevleri için parametrelerin kapsamına veyanotebook_params
İşler API'sindeki Yeni bir iş çalıştırması (POST /jobs/run-now
) işlemini tetikleme bölümündeki alana bakın.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.widgets.help("get")
.
Bu örnek, program adı fruits_combobox
olan pencere öğesinin değerini alır.
Python
dbutils.widgets.get('fruits_combobox')
# banana
R
dbutils.widgets.get('fruits_combobox')
# [1] "banana"
Scala
dbutils.widgets.get("fruits_combobox")
// res6: String = banana
SQL
SELECT :fruits_combobox
-- banana
Bu örnek, program adı age
olan not defteri görev parametresinin değerini alır. Bu parametre, ilgili not defteri görevinin çalıştırıldığı zaman olarak ayarlandı 35
.
Python
dbutils.widgets.get('age')
# 35
R
dbutils.widgets.get('age')
# [1] "35"
Scala
dbutils.widgets.get("age")
// res6: String = 35
SQL
SELECT :age
-- 35
getAll komutu (dbutils.widgets.getAll)
Tüm geçerli pencere öğesi adlarının ve değerlerinin eşlemesini alır. Bu, özellikle pencere öğesi değerlerini bir sorguya hızlı bir spark.sql()
şekilde geçirmek için yararlı olabilir.
Bu komut Databricks Runtime 13.3 LTS ve üstünde kullanılabilir. Yalnızca Python ve Scala için kullanılabilir.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.widgets.help("getAll")
.
Bu örnek, pencere öğesi değerlerinin haritasını alır ve bir Spark SQL sorgusunda parametre bağımsız değişkenleri olarak geçirir.
Python
df = spark.sql("SELECT * FROM table where col1 = :param", dbutils.widgets.getAll())
df.show()
# Query output
Scala
val df = spark.sql("SELECT * FROM table where col1 = :param", dbutils.widgets.getAll())
df.show()
// res6: Query output
getArgument komutu (dbutils.widgets.getArgument)
Belirtilen program adıyla pencere öğesinin geçerli değerini alır. Pencere öğesi yoksa isteğe bağlı bir ileti döndürülebilir.
Not
Bu komut kullanım dışıdır. Bunun yerine dbutils.widgets.get kullanın.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.widgets.help("getArgument")
.
Bu örnek, program adı fruits_combobox
olan pencere öğesinin değerini alır. Bu pencere öğesi yoksa, ileti Error: Cannot find fruits combobox
döndürülür.
Python
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'
R
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"
Scala
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
multiselect komutu (dbutils.widgets.multiselect)
Belirtilen program adı, varsayılan değer, seçenekler ve isteğe bağlı etikete sahip çok seçimli bir pencere öğesi oluşturur ve görüntüler.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.widgets.help("multiselect")
.
Bu örnek, program adıyla days_multiselect
çok seçimli bir pencere öğesi oluşturur ve görüntüler. aracılığıyla seçenekleri Monday
Sunday
sunar ve ilk değerine Tuesday
ayarlanır. Bu çoklu seçim pencere öğesinin eşlik eden bir etiketi Days of the Week
vardır. Bu örnek, çok seçimli pencere öğesinin Tuesday
ilk değerini yazdırarak sona erer.
Python
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
R
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"
Scala
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
SQL
CREATE WIDGET MULTISELECT days_multiselect DEFAULT "Tuesday" CHOICES SELECT * FROM (VALUES ("Monday"), ("Tuesday"), ("Wednesday"), ("Thursday"), ("Friday"), ("Saturday"), ("Sunday"))
SELECT :days_multiselect
-- Tuesday
remove komutu (dbutils.widgets.remove)
Belirtilen program adıyla pencere öğesini kaldırır.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.widgets.help("remove")
.
Önemli
Pencere öğesini kaldırmak için bir komut eklerseniz, aynı hücrede pencere öğesi oluşturmak için sonraki bir komut ekleyemezsiniz. Pencere öğesini başka bir hücrede oluşturmanız gerekir.
Bu örnek, program adıyla fruits_combobox
pencere öğesini kaldırır.
Python
dbutils.widgets.remove('fruits_combobox')
R
dbutils.widgets.remove('fruits_combobox')
Scala
dbutils.widgets.remove("fruits_combobox")
SQL
REMOVE WIDGET fruits_combobox
removeAll komutu (dbutils.widgets.removeAll)
Not defterinden tüm pencere öğelerini kaldırır.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.widgets.help("removeAll")
.
Önemli
Tüm pencere öğelerini kaldırmak için bir komut eklerseniz, aynı hücrede pencere öğesi oluşturmak için sonraki bir komut ekleyemezsiniz. Pencere öğelerini başka bir hücrede oluşturmanız gerekir.
Bu örnek, not defterinden tüm pencere öğelerini kaldırır.
Python
dbutils.widgets.removeAll()
R
dbutils.widgets.removeAll()
Scala
dbutils.widgets.removeAll()
text komutu (dbutils.widgets.text)
Belirtilen program adı, varsayılan değer ve isteğe bağlı etikete sahip bir metin pencere öğesi oluşturur ve görüntüler.
Bu komutla ilgili yardım görüntülemek için komutunu çalıştırın dbutils.widgets.help("text")
.
Bu örnek, program adıyla your_name_text
bir metin pencere öğesi oluşturur ve görüntüler. başlangıç değerine Enter your name
ayarlanır. Bu metin pencere öğesinin eşlik eden bir etiketi Your name
vardır. Bu örnek, Enter your name
metin pencere öğesinin ilk değerini yazdırarak sona erer.
Python
dbutils.widgets.text(
name='your_name_text',
defaultValue='Enter your name',
label='Your name'
)
print(dbutils.widgets.get("your_name_text"))
# Enter your name
R
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"
Scala
dbutils.widgets.text(
"your_name_text",
"Enter your name",
"Your name"
)
print(dbutils.widgets.get("your_name_text"))
// Enter your name
SQL
CREATE WIDGET TEXT your_name_text DEFAULT "Enter your name"
SELECT :your_name_text
-- Enter your name
Databricks Yardımcı Programları API kitaplığı
Önemli
Databricks Utilities API (dbutils-api
) kitaplığı kullanım dışıdır. Bu kitaplık hala kullanılabilir olsa da, Databricks kitaplık için yeni özellik çalışması planlamaktadır dbutils-api
.
Databricks bunun yerine aşağıdaki kitaplıklardan birini kullanmanızı önerir:
Uygulama geliştirmeyi hızlandırmak için, uygulamaları üretim işi olarak dağıtmadan önce derlemek, derlemek ve test etmek yararlı olabilir. Databricks Yardımcı Programları'na karşı derlemenizi sağlamak için Databricks kitaplığı sağlar dbutils-api
. Kitaplığı Maven Deposu web sitesindeki DBUtils API web sayfasından indirebilir dbutils-api
veya derleme dosyanıza bağımlılık ekleyerek kitaplığı ekleyebilirsiniz:
SBT
libraryDependencies += "com.databricks" % "dbutils-api_TARGET" % "VERSION"
Maven
<dependency> <groupId>com.databricks</groupId> <artifactId>dbutils-api_TARGET</artifactId> <version>VERSION</version> </dependency>
Gradle
compile 'com.databricks:dbutils-api_TARGET:VERSION'
değerini istenen hedefle (örneğin2.12
) ve VERSION
istenen sürümle (örneğin0.0.5
) değiştirinTARGET
. Kullanılabilir hedeflerin ve sürümlerin listesi için Maven Deposu web sitesindeki DBUtils API web sayfasına bakın.
Uygulamanızı bu kitaplıkta derledikten sonra uygulamayı dağıtabilirsiniz.
Önemli
Kitaplık dbutils-api
, kullanan dbutils
bir uygulamayı yerel olarak derlemenizi sağlar, ancak çalıştırmak için derlemez. Uygulamayı çalıştırmak için Azure Databricks'te dağıtmanız gerekir.
Sınırlamalar
Yürütücülerin içinde çağrılması dbutils
beklenmeyen sonuçlara neden olabilir veya hatalara neden olabilir.
kullanarak dbutils
yürütücülerde dosya sistemi işlemlerini çalıştırmanız gerekiyorsa, birkaç daha hızlı ve daha ölçeklenebilir alternatif vardır:
- Dosya kopyalama veya taşıma işlemleri için Dosya sistemi işlemlerini paralelleştirme bölümünde açıklanan dosya sistemi işlemlerini çalıştırmanın daha hızlı bir seçeneğine de göz atabilirsiniz.
- Dosya sistemi listesi ve silme işlemleri için Databricks'te dosyaları daha hızlı listeleme ve silme bölümünde Spark kullanan paralel listeleme ve silme yöntemlerine başvurabilirsiniz.
Yürütücüler hakkında bilgi için Apache Spark web sitesinde Küme Moduna Genel Bakış bölümüne bakın.