작업 CLI(레거시)
Important
이 설명서는 사용 중지되었으며 업데이트되지 않을 수 있습니다.
이 정보는 레거시 Databricks CLI 버전 0.18 이하에 적용됩니다. Databricks는 최신 Databricks CLI 버전 0.205 이상을 대신 사용하는 것이 좋습니다.
Databricks CLI란?을 참조하세요. Databricks CLI 버전을 찾으려면 databricks -v
를 실행합니다.
Databricks CLI 버전 0.18 이하에서 Databricks CLI 버전 0.205 이상으로 마이그레이션하려면 Databricks CLI 마이그레이션을 참조하세요.
Databricks 작업 CLI 하위 명령을 databricks jobs
에 추가하여 실행하고 Databricks 작업은 CLI 하위 명령을 databricks runs
에 추가하여 실행합니다. Databricks 작업 실행 CLI 하위 명령은 CLI 실행(레거시)을 참조하세요. 이와 함께, 이러한 하위 명령은 작업 API 및 작업 API 2.0을 호출합니다.
Important
Databricks 작업 CLI는 두 가지 버전의 Databricks 작업 REST API(버전 2.1 및 2.0)에 대한 호출을 지원합니다. 버전 2.1은 여러 작업이 포함된 작업의 오케스트레이션에 대한 지원을 추가합니다. Databricks에서의 오케스트레이션 개요 및 작업 API 2.0에서 2.1로의 업데이트 를 참조하세요. 버전 2.0에 의존하고 마이그레이션할 수 없는 레거시 스크립트가 없는 경우 Databricks에서는 버전 2.1을 호출하는 것이 좋습니다.
달리 명시되지 않는 한, 이 문서에서 설명하는 프로그래매틱 방식 동작은 버전 2.1과 2.0에 동일하게 적용됩니다.
작업 REST API 2.1을 호출하기 위한 요구 사항
Databricks 작업 CLI(및 작업 실행 CLI)를 설정하고 사용하여 작업 REST API 2.1을 호출하려면 다음을 수행합니다.
CLI 버전 0.16.0 이상으로 업데이트합니다.
다음 중 하나를 수행합니다.
-
databricks jobs configure --version=2.1
명령을 실행합니다. 이렇게 하면 설정jobs-api-version = 2.1
이 파일~/.databrickscfg
(Unix, Linux, macOS) 또는%USERPROFILE%\.databrickscfg
(Windows)에 추가됩니다. 모든 작업 CLI(및 작업 실행 CLI) 하위 명령은 기본적으로 작업 REST API 2.1을 호출합니다. - Unix, Linux 또는 macOS에서는
jobs-api-version = 2.1
설정을 파일~/.databrickscfg
에, Windows에서는%USERPROFILE%\.databrickscfg
설정을 수동으로 추가합니다. 모든 작업 CLI(및 작업 실행 CLI) 하위 명령은 기본적으로 작업 REST API 2.1을 호출합니다. -
--version=2.1
옵션(예:databricks jobs list --version=2.1
)을 추가하여 해당 호출에 대해서만 작업 REST API 2.1을 호출하도록 작업 CLI에 지시합니다.
이전 작업을 수행하지 않으면 작업 CLI(및 작업 실행 CLI)가 기본적으로 작업 REST API 2.0을 호출합니다.
-
작업 REST API 2.0을 호출하기 위한 요구 사항
Databricks 작업 CLI(및 작업 실행 CLI)를 설정하고 사용하여 작업 REST API 2.0을 호출하려면 다음 중 하나를 수행합니다.
- 0.16.0 미만의 Databricks CLI 버전을 사용합니다. 또는
-
CLI X.Y.Z 이상으로 업데이트한 다음 다음 중 하나를 수행합니다.
-
databricks jobs configure --version=2.0
명령을 실행합니다. 이렇게 하면 설정jobs-api-version = 2.0
이 파일~/.databrickscfg
(Unix, Linux, macOS) 또는%USERPROFILE%\.databrickscfg
(Windows)에 추가됩니다. 모든 작업 CLI(및 작업 실행 CLI) 하위 명령은 기본적으로 작업 REST API 2.0을 호출합니다. - Unix, Linux 또는 macOS에서는
jobs-api-version = 2.0
설정을 파일~/.databrickscfg
에, Windows에서는%USERPROFILE%\.databrickscfg
설정을 수동으로 추가합니다. 모든 작업 CLI(및 작업 실행 CLI) 하위 명령은 기본적으로 작업 REST API 2.0을 호출합니다. -
--version=2.1
옵션(예:databricks jobs list --version=2.0
)을 추가하여 해당 호출에 대해서만 작업 REST API 2.0을 호출하도록 작업 CLI에 지시합니다.
-
이전 작업을 수행하지 않으면 작업 CLI(및 작업 실행 CLI)가 기본적으로 작업 REST API 2.0을 호출합니다.
하위 명령 및 일반적인 사용법
databricks jobs -h
Usage: databricks jobs [OPTIONS] COMMAND [ARGS]...
Utility to interact with jobs.
Job runs are handled by ``databricks runs``.
Options:
-v, --version [VERSION]
-h, --help Show this message and exit.
Commands:
create Creates a job.
Options:
--json-file PATH File containing JSON request to POST to /api/2.0/jobs/create.
--json JSON JSON string to POST to /api/2.0/jobs/create.
delete Deletes a job.
Options:
--job-id JOB_ID Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#job/$JOB_ID. [required]
get Describes the metadata for a job.
Options:
--job-id JOB_ID Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#job/$JOB_ID. [required]
list Lists the jobs in the Databricks Job Service.
reset Resets (edits) the definition of a job.
Options:
--job-id JOB_ID Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#job/$JOB_ID. [required]
--json-file PATH File containing JSON request to POST to /api/2.0/jobs/create.
--json JSON JSON string to POST to /api/2.0/jobs/create.
run-now Runs a job with optional per-run parameters.
Options:
--job-id JOB_ID Can be found in the URL at https://<databricks-instance>/#job/$JOB_ID. [required]
--jar-params JSON JSON string specifying an array of parameters. i.e. '["param1", "param2"]'
--notebook-params JSON JSON string specifying a map of key-value pairs. i.e. '{"name": "john doe", "age": 35}'
--python-params JSON JSON string specifying an array of parameters. i.e. '["param1", "param2"]'
--spark-submit-params JSON JSON string specifying an array of parameters. i.e. '["--class", "org.apache.spark.examples.SparkPi"]'
작업 만들기
사용 설명서를 표시하려면 databricks jobs create --help
를 실행합니다.
일반적인 사용법
databricks jobs create --json-file create-job.json
작업 CLI 2.1 사용 참고 사항 및 요청 예
작업 API 2.0에서 2.1로 업데이트할 때 만들기를 참조하세요.
작업 CLI 2.0 요청 페이로드 및 응답 예
:
{
"name": "my-job",
"existing_cluster_id": "1234-567890-reef123",
"notebook_task": {
"notebook_path": "/Users/someone@example.com/My Notebook"
},
"email_notifications": {
"on_success": [
"someone@example.com"
],
"on_failure": [
"someone@example.com"
]
}
}
{ "job_id": 246 }
팁
작업을 복사하려면 create
명령을 실행하고 복사할 작업의 설정과 함께 JSON 개체를 전달합니다. 이 예에서는 ID가 246
인 작업 설정을 새 작업으로 복사합니다.
jq 유틸리티가 필요합니다.
SETTINGS_JSON=$(databricks jobs get --job-id 246 | jq .settings)
databricks jobs create --json "$SETTINGS_JSON"
{ "job_id": 247 }
작업 삭제
사용 설명서를 표시하려면 databricks jobs delete --help
를 실행합니다.
databricks job delete --job-id 246
성공하면 출력이 표시되지 않습니다.
팁
동일한 설정을 가진 여러 작업을 삭제하려면 해당 설정과 일치하는 작업 ID 목록을 가져오고 일치하는 각 작업 ID에 대해 delete
명령을 실행합니다. 이 예는 작업 이름이 Untitled
인 모든 작업을 삭제합니다.
jq 유틸리티가 필요합니다.
databricks jobs list --output json | jq '.jobs[] | select(.settings.name == "Untitled") | .job_id' | xargs -n 1 databricks jobs delete --job-id
작업에 대한 정보 나열
사용 설명서를 표시하려면 databricks jobs get --help
를 실행합니다.
일반적인 사용법
databricks jobs get --job-id 246
작업 CLI 2.1 사용 참고 사항 및 응답 예시
작업 CLI 2.0 응답 예제
{
"job_id": 246,
"settings": {
"name": "my-job",
"existing_cluster_id": "1234-567890-reef123",
"email_notifications": {
"on_success": [
"someone@example.com"
],
"on_failure": [
"someone@example.com"
]
},
"timeout_seconds": 0,
"notebook_task": {
"notebook_path": "/Users/someone@example.com/My Notebook"
},
"max_concurrent_runs": 1
},
"created_time": 1620163107742,
"creator_user_name": "someone@example.com"
}
사용 가능한 작업에 대한 정보 나열
사용 설명서를 표시하려면 databricks jobs list --help
를 실행합니다.
일반적인 사용법
databricks jobs list
작업 CLI 2.1 사용 참고 사항 및 응답 예시
작업 API 2.0에서 2.1
작업 CLI 2.0 응답 예제
{
"jobs": [
{
"job_id": 246,
"settings": {
"name": "my-job",
"existing_cluster_id": "1234-567890-reef123",
"email_notifications": {
"on_success": [
"someone@example.com"
],
"on_failure": [
"someone@example.com"
]
},
"timeout_seconds": 0,
"notebook_task": {
"notebook_path": "/Users/someone@example.com/My Notebook"
},
"max_concurrent_runs": 1
},
"created_time": 1620163107742,
"creator_user_name": "someone@example.com"
},
...
]
}
모든 작업 나열(API 2.1만 해당)
API를 순차적으로 호출하여 모든 작업을 반환하도록 CLI에 지시하려면 --all
옵션을 사용합니다.
databricks jobs list --all
작업 목록 페이지(API 2.1에만 해당)
페이지가 매겨진 작업 목록을 반환하려면 --limit
및 --offset
인수를 사용하십시오. 기본적으로 작업 목록은 작업 ID 및 작업 이름을 포함하는 테이블로 반환됩니다. 필요에 따라 작업 정보가 포함된 JSON 문서를 반환하려면 --output JSON
인수를 사용합니다.
--output JSON
사용하는 경우 목록은 작업 생성 날짜별로 내림차순으로 반환됩니다.
--output TABLE
사용하는 경우 목록은 작업 생성 날짜별로 내림차순으로 반환된 다음 작업 이름으로 사전순으로 정렬됩니다.
다음 예제에서는 작업을 통해 한 번에 10개의 작업을 나열하고 결과를 JSON 형식으로 반환합니다.
databricks jobs list --output JSON --limit 10
databricks jobs list --output JSON --limit 10 --offset 10
databricks jobs list --output JSON --limit 10 --offset 20
작업 설정 변경
사용 설명서를 표시하려면 databricks jobs reset --help
를 실행합니다.
일반적인 사용법
databricks jobs reset --job-id 246 --json-file reset-job.json
작업 CLI 2.1 사용 참고 사항 및 요청 예
작업 API 2.0에서 2.1업데이트하는
작업 CLI 2.0 요청 예
:
{
"job_id": 246,
"existing_cluster_id": "2345-678901-batch234",
"name": "my-changed-job",
"notebook_task": {
"notebook_path": "/Users/someone@example.com/My Other Notebook"
},
"email_notifications": {
"on_success": [
"someone-else@example.com"
],
"on_failure": [
"someone-else@example.com"
]
}
}
성공하면 출력이 표시되지 않습니다.
작업 실행
사용 설명서를 표시하려면 databricks jobs run-now --help
를 실행합니다.
databricks jobs run-now --job-id 246
{
"run_id": 122,
"number_in_job": 1
}