Databricks 유틸리티

Databricks 유틸리티()를 통해 강력한 작업 조합을 쉽게 수행할 수 dbutils 있습니다. 유틸리티를 사용하여 개체 스토리지를 효율적으로 사용하고, Notebook을 연결 및 매개 변수화하고, 비밀을 사용할 수 있습니다. dbutils 는 Notebook 외부에서 지원되지 않습니다.

중요

dbutils실행기 내에서 를 호출하면 예기치 않은 결과가 발생할 수 있습니다. 대신 사용할 수 있는 및 대안의 제한에 대한 자세한 내용은 dbutilsdbutils

dbutils 유틸리티는 Python, R 및 Scala Notebook에서 사용할 수 있습니다.

방법:유틸리티 나열,명령 나열,명령 도움말 표시

유틸리티:데이터,fs,라이브러리,Notebook,비밀,위젯,유틸리티 API 라이브러리

사용 가능한 유틸리티 나열

각 유틸리티에 대한 간단한 설명과 함께 사용 가능한 유틸리티를 나열하려면 dbutils.help() Python 또는 Scala에 대해 를 실행합니다.

이 예제에서는 Databricks 유틸리티에 사용할 수 있는 명령을 나열합니다.

Python

dbutils.help()

Scala

dbutils.help()
This module provides various utilities for users to interact with the rest of Databricks.

fs: DbfsUtils -> Manipulates the Databricks filesystem (DBFS) from the console
library: LibraryUtils -> Utilities for session isolated libraries
notebook: NotebookUtils -> Utilities for the control flow of a notebook (EXPERIMENTAL)
secrets: SecretUtils -> Provides utilities for leveraging secrets within notebooks
widgets: WidgetsUtils -> Methods to create and get bound value of input widgets inside notebooks

유틸리티에 사용 가능한 명령 나열

각 명령에 대한 간단한 설명과 함께 유틸리티에 사용 가능한 명령을 나열하려면 .help() 유틸리티의 프로그래밍 방식 이름 뒤를 실행합니다.

이 예제에서는 DBFS(Databricks 파일 시스템) 유틸리티에 사용할 수 있는 명령을 나열합니다.

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

명령에 대한 도움말 표시

명령에 대한 도움말을 표시하려면 명령 .help("<command-name>") 이름 뒤를 실행합니다.

이 예제에서는 DBFS 복사 명령에 대한 도움말을 표시합니다.

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

데이터 유틸리티(dbutils.data)

중요

이 기능은 공개 미리 보기 상태입니다.

참고

Databricks Runtime 9.0 이상에서 사용할 수 있습니다.

명령:summarize

데이터 유틸리티를 사용하면 데이터 세트를 이해하고 해석할 수 있습니다. 사용 가능한 명령을 나열하려면 를 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 명령(dbutils.data.summarize)

Apache Spark DataFrame 또는 pandas DataFrame의 요약 통계를 계산하고 표시합니다. 이 명령은 Python, Scala 및 R에 사용할 수 있습니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.data.help("summarize") 실행합니다.

Databricks Runtime 10.1 이상에서는 추가 매개 변수를 사용하여 precise 계산된 통계의 전체 자릿수를 조정할 수 있습니다.

참고

이 기능은 공개 미리 보기 상태입니다.

  • precise가 false(기본값)로 설정된 경우 반환되는 일부 통계에는 런타임을 줄이기 위한 근사값이 포함됩니다.
    • 범주 열에 대한 고유 값의 수는 카디널리티가 높은 열에 대해 5% 정도의 상대 오차가 있을 수 있습니다.
    • 고유 값 수가 10000보다 크면 자주 값 개수에 최대 0.01%의 오류가 발생할 수 있습니다.
    • 히스토그램 및 백분위수 예상치의 총 행 수에 비해 최대 0.01%의 오류가 발생할 수 있습니다.
  • precise가 true로 설정되면 통계가 더 높은 정밀도로 계산됩니다. 이제 숫자 열에 대한 히스토그램 및 백분위수를 제외한 모든 통계가 정확합니다.
    • 히스토그램 및 백분위수 예상치의 총 행 수에 비해 최대 0.0001%의 오류가 발생할 수 있습니다.

데이터 요약 출력의 맨 위에 있는 도구 설명은 현재 실행 모드를 나타냅니다.

이 예제에서는 기본적으로 근사값이 사용하도록 설정된 Apache Spark DataFrame에 대한 요약 통계를 표시합니다. 결과를 보려면 Notebook에서 이 명령을 실행합니다. 이 예제는 Azure Databricks 데이터 세트를기반으로 합니다.

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)

