Databricks 유틸리티(
이 문서에는 Databricks 유틸리티(dbutils
)에 대한 참조가 포함되어 있습니다. 유틸리티는 노트북에서 Databricks 환경과 함께 작업할 수 있는 명령을 제공합니다. 예를 들어 파일 및 개체 스토리지를 관리하고 비밀로 작업할 수 있습니다.
dbutils
는 Python, R 및 Scala 노트북에서 사용할 수 있습니다.
참고
dbutils
는 DBFS를 사용하는 컴퓨팅 환경만 지원합니다.
유틸리티 모듈
다음 표에서는 dbutils.help()
사용하여 검색할 수 있는 Databricks 유틸리티 모듈을 나열합니다.
모듈 | 묘사 |
---|---|
데이터 | 데이터 세트 이해 및 상호 작용을 위한 유틸리티(실험적) |
fs | DBFS(Databricks 파일 시스템)에 액세스하기 위한 유틸리티 |
일자리 | 작업 기능을 활용하기 위한 유틸리티 |
라이브러리 | 더 이상 사용되지 않음. 세션 범위 라이브러리를 관리하기 위한 유틸리티 |
노트북 | 노트북의 제어 흐름을 관리하기 위한 유틸리티 (실험적) |
비밀 | Notebook 내에서 비밀을 활용하기 위한 유틸리티 |
위젯 | 노트북을 매개변수화하기 위한 유틸리티입니다. |
api | 애플리케이션 빌드를 관리하기 위한 유틸리티 |
명령어 도움말
각 명령에 대한 간단한 설명과 함께 유틸리티 모듈에 대한 명령을 나열하려면 유틸리티 모듈 이름 앞에 .help()
추가합니다. 다음 예제에서는 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
명령에 대한 도움말을 출력하려면 dbutils.<utility-name>.help("<command-name>")
실행합니다. 다음의 예제는 파일 시스템 유틸리티 복사 명령에 대한 도움말을 표시합니다: 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
데이터 유틸리티(dbutils.data)
중요한
이 기능은 공개 미리 보기 상태입니다.
참고
Databricks Runtime 9.0 이상에서 사용할 수 있습니다.
데이터 유틸리티를 사용하면 데이터 세트를 이해하고 상호 작용할 수 있습니다.
다음 표에서는 dbutils.data.help()
사용하여 검색할 수 있는 이 유틸리티에 사용할 수 있는 명령을 나열합니다.
명령 | 묘사 |
---|---|
요약 | Spark DataFrame을 요약하고 통계를 시각화하여 빠른 인사이트를 얻습니다. |
summarize 명령어(dbutils.data.summarize)
참고
이 기능은 공개 미리 보기 상태입니다.
summarize(df: Object, precise: boolean): void
Apache Spark DataFrame 또는 pandas DataFrame의 요약 통계를 계산하고 표시합니다. 이 명령은 Python, Scala 및 R에서 사용할 수 있습니다.
중요한
이 명령은 DataFrame의 전체 콘텐츠를 분석합니다. 매우 큰 DataFrame에 대해 이 명령을 실행하면 비용이 많이 들 수 있습니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.data.help("summarize")
Databricks Runtime 10.4 LTS 이상에서는, precise
매개 변수를 추가로 사용하여 계산된 통계의 정밀도를 조정할 수 있습니다.
-
precise
가 false(기본값)로 설정되면 일부 반환된 통계에는 런타임을 줄이기 위한 근사값이 포함됩니다.- 범주형 열에 대한 고유 값의 수에는 카디널리티가 높은 열에 대한 ~5% 이하의 상대 오차가 있을 수 있습니다.
- 고유 값의 수가 10,000개보다 크면 자주 발생하는 값의 수에 최대 0.01%의 오차가 있을 수 있습니다.
- 히스토그램 및 백분위수 추정치에는 총 행 수에 비해 최대 0.01%의 오차가 있을 수 있습니다.
-
precise
가 true로 설정되면 통계가 더 높은 정밀도로 계산됩니다. 이제 숫자 열에 대한 히스토그램 및 백분위수를 제외한 모든 통계가 정확합니다.- 히스토그램 및 백분위수 추정치는 총 행 수에 비해 최대 0.0001%의 오류가 있을 수 있습니다.
데이터 요약 출력의 맨 위에 있는 도구 설명은 현재 실행의 모드를 나타냅니다.
예시
다음 예제에서는 기본적으로 사용하도록 설정된 근사값과 함께 Apache Spark DataFrame에 대한 요약 통계를 표시합니다. 결과를 보려면 Notebook에서 이 명령을 실행합니다. 이 예제는 샘플 데이터 세트를 기반으로 합니다.
파이썬
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)
스칼라
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
(giga)"에 대해 "G
"를 사용합니다.
파일 시스템 유틸리티(dbutils.fs)
파일 시스템 유틸리티를 사용하면 DBFS란 무엇인가?에 액세스할 수 있습니다.
작업 영역 파일에 액세스하려면 작업 영역 파일과 함께 %sh ls
명령을 사용할 때 몇 가지 제한 사항이 있으므로 dbutils.fs
같은 셸 명령을 사용합니다.
경고
모든 dbutils.fs
메서드의 Python 구현은 키워드 서식 지정을 위한 snake_case
대신 camelCase
를 사용합니다.
예를 들어, dbutils.fs.help()
는 extraConfigs
에 대한 옵션을 dbutils.fs.mount()
에 표시합니다. 그러나 Python에서는 키워드 extra_configs
를 사용합니다.
다음 표에서는 dbutils.fs.help()
사용하여 검색할 수 있는 이 유틸리티에 사용할 수 있는 명령을 나열합니다.
명령 | 묘사 |
---|---|
cp | FileSystems 간에 파일 또는 디렉터리를(수도 있는) 복사합니다. |
헤드 | 지정된 파일의 첫 번째 'maxBytes' 바이트를 UTF-8로 인코딩된 문자열로 반환합니다. |
ls | 디렉터리의 내용을 나열합니다. |
mkdirs | 지정된 디렉터리가 없는 경우 해당 디렉터리를 만들고 필요한 부모 디렉터리도 만듭니다. |
탑재 | 지정된 탑재 지점의 DBFS에 지정된 원본 디렉터리를 탑재합니다. |
가을 탑재한 | DBFS 내에 탑재된 내용에 대한 정보를 표시합니다. |
mv | 파일 또는 디렉터리를 파일 시스템 간에 이동할 수 있습니다. |
에을(를) 넣습니다. | 지정된 문자열을 UTF-8로 인코딩된 파일에 씁니다. |
refreshMounts | 이 클러스터의 모든 컴퓨터가 탑재 캐시를 새로 고치도록 하여 최신 정보를 받도록 합니다. |
마이크로미터 | 파일 또는 디렉터리를 제거합니다. |
마운트 해제 | DBFS 탑재 지점을 삭제합니다. |
updateMount | mount()과 비슷하지만 새 탑재 지점을 만드는 대신 기존 탑재 지점을 업데이트합니다. |
팁
Notebook에서 %fs
매직 명령을 사용하여 DBFS에 액세스할 수 있습니다. 예를 들어 %fs ls /Volumes/main/default/my-volume/
은 dbutils.fs.ls("/Volumes/main/default/my-volume/")
과 같습니다.
매직 명령을 참조하세요.
cp 명령어(dbutils.fs.cp)
cp(from: String, to: String, recurse: boolean = false): boolean
파일 또는 디렉터리를 파일 시스템 간에 복사합니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.fs.help("cp")
예시
이 예제에서는 data.csv
이라는 파일을 동일 볼륨 내의 /Volumes/main/default/my-volume/
에서 new-data.csv
으로 복사합니다.
파이썬
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
스칼라
dbutils.fs.cp("/Volumes/main/default/my-volume/data.csv", "/Volumes/main/default/my-volume/new-data.csv")
// res3: Boolean = true
head 명령(dbutils.fs.head)
head(file: String, maxBytes: int = 65536): String
지정된 파일에서 지정된 최대 바이트 수까지 반환합니다. 바이트는 UTF-8로 인코딩된 문자열로 반환됩니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.fs.help("head")
예시
다음 예제에서는 data.csv
에 있는 /Volumes/main/default/my-volume/
파일의 처음 25바이트를 표시합니다.
파이썬
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"
스칼라
dbutils.fs.head("/Volumes/main/default/my-volume/data.csv", 25)
// [Truncated to first 25 bytes]
// res4: String =
// "Year,First Name,County,Se"
ls 명령(dbutils.fs.ls)
ls(dir: String): Seq
디렉터리의 콘텐츠를 나열합니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.fs.help("ls")
예시
다음 예제에서는 /Volumes/main/default/my-volume/
의 콘텐츠에 대한 정보를 표시합니다.
modificationTime
필드는 Databricks Runtime 10.4 LTS 이상에서 사용할 수 있습니다. R에서 modificationTime
은 문자열로 반환됩니다.
파이썬
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"
스칼라
dbutils.fs.ls("/tmp")
// res6: Seq[com.databricks.backend.daemon.dbutils.FileInfo] = WrappedArray(FileInfo(/Volumes/main/default/my-volume/data.csv, 2258987, 1711357839000))
mkdirs 명령어(dbutils.fs.mkdirs)
mkdirs(dir: String): boolean
없는 경우 지정된 디렉터리를 만듭니다. 필요한 부모 디렉터리도 만듭니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.fs.help("mkdirs")
예시
이 예제에서는 디렉터리 my-data
을 /Volumes/main/default/my-volume/
에 만듭니다.
파이썬
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
스칼라
dbutils.fs.mkdirs("/Volumes/main/default/my-volume/my-data")
// res7: Boolean = true
mount 명령(dbutils.fs.mount)
mount(source: String, mountPoint: String, encryptionType: String = "",
owner: String = null, extraConfigs: Map = Map.empty[String, String]): boolean
지정된 원본 디렉터리를 DBFS의 지정된 탑재 지점에 탑재합니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.fs.help("mount")
예시
파이썬
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>")})
스칼라
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 Data Lake Storage 및 Blob Storage 연결을 참조하세요.
"mounts" 명령(dbutils.fs.mounts)
mounts: Seq
현재 DBFS 내에 탑재된 항목에 대한 정보를 표시합니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.fs.help("mounts")
예시
경고
실행 중인 다른 모든 클러스터에서 dbutils.fs.refreshMounts()
을 호출하여 새 탑재 내용을 전파합니다.
refreshMounts 명령(dbutils.fs.refreshMounts)을 참조하세요.
파이썬
dbutils.fs.mounts()
스칼라
dbutils.fs.mounts()
추가 코드 예제는 Azure Data Lake Storage 및 Blob Storage 연결을 참조하세요.
mv 명령(dbutils.fs.mv)
mv(from: String, to: String, recurse: boolean = false): boolean
파일 또는 디렉터리를 파일 시스템 간에 이동합니다. 이동은 파일 시스템 내의 이동에 대해서도 복사 후 삭제입니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.fs.help("mv")
예시
다음 예제에서는 rows.csv
파일을 /Volumes/main/default/my-volume/
에서 /Volumes/main/default/my-volume/my-data/
로 이동합니다.
파이썬
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
스칼라
dbutils.fs.mv("/Volumes/main/default/my-volume/rows.csv", "/Volumes/main/default/my-volume/my-data/")
// res1: Boolean = true
put 명령(dbutils.fs.put)
put(file: String, contents: String, overwrite: boolean = false): boolean
지정된 문자열을 파일에 씁니다. 문자열은 UTF-8로 인코딩됩니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.fs.help("put")
예시
다음 예제에서는 Hello, Databricks!
문자열을 hello.txt
의 /Volumes/main/default/my-volume/
라는 파일에 씁니다. 해당 파일이 존재하면 덮어쓰게 됩니다.
파이썬
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
스칼라
dbutils.fs.put("/Volumes/main/default/my-volume/hello.txt", "Hello, Databricks!", true)
// Wrote 2258987 bytes.
// res2: Boolean = true
refreshMounts 명령(dbutils.fs.refreshMounts)
refreshMounts: boolean
클러스터의 모든 컴퓨터에서 탑재 캐시를 새로 고쳐 최신 정보를 받도록 합니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.fs.help("refreshMounts")
예시
파이썬
dbutils.fs.refreshMounts()
스칼라
dbutils.fs.refreshMounts()
추가 코드 예제를 보려면 Azure Data Lake Storage 및 Blob Storage에 연결하기 및을 참조하세요.
rm 명령어 (dbutils.fs.rm)
rm(dir: String, recurse: boolean = false): boolean
파일 또는 디렉터리를 제거하고 필요에 따라 모든 내용을 제거합니다. 파일을 지정하면 매개 변수가 recurse
무시됩니다. 디렉터리가 지정된 경우, recurse
가 사용하지 않도록 설정되어 있고 디렉터리가 비어 있지 않으면 오류가 발생합니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.fs.help("rm")
예시
이 예제에서는 해당 내용을 포함하여 전체 디렉터리를 /Volumes/main/default/my-volume/my-data/
제거합니다.
파이썬
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
스칼라
dbutils.fs.rm("/Volumes/main/default/my-volume/my-data/", true)
// res6: Boolean = true
unmount 명령어(dbutils.fs.unmount)
unmount(mountPoint: String): boolean
DBFS 탑재 지점을 삭제합니다.
경고
오류를 방지하려면, 다른 작업이 읽거나 쓰고 있는 탑재 지점을 수정해서는 안 됩니다. 탑재를 수정한 후에는 항상 실행 중인 다른 모든 클러스터에서 dbutils.fs.refreshMounts()
을 실행하여 탑재 업데이트를 전파합니다.
refreshMounts 명령(dbutils.fs.refreshMounts)을 참조하세요.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.fs.help("unmount")
예시
dbutils.fs.unmount("/mnt/<mount-name>")
추가 코드 예제는 Azure Data Lake Storage 및 Blob Storage 연결을 참조하세요.
updateMount 명령(dbutils.fs.updateMount)
updateMount(source: String, mountPoint: String, encryptionType: String = "",
owner: String = null, extraConfigs: Map = Map.empty[String, String]): boolean
dbutils.fs.mount
명령과 비슷하지만, 새 탑재 지점을 만드는 대신 기존 탑재 지점을 업데이트합니다. 탑재 지점이 없으면 오류를 반환합니다.
경고
오류를 방지하려면, 다른 작업이 읽거나 쓰고 있는 탑재 지점을 수정해서는 안 됩니다. 탑재를 수정한 후에는 항상 실행 중인 다른 모든 클러스터에서 dbutils.fs.refreshMounts()
을 실행하여 탑재 업데이트를 전파합니다.
refreshMounts 명령(dbutils.fs.refreshMounts)을 참조하세요.
이 명령은 Databricks Runtime 10.4 LTS 이상에서 사용할 수 있습니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.fs.help("updateMount")
예시
파이썬
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>")})
스칼라
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>")))
작업 유틸리티(dbutils.jobs)
작업 기능을 활용하기 위한 유틸리티를 제공합니다.
참고
이 유틸리티는 Python에서만 사용할 수 있습니다.
다음 표에서는 dbutils.jobs.help()
사용하여 검색할 수 있는 이 유틸리티에 사용할 수 있는 모듈을 나열합니다.
하위모듈 | 묘사 |
---|---|
taskValues | 작업 값 활용을 위한 유틸리티를 제공합니다. |
"taskValues" 하위 유틸리티(dbutils.jobs.taskValues)
참고
이 하위 유틸리티는 Python에서만 사용할 수 있습니다.
작업 태스크 값을 활용하기 위한 명령을 제공합니다.
이 하위 유틸리티를 사용하여 작업 실행 중에 임의의 값을 설정하고 가져옵니다. 이러한 값을 태스크 값이라고 합니다. 모든 태스크는 업스트림 태스크에 의해 설정된 값을 얻고 다운스트림 태스크에서 사용할 값을 설정할 수 있습니다.
각 태스크 값은 동일한 태스크 내에 고유한 키가 있습니다. 이 고유 키를 작업 값의 키라고 합니다. 작업 값은 작업 이름 및 작업 값의 키를 사용하여 액세스됩니다. 이를 사용하여 동일한 작업 실행 내에서 태스크에서 태스크로 정보 다운스트림을 전달할 수 있습니다. 예를 들어 작업 실행 내의 여러 작업 간에 기계 학습 모델 평가에 대한 정보와 같은 식별자 또는 메트릭을 전달할 수 있습니다.
다음 표에서는 dbutils.jobs.taskValues.help()
사용하여 검색할 수 있는 이 하위 작업에 사용할 수 있는 명령을 나열합니다.
명령 | 묘사 |
---|---|
가져오기 | 현재 작업 실행에서 지정한 태스크에 대해 지정된 태스크 값의 내용을 가져옵니다. |
설정 | 태스크 값을 설정하거나 업데이트합니다. 작업 실행에 대해 최대 250개의 태스크 값을 설정할 수 있습니다. |
get 명령(dbutils.jobs.taskValues.get)
참고
이 명령은 Python에서만 사용할 수 있습니다.
Databricks Runtime 10.4 이하 버전에서 get
이(가) 작업을 찾을 수 없는 경우, Py4JJavaError가 발생하며, 이는 ValueError
대신 발생합니다.
get(taskKey: String, key: String, default: int, debugValue: int): Seq
현재 작업 실행에서 지정한 태스크에 대해 지정된 태스크 값의 내용을 가져옵니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.jobs.taskValues.help("get")
예시
예시:
dbutils.jobs.taskValues.get(taskKey = "my-task", \
key = "my-key", \
default = 7, \
debugValue = 42)
앞의 예에서:
-
taskKey
는 작업 값을 설정하는 작업의 이름입니다. 명령에서 이 태스크를 찾을 수 없으면ValueError
가 발생합니다. -
key
는 set 명령(dbutils.jobs.taskValues.set)을 사용하여 설정한 작업 값 키의 이름입니다. 명령어가 이 작업 값의 키를 찾을 수 없는 경우,ValueError
이 지정되지 않으면default
가 발생합니다. -
default
는key
를 찾을 수 없는 경우에 반환되는 선택적 값입니다.default
는None
일 수 없습니다. -
debugValue
는 작업 외부에서 실행되는 Notebook 내에서 태스크 값을 가져오는 경우 반환되는 선택적 값입니다. 이는 디버깅 중에 Notebook을 수동으로 실행하고 기본적으로TypeError
를 발생시키는 대신 일부 값을 반환하려는 경우에 유용할 수 있습니다.debugValue
는None
일 수 없습니다.
작업 외부에서 실행되는 Notebook 내에서 태스크 값을 얻으려고 하면 이 명령은 기본적으로 TypeError
를 표시합니다. 그러나 명령에서 debugValue
인수를 지정하면 debugValue
가 발생하는 대신 TypeError
값이 반환됩니다.
set 명령어 (dbutils.jobs.taskValues.set)
참고
이 명령은 Python에서만 사용할 수 있습니다.
set(key: String, value: String): boolean
태스크 값을 설정하거나 업데이트합니다. 작업 실행에 대해 최대 250개의 태스크 값을 설정할 수 있습니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.jobs.taskValues.help("set")
예시
일부 사례:
dbutils.jobs.taskValues.set(key = "my-key", \
value = 5)
dbutils.jobs.taskValues.set(key = "my-other-key", \
value = "my other value")
앞의 예에서
-
key
는 작업 값의 키입니다. 키는 태스크마다 고유해야 합니다. 즉, 서로 다른 두 태스크가 각각 키K
로 태스크 값을 설정하는 경우,K
를 같은 키로 사용하는 두 개의 서로 다른 태스크 값이 됩니다. -
value
는 이 작업 값의 키에 대한 값입니다. 이 명령은 내부적으로 값을 JSON 형식으로 표현할 수 있어야 합니다. 값의 JSON 표현 크기는 48KiB를 초과할 수 없습니다.
작업 외부에서 실행되는 Notebook 내에서 태스크 값을 설정하려고 하면 이 명령은 아무 작업도 수행하지 않습니다.
라이브러리 도구(dbutils.library)
하위 모듈 dbutils.library
의 메서드 대부분은 더 이상 사용되지 않습니다.
라이브러리 유틸리티(dbutils.library)(레거시)를 참조하세요.
로컬에서 설치되거나 업그레이드된 라이브러리가 현재 SparkSession의 Python 커널에서 올바르게 작동하도록 하려면 Azure Databricks에서 Python 프로세스를 프로그램적으로 다시 시작해야 할 수 있습니다. 이렇게 하려면 dbutils.library.restartPython
명령을 실행합니다.
Azure Databricks에서 Python 프로세스 다시 시작을 참조하세요.
Notebook 유틸리티(dbutils.notebook)
notebook 유틸리티를 사용하면 Notebook을 함께 연결하고 결과에 따라 작업을 수행할 수 있습니다. Notebook 오케스트레이션 및 모듈화 코드 를Notebook에서 참조하세요.
다음 표에서는 dbutils.notebook.help()
사용하여 검색할 수 있는 이 유틸리티에 사용할 수 있는 명령을 나열합니다.
명령 | 묘사 |
---|---|
종료 | 값이 있는 Notebook을 종료합니다. |
실행 | 노트북을 실행하여 종료 값을 반환합니다. |
exit 명령어(dbutils.notebook.exit)
exit(value: String): void
값이 있는 Notebook을 종료합니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.notebook.help("exit")
예시
다음 예제에서는 Exiting from My Other Notebook
값이 있는 Notebook을 종료합니다.
파이썬
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
스칼라
dbutils.notebook.exit("Exiting from My Other Notebook")
// Notebook exited: Exiting from My Other Notebook
참고
실행에 백그라운드에서 실행되는 구조적 스트리밍이 있는 쿼리가 있는 경우 dbutils.notebook.exit()
를 호출해도 실행이 종료되지 않습니다. 쿼리가 백그라운드에서 실행되는 동안 실행은 계속 실행됩니다. 쿼리 셀에서 취소를 클릭하거나 query.stop()
을 실행하여 백그라운드에서 쿼리 실행을 중지할 수 있습니다. 쿼리가 중지되면 dbutils.notebook.exit()
를 사용하여 실행을 종료할 수 있습니다.
실행 명령(dbutils.notebook.run)
run(path: String, timeoutSeconds: int, arguments: Map): String
Notebook을 실행하고 종료 값을 반환합니다. Notebook은 현재 클러스터에서 실행됩니다.
참고
run
명령에서 반환되는 문자열 값의 최대 길이는 5MB입니다.
단일 실행에 대한 출력 가져오기(GET /jobs/runs/get-output
)를 참조하세요.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.notebook.help("run")
예시
다음 예제에서는 호출하는 Notebook과 동일한 위치에서 My Other Notebook
이라는 Notebook을 실행합니다. 호출된 Notebook은 dbutils.notebook.exit("Exiting from My Other Notebook")
코드 줄로 끝납니다. 호출된 Notebook이 60초 이내에 실행을 완료하지 않으면 예외가 throw됩니다.
파이썬
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
비밀 관리 유틸리티(dbutils.secrets)
secrets 유틸리티를 사용하면 중요한 자격 증명 정보를 Notebook에 표시하지 않고 저장하고 액세스할 수 있습니다. 비밀 관리 및 3단계: 노트북에서 비밀 사용 참조.
다음 표에서는 dbutils.secrets.help()
사용하여 검색할 수 있는 이 유틸리티에 사용할 수 있는 명령을 나열합니다.
명령 | 묘사 |
---|---|
가져오기 | 범위 및 키를 사용하여 비밀 값의 문자열 표현을 가져옵니다. |
getBytes | 범위 및 키를 사용하여 비밀 값의 바이트 표현을 가져옵니다. |
목록 | 범위 내의 비밀에 대한 비밀 메타데이터를 나열합니다. |
listScopes | 비밀 스코프 범위를 나열합니다. |
get 명령(dbutils.secrets.get)
get(scope: String, key: String): String
지정된 비밀 범위 및 키에 대한 비밀 값의 문자열 표현을 가져옵니다.
경고
관리자, 비밀 작성자 및 권한이 부여된 사용자는 Azure Databricks 비밀을 읽을 수 있습니다. Azure Databricks는 Notebook에 표시될 수 있는 비밀 값을 삭제하기 위해 노력하지만, 이러한 사용자가 비밀을 읽는 것을 방지할 수는 없습니다. 자세한 내용은 비밀 수정을 참조하세요.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.secrets.help("get")
예시
다음 예제에서는 my-scope
라는 범위와 my-key
라는 키에 대한 비밀 값의 문자열 표현을 가져옵니다.
파이썬
dbutils.secrets.get(scope="my-scope", key="my-key")
# Out[14]: '[REDACTED]'
R 프로그래밍 언어
dbutils.secrets.get(scope="my-scope", key="my-key")
# [1] "[REDACTED]"
스칼라
dbutils.secrets.get(scope="my-scope", key="my-key")
// res0: String = [REDACTED]
getBytes 명령어(dbutils.secrets.getBytes)
getBytes(scope: String, key: String): byte[]
지정된 범위 및 키에 대한 비밀 값의 바이트 표현을 가져옵니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.secrets.help("getBytes")
예시
다음 예제에서는 범위 a1!b2@c3#
및 키 my-scope
에 대한 비밀 값(이 예에서는 my-key
)의 바이트 표현을 가져옵니다.
파이썬
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
스칼라
dbutils.secrets.getBytes(scope="my-scope", key="my-key")
// res1: Array[Byte] = Array(97, 49, 33, 98, 50, 64, 99, 51, 35)
list 명령 (dbutils.secrets.list)
list(scope: String): Seq
지정된 범위 내의 비밀에 대한 메타데이터를 나열합니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.secrets.help("list")
예시
다음 예제에서는 my-scope
라는 범위 내의 비밀에 대한 메타데이터를 나열합니다.
파이썬
dbutils.secrets.list("my-scope")
# Out[10]: [SecretMetadata(key='my-key')]
R 프로그래밍 언어
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))
listScopes 명령어(dbutils.secrets.listScopes)
listScopes: Seq
사용 가능한 범위를 나열합니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.secrets.help("listScopes")
예시
다음 예제에서는 사용 가능한 범위를 나열합니다.
파이썬
dbutils.secrets.listScopes()
# Out[14]: [SecretScope(name='my-scope')]
R 프로그래밍 언어
dbutils.secrets.listScopes()
# [[1]]
# [[1]]$name
# [1] "my-scope"
스칼라
dbutils.secrets.listScopes()
// res3: Seq[com.databricks.dbutils_v1.SecretScope] = ArrayBuffer(SecretScope(my-scope))
위젯 유틸리티(dbutils.widgets)
widgets 유틸리티를 사용하면 Notebook을 매개 변수화할 수 있습니다. Databricks 위젯을 참조하세요.
다음 표에서는 dbutils.widgets.help()
사용하여 검색할 수 있는 이 유틸리티에 사용할 수 있는 명령을 나열합니다.
명령 | 묘사 |
---|---|
콤보 상자 | 지정된 이름, 기본값 및 선택 항목을 사용하여 콤보 상자 입력 위젯을 만듭니다. |
드롭다운 | 지정된 이름, 기본값 및 선택 항목이 있는 드롭다운 입력 위젯을 만듭니다. |
가져오기 | 입력 위젯의 현재 값을 검색합니다. |
getAll | 모든 위젯 이름 및 해당 값의 맵을 검색합니다. |
getArgument | 더 이상 사용되지 않음. 가져오기에 해당하는 것 |
다중 선택 | 지정된 이름, 기본값 및 선택 항목을 사용하여 다중 선택 입력 위젯을 만듭니다. |
제거 | Notebook에서 입력 위젯을 제거합니다. |
모두 제거하기 | Notebook의 모든 위젯을 제거합니다. |
텍스트 | 지정된 이름과 기본값을 사용하여 텍스트 입력 위젯을 만듭니다. |
combobox 명령(dbutils.widgets.combobox)
combobox(name: String, defaultValue: String, choices: Seq, label: String): void
지정된 프로그래밍 이름, 기본값, 선택 항목 및 선택적 레이블을 사용하여 콤보 상자 위젯을 만들고 표시합니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.widgets.help("combobox")
예시
다음 예제에서는 프로그래밍 이름이 fruits_combobox
인 콤보 상자 위젯을 만들고 표시합니다.
apple
, banana
, coconut
및 dragon fruit
선택 항목을 제공하고 초기 값(banana
)으로 설정됩니다. 이 콤보 상자 위젯에는 Fruits
레이블이 함께 포함됩니다. 다음 예제에서는 콤보 상자 위젯의 초기 값(banana
)을 출력하는 것으로 끝납니다.
파이썬
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"
스칼라
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
드롭다운 명령 (dbutils.widgets.dropdown)
dropdown(name: String, defaultValue: String, choices: Seq, label: String): void
지정된 프로그래밍 이름, 기본값, 선택 항목 및 선택적 레이블을 사용하여 드롭다운 위젯을 만들고 표시합니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.widgets.help("dropdown")
예시
다음 예제에서는 프로그래밍 이름이 toys_dropdown
인 드롭다운 위젯을 만들고 표시합니다.
alphabet blocks
, basketball
, cape
및 doll
선택 항목을 제공하고 초기 값(basketball
)으로 설정됩니다. 이 드롭다운 위젯에는 Toys
레이블이 함께 포함됩니다. 다음 예제에서는 드롭다운 위젯의 초기 값(basketball
)을 출력하는 것으로 끝납니다.
파이썬
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"
스칼라
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" 명령어 ("dbutils.widgets.get")
get(name: String): String
지정된 프로그래밍 이름이 있는 위젯의 현재 값을 가져옵니다. 이 프로그래밍 이름은 다음 중 하나일 수 있습니다.
- Notebook에 있는 사용자 지정 위젯의 이름입니다(예:
fruits_combobox
toys_dropdown
). - Notebook 태스크의 일부로 Notebook에 전달된 사용자 지정 매개 변수의 이름(예:
name
또는age
). 자세한 내용은 작업 UI의 노트북 태스크 매개변수 설명서나 작업 API의notebook_params
() 작업에서POST /jobs/run-now
필드를 참조하세요.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.widgets.help("get")
예시
다음 예제에서는 프로그래밍 이름이 fruits_combobox
인 위젯의 값을 가져옵니다.
파이썬
dbutils.widgets.get('fruits_combobox')
# banana
R 프로그래밍 언어
dbutils.widgets.get('fruits_combobox')
# [1] "banana"
스칼라
dbutils.widgets.get("fruits_combobox")
// res6: String = banana
SQL (영문)
SELECT :fruits_combobox
-- banana
다음 예제에서는 프로그래밍 이름이 age
인 Notebook 태스크 매개 변수의 값을 가져옵니다. 이 매개 변수는 관련 Notebook 태스크가 실행될 때 35
로 설정되었습니다.
파이썬
dbutils.widgets.get('age')
# 35
R 프로그래밍 언어
dbutils.widgets.get('age')
# [1] "35"
스칼라
dbutils.widgets.get("age")
// res6: String = 35
SQL (영문)
SELECT :age
-- 35
getAll 명령어(dbutils.widgets.getAll)
getAll: map
현재 모든 위젯의 이름 및 값의 매핑을 가져옵니다. 위젯 값을 spark.sql()
쿼리에 빠르게 전달하는 데 특히 유용할 수 있습니다.
이 명령은 Databricks Runtime 13.3 LTS 이상에서 사용할 수 있습니다. Python 및 Scala에서만 사용할 수 있습니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.widgets.help("getAll")
예시
이 예제에서는 위젯 값의 맵을 가져와서 Spark SQL 쿼리에 매개 변수 인수로 전달합니다.
파이썬
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
getArgument 명령(dbutils.widgets.getArgument)
getArgument(name: String, optional: String): String
지정된 프로그래밍 이름이 있는 위젯의 현재 값을 가져옵니다. 위젯이 없으면 선택적 메시지가 반환될 수 있습니다.
참고
이 명령은 더 이상 사용되지 않습니다. 대신 dbutils.widgets.get을 사용하세요.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.widgets.help("getArgument")
예시
다음 예제에서는 프로그래밍 이름이 fruits_combobox
인 위젯의 값을 가져옵니다. 이 위젯이 없으면 Error: Cannot find fruits combobox
메시지가 반환됩니다.
파이썬
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"
스칼라
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)
multiselect(name: String, defaultValue: String, choices: Seq, label: String): void
지정된 프로그래밍 이름, 기본값, 선택 항목 및 선택적 레이블을 사용하여 다중 선택 위젯을 만들고 표시합니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.widgets.help("multiselect")
예시
다음 예제에서는 프로그래밍 이름이 days_multiselect
인 다중 선택 위젯을 만들고 표시합니다.
Monday
부터 Sunday
까지의 선택 항목을 제공하고 초기 값(Tuesday
)으로 설정됩니다. 이 다중 선택 위젯에는 Days of the Week
레이블이 함께 포함됩니다. 다음 예제에서는 다중 선택 위젯의 초기 값(Tuesday
)을 출력하는 것으로 끝납니다.
파이썬
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"
스칼라
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
명령 제거(dbutils.widgets.remove)
remove(name: String): void
지정된 프로그램 이름이 있는 위젯을 제거합니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.widgets.help("remove")
중요한
위젯을 제거하는 명령을 추가한 경우에는 동일한 셀에 위젯을 만드는 후속 명령을 추가할 수 없습니다. 위젯을 만들려면 다른 셀을 사용해야 합니다.
예시
다음 예제에서는 프로그래밍 이름이 fruits_combobox
인 위젯을 제거합니다.
파이썬
dbutils.widgets.remove('fruits_combobox')
R 프로그래밍 언어
dbutils.widgets.remove('fruits_combobox')
스칼라
dbutils.widgets.remove("fruits_combobox")
SQL (영문)
REMOVE WIDGET fruits_combobox
removeAll 명령(dbutils.widgets.removeAll)
removeAll: void
Notebook에서 모든 위젯을 제거합니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.widgets.help("removeAll")
중요한
모든 위젯을 제거하는 명령을 추가하면 위젯을 동일한 셀에 만드는 후속 명령을 추가할 수 없습니다. 위젯을 다른 셀에 만들어야 합니다.
예시
다음 예제에서는 Notebook에서 모든 위젯을 제거합니다.
파이썬
dbutils.widgets.removeAll()
R 프로그래밍 언어
dbutils.widgets.removeAll()
스칼라
dbutils.widgets.removeAll()
text 명령어(dbutils.widgets.text)
text(name: String, defaultValue: String, label: String): void
지정된 프로그래밍 이름, 기본값 및 선택적 레이블을 사용하여 텍스트 위젯을 만들고 표시합니다.
이 명령에 대한 전체 도움말을 표시하려면 다음을 실행합니다.
dbutils.widgets.help("text")
예시
다음 예제에서는 프로그래밍 이름이 your_name_text
인 텍스트 위젯을 만들고 표시합니다. 초기 값(Enter your name
)으로 설정됩니다. 이 텍스트 위젯에는 Your name
레이블이 함께 포함됩니다. 다음 예제에서는 텍스트 위젯의 초기 값(Enter your name
)을 출력하는 것으로 끝납니다.
파이썬
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"
스칼라
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 유틸리티 API 라이브러리
중요한
Databricks 유틸리티 API(dbutils-api
) 라이브러리 기능은 이제 더 이상 권장되지 않으며() 사용이 중단되었습니다(). Databricks는 다음 중 하나를 대신 사용하는 것이 좋습니다.
애플리케이션 개발을 가속화하려면 먼저 애플리케이션을 컴파일, 빌드 및 테스트한 후에 프로덕션 작업으로 배포하는 것이 도움이 될 수 있습니다. Databricks 유틸리티에 대해 컴파일할 수 있도록 Databricks에서 dbutils-api
라이브러리를 제공합니다. Maven 리포지토리 웹 사이트의 dbutils-api
웹 페이지에서 라이브러리를 다운로드하거나 종속성을 빌드 파일에 추가하여 라이브러리를 포함할 수 있습니다.
SBT
libraryDependencies += "com.databricks" % "dbutils-api_TARGET" % "VERSION"
메이븐
<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
을 사용하여 실행기에서 파일 시스템 작업을 수행해야 하는 경우, 인파일 시스템 작업 병렬 처리 방법을 참조하세요.
실행기에 대한 자세한 내용은 Apache Spark 웹 사이트의 클러스터 모드 개요를 참조하세요.