실행 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 runs
에 추가하여 실행하고, Databricks 작업 CLI 하위 명령은 databricks jobs
에 추가하여 실행합니다. Databricks 작업 CLI 하위 명령은 작업 CLI(레거시)를 참조하세요. 이와 함께, 이러한 하위 명령은 작업 API 및 작업 API 2.0을 호출합니다.
Important
Databricks 작업 실행 CLI는 버전 2.1과 2.0, 이렇게 두 가지 버전의 Databricks 작업 REST API에 대한 호출을 지원합니다. (작업 실행 기능은 작업 REST API의 일부입니다.) 버전 2.1에서는 여러 태스크를 갖는 오케스트레이션에 대한 지원이 추가되었습니다. 워크플로 예약 및 오케스트레이션 및 작업 API 2.0에서 2.1으로 업데이트를 참조하세요. Databricks는 2.0을 사용하는 레거시 스크립트가 있으며 마이그레이션할 수 없는 경우가 아닌 이상 버전 2.1을 호출할 것을 권장합니다.
달리 명시되지 않는 한, 이 문서에서 설명하는 프로그래매틱 방식 동작은 버전 2.1과 2.0에 동일하게 적용됩니다.
참고 항목
작업 실행 CLI 요청을 수행할 때 500 수준 오류가 발생하는 경우 Databricks는 (매 재시도 사이에 최소 30초 간격을 두고) 최대 10분 동안 요청을 다시 시도할 것을 권장합니다.
작업 REST API 2.1을 호출하기 위한 요구 사항
Databricks 작업 실행 CLI(및 작업 CLI)가 작업 REST API 2.1을 호출하도록 설정하려면 다음을 수행합니다.
버전 0.16.0 이상으로 CLI를 업데이트합니다.
다음 중 하나를 수행합니다.
-
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을 호출합니다. - 작업 실행 CLI가 해당 호출에 대해서만 작업 REST API 2.1을 호출하도록 지시하려면 옵션
--version=2.1
을 추가합니다(예:databricks runs list --version=2.1
).
위의 동작을 하나도 수행하지 않으면 작업 실행 CLI(및 작업 CLI)는 기본적으로 작업 REST API 2.0을 호출합니다.
-
작업 REST API 2.0을 호출하기 위한 요구 사항
Databricks 작업 실행 CLI(및 작업 CLI)가 작업 REST API 2.0을 호출하도록 설정하려면 다음 중 하나를 수행합니다.
- 0.16.0 미만의 Databricks CLI 버전을 사용합니다. 또는
- CLI를 버전 0.16.0 이상으로 업데이트하고 다음 중 하나를 수행합니다.
-
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을 호출합니다. - 작업 실행 CLI가 해당 호출에 대해서만 작업 REST API 2.0을 호출하도록 지시하려면 옵션
--version=2.1
을 추가합니다(예:databricks runs list --version=2.0
).
-
위의 동작을 하나도 수행하지 않으면 작업 실행 CLI(및 작업 CLI)는 기본적으로 작업 REST API 2.0을 호출합니다.
하위 명령 및 일반적인 사용법
databricks runs --help
Usage: databricks runs [OPTIONS] COMMAND [ARGS]...
Utility to interact with jobs runs.
Options:
-v, --version [VERSION]
--debug Debug mode. Shows full stack trace on error.
--profile TEXT CLI connection profile to use. The default profile is
"DEFAULT".
-h, --help Show this message and exit.
Commands:
cancel Cancels the specified run.
get Gets the metadata about a run in JSON form.
get-output Gets the output of a run.
list Lists job runs.
submit Submits a one-time run.
실행 취소
사용 설명서를 표시하려면 databricks runs cancel --help
를 실행합니다.
databricks runs cancel --run-id 119
{}
실행에 대한 정보 가져오기
사용 설명서를 표시하려면 databricks runs get --help
를 실행합니다.
일반적인 사용법
databricks runs get --run-id 2785782
작업 CLI 2.1 사용 참고 사항 및 응답 예시
작업 API 2.0에서 2.1로 업데이트할 때 실행 가져오기를 참조하세요.
작업 CLI 2.0 응답 예제
{
"job_id": 1269263,
"run_id": 2785782,
"number_in_job": 1111,
"original_attempt_run_id": 2785782,
"state": {
"life_cycle_state": "TERMINATED",
"result_state": "SUCCESS",
"state_message": ""
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
}
},
"cluster_spec": {
"new_cluster": {
"spark_version": "8.1.x-scala2.12",
"node_type_id": "Standard_F16s",
"enable_elastic_disk": true,
"azure_attributes": {
"availability": "ON_DEMAND_AZURE"
},
"num_workers": 8
}
},
"cluster_instance": {
"cluster_id": "1234-567890-abcd123",
"spark_context_id": "1234567890123456789"
},
"start_time": 1620947196985,
"setup_duration": 36000,
"execution_duration": 119000,
"cleanup_duration": 3000,
"end_time": 1620947355499,
"trigger": "ONE_TIME",
"creator_user_name": "someone@example.com",
"run_name": "my-notebook-run",
"run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
"run_type": "JOB_RUN",
"attempt_number": 0
}
실행의 출력 가져오기
사용 설명서를 표시하려면 databricks runs get-output --help
를 실행합니다.
참고 항목
notebook_task
가 호출의 값을 dbutils.notebook.exit()
에 반환하면 Databricks는 반환된 값을 처음 5MB의 데이터로 제한합니다. 더 큰 결과를 반환하려면 클라우드 스토리지 서비스에 작업 결과를 저장할 수 있습니다.
일반적인 사용법
databricks runs get-output --run-id 2785782
작업 CLI 2.1 사용법 참고 사항
작업 API 2.0에서 2.1로 업데이트할 때 실행 가져오기 출력을 참조하세요.
작업 CLI 2.0 응답 예제
{
"metadata": {
"job_id": 1269263,
"run_id": 2785782,
"number_in_job": 1111,
"original_attempt_run_id": 2785782,
"state": {
"life_cycle_state": "TERMINATED",
"result_state": "SUCCESS",
"state_message": ""
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
}
},
"cluster_spec": {
"new_cluster": {
"spark_version": "8.1.x-scala2.12",
"node_type_id": "Standard_F16s",
"enable_elastic_disk": true,
"azure_attributes": {
"availability": "ON_DEMAND_AZURE"
},
"num_workers": 8
}
},
"cluster_instance": {
"cluster_id": "1234-567890-abcd123",
"spark_context_id": "1234567890123456789"
},
"start_time": 1620947196985,
"setup_duration": 36000,
"execution_duration": 119000,
"cleanup_duration": 3000,
"end_time": 1620947355499,
"trigger": "ONE_TIME",
"creator_user_name": "someone@example.com",
"run_name": "my-notebook-run",
"run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
"run_type": "JOB_RUN",
"attempt_number": 0
},
"notebook_output": {}
}
모든 실행에 대한 정보 가져오기
사용 설명서를 표시하려면 databricks runs list --help
를 실행합니다.
일반적인 사용법
databricks runs list --output JSON
작업 CLI 2.1 사용 참고 사항 및 응답 예시
작업 API 2.0에서 2.1로 업데이트할 때 실행 목록을 참조하세요.
작업 CLI 2.0 응답 예제
{
"runs": [
{
"job_id": 1269263,
"run_id": 2785782,
"number_in_job": 1111,
"original_attempt_run_id": 2785782,
"state": {
"life_cycle_state": "TERMINATED",
"result_state": "SUCCESS",
"state_message": ""
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
}
},
"cluster_spec": {
"new_cluster": {
"spark_version": "8.1.x-scala2.12",
"node_type_id": "Standard_F16s",
"enable_elastic_disk": true,
"azure_attributes": {
"availability": "ON_DEMAND_AZURE"
},
"num_workers": 8
}
},
"cluster_instance": {
"cluster_id": "1234-567890-abcd123",
"spark_context_id": "1234567890123456789"
},
"start_time": 1620947196985,
"setup_duration": 36000,
"execution_duration": 119000,
"cleanup_duration": 3000,
"end_time": 1620947355499,
"trigger": "ONE_TIME",
"creator_user_name": "someone@example.com",
"run_name": "my-notebook-run",
"run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
"run_type": "JOB_RUN",
"attempt_number": 0
},
...
],
"has_more": false
}
has_more
가 true
를 반환하는 경우 추가 실행에 대한 정보를 사용할 수 있습니다.
--offset
옵션을 사용하여 가장 최근 실행을 기준으로 실행에 대한 정보를 반환합니다. 예를 들어, 10번째의 가장 최근 실행부터 정보를 반환하려면 --offset 10
을 지정합니다.
--limit
옵션을 사용하여 고정된 개수의 실행에 대한 정보를 반환합니다. 예를 들어, 최대 다음 5회의 실행에 대한 정보를 반환하려면 --limit 5
를 지정합니다. 최대 1000회의 실행을 지정할 수 있습니다. 지정하지 않으면 기본값은 20입니다.
일회성 실행 제출
사용 설명서를 표시하려면 databricks runs submit --help
를 실행합니다.
일반적인 사용법
databricks runs submit --json-file submit-run.json
작업 REST API 2.1 사용법 참고 사항 및 요청 예제
작업 API 2.0에서 2.1로 업데이트할 때 실행 제출을 참조하세요.
작업 REST API 2.0 요청 및 응답 예제
:
{
"run_name": "my-spark-run",
"new_cluster": {
"spark_version": "8.1.x-scala2.12",
"node_type_id": "Standard_F16s",
"enable_elastic_disk": true,
"azure_attributes": {
"availability": "ON_DEMAND_AZURE"
},
"num_workers": 8
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
}
{
"run_id": 123
}