시각화는 SI 표기법으로 0.01보다 작거나 10000보다 큰 숫자 값을 간결하게 렌더링합니다. 예를 들어 숫자 1.25e-15 값은 로 렌더링됩니다. 1.25f 한 가지 예외: 시각화는 B "" 1.0e9 대신 (B)에 G ""를 사용합니다.

파일 시스템 유틸리티(dbutils.fs)

명령:cp, head, ls, mkdirs, mount , mounts, mv, put, refreshMounts, rm, unmount, updateMount

파일 시스템 유틸리티를 사용하면 DBFS(Databricks File System)에액세스하여 파일 시스템으로 Azure Databricks 더 쉽게 사용할 수 있습니다. 사용 가능한 명령을 나열하려면 를 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 명령(dbutils.fs.cp)

파일 시스템 간에 파일 또는 디렉터리를 복사합니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.fs.help("cp") 실행합니다.

이 예제에서는 에서 로 라는 파일을 old_file.txt/FileStore/tmp/new 복사하고 복사한 파일의 이름을 로 new_file.txt 변경합니다.

Python

dbutils.fs.cp("/FileStore/old_file.txt", "/tmp/new/new_file.txt")

# Out[4]: True

R

dbutils.fs.cp("/FileStore/old_file.txt", "/tmp/new/new_file.txt")

# [1] TRUE

Scala

dbutils.fs.cp("/FileStore/old_file.txt", "/tmp/new/new_file.txt")

// res3: Boolean = true

head 명령(dbutils.fs.head)

지정된 파일의 지정된 최대 수 바이트까지 반환합니다. 바이트는 UTF-8로 인코딩된 문자열로 반환됩니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.fs.help("head") 실행합니다.

이 예제에서는 에 있는 파일의 처음 25바이트를 my_file.txt/tmp 표시합니다.

Python

dbutils.fs.head("/tmp/my_file.txt", 25)

# [Truncated to first 25 bytes]
# Out[12]: 'Apache Spark is awesome!\n'

R

dbutils.fs.head("/tmp/my_file.txt", 25)

# [1] "Apache Spark is awesome!\n"

Scala

dbutils.fs.head("/tmp/my_file.txt", 25)

// [Truncated to first 25 bytes]
// res4: String =
// "Apache Spark is awesome!
// "

ls 명령(dbutils.fs.ls)

디렉터리 내용을 나열합니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.fs.help("ls") 실행합니다.

이 예제에서는 의 내용에 대한 정보를 /tmp 표시합니다. 필드는 modificationTime Databricks Runtime 10.2 이상에서 사용할 수 있습니다. R에서 modificationTime 는 문자열로 반환됩니다.

Python

dbutils.fs.ls("/tmp")

# Out[13]: [FileInfo(path='dbfs:/tmp/my_file.txt', name='my_file.txt', size=40, modificationTime=1622054945000)]

R

dbutils.fs.ls("/tmp")

# For prettier results from dbutils.fs.ls(<dir>), please use `%fs ls <dir>`

# [[1]]
# [[1]]$path
# [1] "dbfs:/tmp/my_file.txt"

# [[1]]$name
# [1] "my_file.txt"

# [[1]]$size
# [1] 40

# [[1]]$isDir
# [1] FALSE

# [[1]]$isFile
# [1] TRUE

# [[1]]$modificationTime
# [1] "1622054945000"

Scala

dbutils.fs.ls("/tmp")

// res6: Seq[com.databricks.backend.daemon.dbutils.FileInfo] = WrappedArray(FileInfo(dbfs:/tmp/my_file.txt, my_file.txt, 40, 1622054945000))

mkdirs 명령(dbutils.fs.mkdirs)

지정된 디렉터리(없는 경우)를 만듭니다. 필요한 부모 디렉터리도 만듭니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.fs.help("mkdirs") 실행합니다.

이 예제에서는 내에 디렉터리 구조를 /parent/child/grandchild/tmp 만듭니다.

Python

dbutils.fs.mkdirs("/tmp/parent/child/grandchild")

# Out[15]: True

R

dbutils.fs.mkdirs("/tmp/parent/child/grandchild")

# [1] TRUE

Scala

dbutils.fs.mkdirs("/tmp/parent/child/grandchild")

// res7: Boolean = true

mount 명령(dbutils.fs.mount)

지정된 원본 디렉터리를 지정된 탑재 지점의 DBFS에 탑재합니다.

이 명령에 대한 도움말을 표시하려면 를 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>")))

추가 코드 예제는 Azure Blob storage를 참조 하세요.

mount 명령 (asils.. 개 탑재)

DBFS에 현재 탑재 된 항목에 대 한 정보를 표시 합니다.

이 명령에 대 한 도움말을 표시 하려면를 실행 dbutils.fs.help("mounts") 합니다.

Python

dbutils.fs.mounts()

Scala

dbutils.fs.mounts()

추가 코드 예제는 Azure Blob storage를 참조 하세요.

mv 명령 (dbutils.fs.mv)

파일 시스템에서 파일 또는 디렉터리를 이동 합니다. 이동은 파일 시스템 내에서 이동 하는 경우에도 삭제 후의 복사본입니다.

이 명령에 대 한 도움말을 표시 하려면를 실행 dbutils.fs.help("mv") 합니다.

이 예에서는 파일을 my_file.txt 에서 /FileStore 로 이동 /tmp/parent/child/granchild 합니다.

Python

dbutils.fs.mv("/FileStore/my_file.txt", "/tmp/parent/child/grandchild")

# Out[2]: True

R

dbutils.fs.mv("/FileStore/my_file.txt", "/tmp/parent/child/grandchild")

# [1] TRUE

Scala

dbutils.fs.mv("/FileStore/my_file.txt", "/tmp/parent/child/grandchild")

// res1: Boolean = true

put 명령 (\sils. fs. put)

지정 된 문자열을 파일에 씁니다. 문자열은 u t f-8로 인코딩됩니다.

이 명령에 대 한 도움말을 표시 하려면를 실행 dbutils.fs.help("put") 합니다.

이 예제에서는 Hello, Databricks! 에 있는 라는 파일에 문자열을 씁니다 hello_db.txt/tmp . 파일이 있으면 덮어씁니다.

Python

dbutils.fs.put("/tmp/hello_db.txt", "Hello, Databricks!", True)

# Wrote 18 bytes.
# Out[6]: True

R

dbutils.fs.put("/tmp/hello_db.txt", "Hello, Databricks!", TRUE)

# [1] TRUE

Scala

dbutils.fs.put("/tmp/hello_db.txt", "Hello, Databricks!", true)

// Wrote 18 bytes.
// res2: Boolean = true

refreshMounts 명령 (asils.

클러스터의 모든 컴퓨터가 탑재 캐시를 새로 고쳐 최신 정보를 받을 수 있도록 합니다.

이 명령에 대 한 도움말을 표시 하려면를 실행 dbutils.fs.help("refreshMounts") 합니다.

Python

dbutils.fs.refreshMounts()

Scala

dbutils.fs.refreshMounts()

Additiional 코드 예제는 Azure Blob storage를 참조 하세요.

rm 명령 (dbsils. fs)

파일이 나 디렉터리를 제거 합니다.

이 명령에 대 한 도움말을 표시 하려면를 실행 dbutils.fs.help("rm") 합니다.

이 예제에서는에서 이름이 인 파일을 제거 합니다 hello_db.txt/tmp .

Python

dbutils.fs.rm("/tmp/hello_db.txt")

# Out[8]: True

R

dbutils.fs.rm("/tmp/hello_db.txt")

# [1] TRUE

Scala

dbutils.fs.rm("/tmp/hello_db.txt")

// res6: Boolean = true

분리 명령 (. d a.

DBFS 탑재 지점을 삭제 합니다.

이 명령에 대 한 도움말을 표시 하려면를 실행 dbutils.fs.help("unmount") 합니다.

dbutils.fs.unmount("/mnt/<mount-name>")

추가 코드 예제는 Azure Blob storage를 참조 하세요.

updateMount 명령 (updateMount)

dbutils.fs.mount명령과 비슷하지만 새 탑재 지점을 만드는 대신 기존 탑재 지점을 업데이트 합니다. 탑재 지점이 없는 경우 오류를 반환 합니다.

이 명령에 대 한 도움말을 표시 하려면를 실행 dbutils.fs.help("updateMount") 합니다.

이 명령은 Databricks Runtime 10.2 이상에서 사용할 수 있습니다.

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

라이브러리 유틸리티 (esils. library)

참고

라이브러리 유틸리티는 더 이상 사용 되지 않습니다.

명령: install, installpypi, list, restartPython, updateCondaEnv

라이브러리 유틸리티를 사용 하면 Python 라이브러리를 설치 하 고 노트북 세션으로 범위가 지정 된 환경을 만들 수 있습니다. 라이브러리는 드라이버와 실행 기에서 모두 사용할 수 있으므로 사용자 정의 함수에서 라이브러리를 참조할 수 있습니다. 그러면 다음과 같은 이점이 있습니다.

  • 노트북 자체 내에서 구성할 노트북의 라이브러리 종속성
  • 서로 다른 라이브러리 종속성이 있는 노트북 사용자는 장애 없이 클러스터를 공유할 수 있습니다.

노트북을 분리 하면이 환경이 손상 됩니다. 그러나 노트북에서 library API 명령을 다시 실행 하 여 다시 만들 수 있습니다 install . restartPython환경 손실 없이 노트북 상태를 다시 설정 하는 방법에 대 한 API를 참조 하세요.

중요

라이브러리 유틸리티는 Databricks Runtime ML 또는 Databricks Runtime Genomics에서 사용할 수 없습니다. 대신, 노트북 범위의 Python 라이브러리를 참조 하세요.

Databricks Runtime 7.2 이상에서는 매직 명령을 사용 하 여 노트북 범위의 라이브러리를 설치 하는 것이 좋습니다 %pip . Notebook 범위의 Python 라이브러리를 참조하세요.

라이브러리 유틸리티는 기본적으로 사용 하도록 설정 되어 있습니다. 따라서 기본적으로 각 노트북에 대 한 Python 환경은 노트북을 연결할 때 생성 되는 별도의 Python 실행 파일을 사용 하 여 격리 되며 클러스터의 기본 Python 환경을 상속 합니다. Azure Databricks Python 환경으로 init 스크립트 를 통해 설치 된 라이브러리는 계속 사용할 수 있습니다. 을로 설정 하 여이 기능을 사용 하지 않도록 설정할 수 있습니다 spark.databricks.libraryIsolation.enabledfalse .

이 API는 UI 를 통해 기존 클러스터 전체 라이브러리 설치와 호환 되며 REST API합니다. 이 API를 통해 설치 되는 라이브러리의 우선 순위는 클러스터 수준 라이브러리 보다 높습니다 .

사용 가능한 명령을 나열 하려면를 실행 dbutils.library.help() 합니다.

install(path: String): boolean -> Install the library within the current notebook session
installPyPI(pypiPackage: String, version: String = "", repo: String = "", extras: String = ""): boolean -> Install the PyPI library within the current notebook session
list: List -> List the isolated libraries added for the current notebook session via dbutils
restartPython: void -> Restart python process for the current notebook session
updateCondaEnv(envYmlContent: String): boolean -> Update the current notebook's Conda environment based on the specification (content of environment

install 명령 (\sils. library. install)

라이브러리에 대 한 경로가 지정 된 경우는 현재 노트북 세션 내에 해당 라이브러리를 설치 합니다. 이 명령을 호출 하 여 설치한 라이브러리는 현재 전자 필기장에만 사용할 수 있습니다.

이 명령에 대 한 도움말을 표시 하려면를 실행 dbutils.library.help("install") 합니다.

이 예제에서는 .egg 노트북 내에 또는 라이브러리를 설치 .whl 합니다.

중요

Databricks은 노트북의 첫 번째 셀에 모든 라이브러리 설치 명령을 추가 하 고 restartPython 해당 셀의 끝에서를 호출 하는 것이 좋습니다. Python 노트북 상태는 실행 후 다시 설정 됩니다 restartPython . 노트북은 지역 변수, 가져온 라이브러리 및 기타 임시 상태를 비롯 한 모든 상태를 손실 합니다. 따라서 라이브러리를 설치 하 고 첫 번째 노트북 셀에서 노트북 상태를 다시 설정 하는 것이 좋습니다.

허용 되는 라이브러리 소스는 dbfs ,, abfssadlwasbs 입니다.

dbutils.library.install("abfss:/path/to/your/library.egg")
dbutils.library.restartPython() # Removes Python state, but some libraries might not work without calling this command.
dbutils.library.install("abfss:/path/to/your/library.whl")
dbutils.library.restartPython() # Removes Python state, but some libraries might not work without calling this command.

참고

을 사용 하 여 사용자 지정 휠 파일을 직접 설치할 수 있습니다 %pip . 다음 예제에서는 DBFS에 라이브러리 휠 파일을 업로드 했다고 가정 합니다.

%pip install /dbfs/path/to/your/library.whl

알 파일은 pip에서 지원 되지 않으며, wheel은 빌드에 대 한 표준 및 Python 용 이진 패키징으로 간주 됩니다. 자세한 내용은 휠 vs 정보를 참조 하세요. 그러나와 호환 되는 방식으로 특정 파일을 사용 하려는 경우에는 %pip 다음 해결 방법을 사용할 수 있습니다.

# This step is only needed if no %pip commands have been run yet.
# It will trigger setting up the isolated notebook environment
%pip install <any-lib>  # This doesn't need to be a real library; for example "%pip install any-lib" would work
import sys
# Assuming the preceding step was completed, the following command
# adds the egg file to the current notebook environment
sys.path.append("/local/path/to/library.egg")

installPyPI 명령 (dbutils. library. installPyPI)

PyPI (Python 패키지 인덱스) 패키지가 지정 된 경우 현재 노트북 세션 내에 해당 패키지를 설치 합니다. 이 명령을 호출 하 여 설치 된 라이브러리는 노트북 간에 격리 됩니다.

이 명령에 대 한 도움말을 표시 하려면를 실행 dbutils.library.help("installPyPI") 합니다.

이 예제에서는 노트북에 PyPI 패키지를 설치 합니다. version, repoextras 는 선택 사항입니다. 인수를 사용 extras 하 여 extras (추가 요구 사항)을 지정 합니다.

dbutils.library.installPyPI("pypipackage", version="version", repo="repo", extras="extras")
dbutils.library.restartPython()  # Removes Python state, but some libraries might not work without calling this command.

중요

versionextras 키는 PyPI 패키지 문자열의 일부일 수 없습니다. 예: dbutils.library.installPyPI("azureml-sdk[databricks]==1.19.0") 가 잘못 되었습니다. 및 version 인수를 사용하여 버전 및 추가 정보를 다음과 같이 extras 지정합니다.

dbutils.library.installPyPI("azureml-sdk", version="1.19.0", extras="databricks")
dbutils.library.restartPython()  # Removes Python state, but some libraries might not work without calling this command.

참고

명령을 명령으로 바꾸는 경우 dbutils.library.installPyPI%pip Python 인터프리터가 자동으로 다시 시작됩니다. 다음과 같이 install 명령을 실행할 수 있습니다.

%pip install azureml-sdk[databricks]==1.19.0

이 예제에서는 한 Notebook에서 라이브러리 요구 사항을 지정하고 다른 Notebook에서 를 사용하여 %run 설치합니다. 이렇게 하려면 먼저 Notebook에 설치할 라이브러리를 정의합니다. 이 예제에서는 라는 Notebook을 InstallDependencies 사용합니다.

dbutils.library.installPyPI("torch")
dbutils.library.installPyPI("scikit-learn", version="1.19.1")
dbutils.library.installPyPI("azureml-sdk", extras="databricks")
dbutils.library.restartPython() # Removes Python state, but some libraries might not work without calling this command.

그런 다음, 해당 dependencies가 필요한 Notebook에 설치합니다.

%run /path/to/InstallDependencies # Install the dependencies in the first cell.
import torch
from sklearn.linear_model import LinearRegression
import azureml
...

이 예제에서는 환경을 유지하면서 Python Notebook 상태를 다시 설정합니다. 이 기술은 Python Notebook에서만 사용할 수 있습니다. 예를 들어 이 기술을 사용하여 다른 버전으로 미리 설치된 Azure Databricks 라이브러리를 다시 로드할 수 있습니다.

dbutils.library.installPyPI("numpy", version="1.15.4")
dbutils.library.restartPython()
# Make sure you start using the library in another cell.
import numpy

이 기술을 사용하여 프로세스 시작 시 로드해야 하는 tensorflow와 같은 라이브러리를 설치할 수도 있습니다.

dbutils.library.installPyPI("tensorflow")
dbutils.library.restartPython()
# Use the library in another cell.
import tensorflow

list 명령(dbutils.library.list)

라이브러리 유틸리티를 통해 현재 Notebook 세션에 대해 추가된 격리된 라이브러리를 나열합니다. 클러스터에 연결된 라이브러리는 포함되지 않습니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.library.help("list") 실행합니다.

이 예제에서는 Notebook에 설치된 라이브러리를 나열합니다.

dbutils.library.list()

참고

를 사용하는 이 명령과 동일한 %pip 방법은 다음과 같습니다.

%pip freeze

restartPython 명령(dbutils.library.restartPython)

현재 Notebook 세션에 대한 Python 프로세스를 다시 시작합니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.library.help("restartPython") 실행합니다.

이 예제에서는 현재 Notebook 세션에 대한 Python 프로세스를 다시 시작합니다.

dbutils.library.restartPython() # Removes Python state, but some libraries might not work without calling this command.

updateCondaEnv 명령(dbutils.library.updateCondaEnv)

의 내용에 따라 현재 Notebook의 Conda 환경을 environment.yml 업데이트합니다. 이 메서드는 Conda의 Databricks Runtime 대해서만 지원됩니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.library.help("updateCondaEnv") 실행합니다.

이 예제에서는 제공된 사양의 내용에 따라 현재 Notebook의 Conda 환경을 업데이트합니다.

dbutils.library.updateCondaEnv(
"""
channels:
  - anaconda
dependencies:
  - gensim=3.4
  - nltk=3.4
""")

Notebook 유틸리티(dbutils.notebook)

명령:종료,실행

Notebook 유틸리티를 사용하면 Notebook을 함께 연결하고 결과에 따라 작동할 수 있습니다. Notebook 워크플로를 참조하세요.

사용 가능한 명령을 나열하려면 를 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 명령(dbutils.notebook.exit)

값이 있는 Notebook을 종료합니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.notebook.help("exit") 실행합니다.

이 예제에서는 값이 인 Notebook을 Exiting from My Other Notebook 종료합니다.

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

run 명령(dbutils.notebook.run)

Notebook을 실행하고 해당 종료 값을 반환합니다. Notebook은 기본적으로 현재 클러스터에서 실행됩니다.

참고

명령에서 반환된 문자열 값의 최대 run 길이는 5MB입니다. 단일 실행에 대한 출력 얻기()를 참조하세요.

이 명령에 대한 도움말을 표시하려면 를 dbutils.notebook.help("run") 실행합니다.

이 예제에서는 호출 Notebook과 동일한 위치에서 라는 My Other Notebook Notebook을 실행합니다. 호출된 Notebook은 코드 줄로 dbutils.notebook.exit("Exiting from My Other Notebook") 끝납니다. 호출된 Notebook이 60초 이내에 실행을 완료하지 않으면 예외가 throw됩니다.

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

비밀 유틸리티(dbutils.secrets)

명령: get, getBytes, list, listScopes

비밀 유틸리티를 사용하면 중요한 자격 증명 정보를 Notebook에 표시하지 않고도 저장하고 액세스할 수 있습니다. 비밀 관리Notebook에서 비밀 사용을참조하세요. 사용 가능한 명령을 나열하려면 를 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 명령(dbutils.secrets.get)

지정된 비밀 범위 및 키에 대한 비밀 값의 문자열 표현을 가져옵니다.

경고

관리자, 비밀 작성자 및 권한이 부여된 사용자는 Azure Databricks 비밀을 읽을 수 있습니다. Azure Databricks는 Notebook에 표시될 수 있는 비밀 값을 수정하려 하지만 이러한 사용자가 비밀을 읽지 못하도록 할 수는 없습니다. 자세한 내용은 비밀 수정을 참조하세요.

이 명령에 대한 도움말을 표시하려면 를 dbutils.secrets.help("get") 실행합니다.

이 예제에서는 라는 범위와 라는 키에 대한 비밀 값의 문자열 my-scope 표현을 my-key 가져옵니다.

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 명령(dbutils.secrets.getBytes)

지정된 범위 및 키에 대한 비밀 값의 바이트 표현을 가져옵니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.secrets.help("getBytes") 실행합니다.

이 예제에서는 라는 범위와 라는 키에 대한 비밀 값( a1!b2@c3#my-scope )을 my-key 가져옵니다.

Python

my_secret = dbutils.secrets.getBytes(scope="my-scope", key="my-key")
my_secret.decode("utf-8")

# Out[1]: 'a1!b2@c3#'

R

my_secret = dbutils.secrets.getBytes(scope="my-scope", key="my-key")
print(rawToChar(my_secret))

# [1] "a1!b2@c3#"

Scala

val mySecret = dbutils.secrets.getBytes(scope="my-scope", key="my-key")
val convertedString = new String(mySecret)
println(convertedString)

// a1!b2@c3#
// mySecret: Array[Byte] = Array(97, 49, 33, 98, 50, 64, 99, 51, 35)
// convertedString: String = a1!b2@c3#

list 명령(dbutils.secrets.list)

지정된 범위 내의 비밀에 대한 메타데이터를 나열합니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.secrets.help("list") 실행합니다.

이 예제에서는 라는 범위 내에서 비밀에 대한 메타데이터를 my-scope 나열합니다.

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 명령(dbutils.secrets.listScopes)

사용 가능한 범위를 나열합니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.secrets.help("listScopes") 실행합니다.

이 예제에서는 사용 가능한 범위를 나열합니다.

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

위젯 유틸리티(dbutils.widgets)

명령:combobox, 드롭다운, get, getArgument, multiselect, remove , removeAll, text

위젯 유틸리티를 사용하면 Notebook을 매개 변수화할 수 있습니다. 위젯을 참조하세요.

사용 가능한 명령을 나열하려면 를 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
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 명령(dbutils.widgets.combobox)

지정된 프로그래밍 이름, 기본값, 선택 사항 및 선택적 레이블을 가진 콤보 상자 위젯을 만들고 표시합니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.widgets.help("combobox") 실행합니다.

이 예제에서는 프로그래밍 이름 를 가진 콤보 상자 위젯을 만들고 fruits_combobox 표시합니다. 선택 항목인 , , 및 를 제공하며 의 applebanana 초기 coconutdragon fruit 값으로 banana 설정됩니다. 이 콤보 상자 위젯에는 함께 제공되는 레이블이 Fruits 있습니다. 이 예제는 콤보 상자 위젯 의 초기 값을 인쇄하여 banana 끝납니다.

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

dropdown 명령(dbutils.widgets.dropdown)

지정된 프로그래밍 이름, 기본값, 선택 사항 및 선택적 레이블을 가진 드롭다운 위젯을 만들고 표시합니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.widgets.help("dropdown") 실행합니다.

이 예제에서는 프로그래밍 이름 를 가진 드롭다운 위젯을 만들고 toys_dropdown 표시합니다. 선택 항목인 , , 및 를 제공하며 의 alphabet blocksbasketball 초기 capedoll 값으로 basketball 설정됩니다. 이 드롭다운 위젯에는 함께 제공되는 레이블이 Toys 있습니다. 이 예제는 드롭다운 위젯의 초기 값 를 인쇄하여 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

get 명령(dbutils.widgets.get)

지정된 프로그래밍 이름을 가진 위젯의 현재 값을 가져옵니다. 이 프로그래밍 방식 이름은 다음 중 하나일 수 있습니다.

  • Notebook의 사용자 지정 위젯 이름(예: fruits_combobox 또는 toys_dropdown )입니다.
  • Notebook 태스크의 일부로 Notebook에 전달된 사용자 지정 매개 변수의 이름(예: name 또는 age )입니다. 자세한 내용은 작업 UI 만들기 또는 작업 API에서 새 작업 실행 트리거( ) 작업의 필드에 있는 Notebook 태스크에 대한 매개 변수의 적용 범위를 참조하세요.

이 명령에 대한 도움말을 표시하려면 를 dbutils.widgets.help("get") 실행합니다.

이 예제에서는 프로그래밍 방식 이름이 인 위젯의 값을 fruits_combobox 가져옵니다.

Python

dbutils.widgets.get('fruits_combobox')

# banana

R

dbutils.widgets.get('fruits_combobox')

# [1] "banana"

Scala

dbutils.widgets.get("fruits_combobox")

// res6: String = banana

이 예제에서는 프로그래밍 방식 이름이 인 Notebook 작업 매개 변수의 값을 age 가져옵니다. 이 매개 변수는 관련 Notebook 작업이 실행되었을 때 로 35 설정되었습니다.

Python

dbutils.widgets.get('age')

# 35

R

dbutils.widgets.get('age')

# [1] "35"

Scala

dbutils.widgets.get("age")

// res6: String = 35

getArgument 명령(dbutils.widgets.getArgument)

지정된 프로그래밍 이름을 가진 위젯의 현재 값을 가져옵니다. 위젯이 없으면 선택적 메시지를 반환할 수 있습니다.

참고

이 명령은 더 이상 사용되지 않습니다. 대신 dbutils.widgets.get을 사용하세요.

이 명령에 대한 도움말을 표시하려면 를 dbutils.widgets.help("getArgument") 실행합니다.

이 예제에서는 프로그래밍 방식 이름이 인 위젯의 값을 fruits_combobox 가져옵니다. 이 위젯이 없으면 메시지가 Error: Cannot find fruits combobox 반환됩니다.

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 명령(dbutils.widgets.multiselect)

지정된 프로그래밍 이름, 기본값, 선택 사항 및 선택적 레이블을 가진 다중 선택 위젯을 만들고 표시합니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.widgets.help("multiselect") 실행합니다.

이 예제에서는 프로그래밍 이름 를 가진 다중 선택 위젯을 만들고 days_multiselect 표시합니다. 를 통해 선택 항목을 MondaySunday 제공하며 의 초기 값으로 Tuesday 설정됩니다. 이 다중 선택 위젯에는 함께 제공되는 레이블이 Days of the Week 있습니다. 이 예제는 다중 선택 위젯 의 초기 값을 인쇄하여 Tuesday 끝납니다.

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

remove 명령(dbutils.widgets.remove)

지정된 프로그래밍 이름을 가진 위젯을 제거합니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.widgets.help("remove") 실행합니다.

중요

위젯을 제거하는 명령을 추가하는 경우 동일한 셀에 위젯을 만드는 후속 명령을 추가할 수 없습니다. 다른 셀에 위젯을 만들어야 합니다.

이 예제에서는 프로그래밍 이름 를 가진 위젯을 fruits_combobox 제거합니다.

Python

dbutils.widgets.remove('fruits_combobox')

R

dbutils.widgets.remove('fruits_combobox')

Scala

dbutils.widgets.remove("fruits_combobox")

removeAll 명령(dbutils.widgets.removeAll)

Notebook에서 모든 위젯을 제거합니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.widgets.help("removeAll") 실행합니다.

중요

모든 위젯을 제거하는 명령을 추가하는 경우 다음 명령을 추가하여 동일한 셀에 위젯을 만들 수 없습니다. 다른 셀에 위젯을 만들어야 합니다.

이 예제에서는 Notebook에서 모든 위젯을 제거합니다.

Python

dbutils.widgets.removeAll()

R

dbutils.widgets.removeAll()

Scala

dbutils.widgets.removeAll()

text 명령(dbutils.widgets.text)

지정된 프로그래밍 이름, 기본값 및 선택적 레이블을 가진 텍스트 위젯을 만들고 표시합니다.

이 명령에 대한 도움말을 표시하려면 를 dbutils.widgets.help("text") 실행합니다.

이 예제에서는 프로그래밍 이름 를 가진 텍스트 위젯을 만들고 your_name_text 표시합니다. 의 초기 값으로 Enter your name 설정됩니다. 이 텍스트 위젯에는 함께 제공되는 레이블이 Your name 있습니다. 이 예제는 텍스트 위젯 의 초기 값을 인쇄하여 Enter your name 끝납니다.

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

Databricks 유틸리티 API 라이브러리

애플리케이션 개발을 가속화하려면 프로덕션 작업으로 배포하기 전에 애플리케이션을 컴파일, 빌드 및 테스트하는 것이 도움이 될 수 있습니다. Databricks 유틸리티에 대해 컴파일할 수 있도록 Databricks는 dbutils-api 라이브러리를 제공합니다. dbutils-apiMaven 리포지토리 웹 사이트의 dbutils-api 웹 페이지에서 라이브러리를 다운로드하거나 빌드 파일에 종속성을 추가하여 라이브러리를 포함할 수 있습니다.

  • 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'
    

TARGET를 원하는 대상(예: 2.12 )으로 바꾸고 를 원하는 VERSION 버전(예: 0.0.5 )으로 대체합니다. 사용 가능한 대상 및 버전 목록은 Maven 리포지토리 웹 사이트의 DBUtils API 웹 페이지를 참조하세요.

이 라이브러리에 대해 애플리케이션을 빌드한 후에는 애플리케이션을 배포할 수 있습니다.

중요

dbutils-api라이브러리를 사용하면 를 사용하는 애플리케이션을 로컬로 dbutils 컴파일할 수 있지만 실행할 수는 없습니다. 애플리케이션을 실행하려면 Azure Databricks 배포해야 합니다.

제한 사항

실행기 내에서 를 호출하면 dbutils 예기치 않은 결과가 발생하거나 오류가 발생할 수 있습니다.

를 사용하여 실행기에서 파일 시스템 작업을 실행해야 하는 경우 dbutils 몇 가지 빠르고 확장성 있는 대체 방법을 사용할 수 있습니다.

  • 파일 복사 또는 이동 작업의 경우 파일 시스템 작업 병렬화에설명된 파일 시스템 작업을 실행하는 더 빠른 옵션을 확인할 수 있습니다.
  • 파일 시스템 목록 및 삭제 작업의 경우 Databricks에서 파일을 더 빠르게 나열하고삭제하는 방법에서 Spark를 활용하는 병렬 나열 및 삭제 메서드를 참조할 수 있습니다.

실행자에 대 한 자세한 내용은 Apache Spark 웹 사이트에서 클러스터 모드 개요 를 참조 하세요.