작업 API 2.0
Important
이 문서는 Jobs API의 2.0 버전을 다루고 있습니다. 단, Databricks는 신규 및 기존 API 스크립트와 클라이언트에 대해서는 Jobs API 2.1을 사용할 것을 권장합니다. 2.0에서 2.1 버전으로의 변경 내용에 대한 자세한 내용은 Jobs API 2.0에서 2.1로 업데이트하기를 참조하세요.
작업 API를 사용하면 작업을 만들고, 편집하고, 삭제할 수 있습니다. 작업 API에 대한 요청의 최대 허용 크기는 10MB입니다.
Azure Databricks 작업을 사용하여 여러 작업의 오케스트레이션을 지원하는 Jobs API 업데이트에 대한 자세한 내용은 Jobs API 2.0에서 2.1로 업데이트하기를 참조하세요.
Warning
비밀을 하드 코딩하거나 일반 텍스트로 저장해서는 안 됩니다. Databricks CLI에서 비밀을 관리하려면 비밀 API을 사용하세요. 비밀 유틸리티(dbutils.secrets)를 사용하여 Notebooks 및 작업의 비밀을 참조합니다.
참고 항목
작업 API를 요청할 때 500 수준 오류가 발생하는 경우 Databricks는 최대 10분 동안 요청을 다시 시도하도록 권장합니다(다시 시도 간격 30초 이상).
Important
Databricks REST API에 액세스하려면 인증해야 합니다.
만들기
엔드포인트 | HTTP 메서드 |
---|---|
2.0/jobs/create |
POST |
새 작업을 만듭니다.
예시
다음 예제에서는 JAR 태스크를 매일 밤 10시 15분에 실행하는 작업을 만듭니다.
요청
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/create \
--data @create-job.json \
| jq .
create-job.json
:
{
"name": "Nightly model training",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"timeout_seconds": 3600,
"max_retries": 1,
"schedule": {
"quartz_cron_expression": "0 15 22 * * ?",
"timezone_id": "America/Los_Angeles"
},
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
}
다음을
<databricks-instance>
를 Azure Databricks 작업 영역 인스턴스 이름(예:adb-1234567890123456.7.azuredatabricks.net
)으로 바꿉니다.create-job.json
의 콘텐츠를 솔루션에 적합한 필드로 바꿉니다.
다음 예제에서는 .netrc 파일 및 jq를 사용합니다.
응답
{
"job_id": 1
}
요청 구조체
Important
- 작업을 새 작업 클러스터에서 실행하는 경우 작업은 작업 컴퓨팅 가격 책정에 따라 Jobs Compute(자동화) 워크로드로 처리됩니다.
- 작업을 기존 다목적 클러스터에서 실행하는 경우 All-Purpose Compute 가격 책정에 따라 All-Purpose Compute(대화형) 워크로드로 처리됩니다.
필드 이름 | Type | 설명 |
---|---|---|
existing_cluster_id 또는 new_cluster |
STRING 또는 NewCluster |
existing_cluster_id인 경우 이 작업의 모든 실행에 사용할 기존 클러스터의 ID입니다. 작업을 기존 클러스터에서 실행할 때 응답이 중지되면 클러스터를 수동으로 다시 시작해야 할 수 있습니다. 안정성을 높이려면 작업을 새 클러스터에서 실행하는 것이 좋습니다. new_cluster인 경우 각 실행에 대해 만들 클러스터에 대한 설명입니다. PipelineTask를 지정하는 경우 이 필드는 비어 있을 수 있습니다. |
notebook_task OR spark_jar_task ORspark_python_task OR spark_submit_task ORpipeline_task 또는 run_job_task |
NotebookTask OR SparkJarTask OR SparkPythonTask OR SparkSubmitTask OR PipelineTask OR RunJobTask | notebook_task인 경우 이 작업에서 Notebook을 실행해야 함을 나타냅니다. 이 필드는 spark_jar_task와 함께 지정할 수 없습니다. spark_jar_task인 경우 이 작업에서 JAR을 실행해야 함을 나타냅니다. spark_python_task인 경우 이 작업에서 Python 파일을 실행해야 함을 나타냅니다. spark_submit_task인 경우 spark submit 스크립트에서 이 작업을 시작해야 임을 나타냅니다. pipeline_task인 경우 이 작업에서 Delta Live Tables 파이프라인을 실행해야 함을 나타냅니다. run_job_task 경우 이 작업이 다른 작업을 실행해야 함을 나타냅니다. |
name |
STRING |
작업에 대한 선택적 이름입니다. 기본값은 Untitled 입니다. |
libraries |
라이브러리 배열 | 작업을 실행할 클러스터에 설치할 라이브러리의 선택적 목록입니다. 기본값은 빈 목록입니다. |
email_notifications |
JobEmailNotifications | 이 작업의 실행이 시작 및 완료되고 이 작업이 삭제될 때 알림을 받는 이메일 주소의 선택적 세트입니다. 기본 동작은 이메일을 보내지 않는 것입니다. |
webhook_notifications |
WebhookNotifications | 이 작업의 실행이 시작, 완료 또는 실패할 때 알릴 선택적 시스템 대상의 세트입니다. |
notification_settings |
JobNotificationSettings | 이 작업에 대해 각각 email_notifications 과 webhook_notifications 에 알림을 보낼 때 사용되는 선택적 알림 설정입니다. |
timeout_seconds |
INT32 |
이 작업의 각 실행에 적용되는 선택적 시간 제한입니다. 기본 동작은 시간 제한이 없는 것입니다. |
max_retries |
INT32 |
실패한 실행을 다시 시도할 수 있는 선택적 최대 횟수입니다. 실행이 FAILED result_state 또는INTERNAL_ERROR life_cycle_state . -1 값은 무기한으로 다시 시도하고, 0 값은 다시 시도하지 않는 것을 의미합니다. 기본 동작은 다시 시도하지 않는 것입니다. |
min_retry_interval_millis |
INT32 |
실패한 실행 시작과 후속 다시 시도 실행 사이의 선택적 최소 간격(밀리초)입니다. 기본 동작은 실패한 실행을 즉시 다시 시도하는 것입니다. |
retry_on_timeout |
BOOL |
시간 제한을 초과하면 작업을 다시 시도할지 여부를 지정하는 선택적 정책입니다. 기본 동작은 시간 제한을 초과하면 다시 시도하지 않는 것입니다. |
schedule |
CronSchedule | 이 작업에 대한 선택적 정기 일정입니다. 기본 동작은 작업 UI에서 지금 실행을 클릭하거나 API 요청을 runNow 에 보내 작업을 트리거할 때 실행하는 것입니다. |
max_concurrent_runs |
INT32 |
선택적으로 허용되는 작업의 최대 동시 실행 수입니다. 동일한 작업의 여러 실행을 동시에 실행할 수 있도록 하려면 이 값을 설정합니다. 예를 들어 이는 빈번한 일정에 따라 작업을 트리거하고 연속 실행이 서로 겹치도록 허용하거나 입력 매개 변수에 따라 다른 여러 실행을 트리거하려는 경우에 유용합니다. 이 설정은 새 실행에만 영향을 줍니다. 예를 들어 작업의 동시성이 4이고 4개의 동시 활성 실행이 있다고 가정합니다. 그런 다음, 동시성을 3으로 설정하면 활성 실행이 종료되지 않습니다. 그러나 이후부터 활성 실행이 3개 미만인 경우를 제외하고는 새 실행을 건너뜁니다. 이 값은 1000을 초과할 수 없습니다. 이 값을 0으로 설정하면 모든 새 실행을 건너뜁니다. 기본 동작은 하나의 동시 실행만 허용하는 것입니다. |
응답 구조
필드 이름 | Type | 설명 |
---|---|---|
job_id |
INT64 |
새로 만든 작업의 정식 식별자입니다. |
List
엔드포인트 | HTTP 메서드 |
---|---|
2.0/jobs/list |
GET |
모든 작업 나열.
예시
요청
curl --netrc --request GET \
https://<databricks-instance>/api/2.0/jobs/list \
| jq .
<databricks-instance>
를 Azure Databricks 작업 영역 인스턴스 이름으로 바꿉니다(예: adb-1234567890123456.7.azuredatabricks.net
).
다음 예제에서는 .netrc 파일 및 jq를 사용합니다.
응답
{
"jobs": [
{
"job_id": 1,
"settings": {
"name": "Nightly model training",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"timeout_seconds": 100000000,
"max_retries": 1,
"schedule": {
"quartz_cron_expression": "0 15 22 * * ?",
"timezone_id": "America/Los_Angeles",
"pause_status": "UNPAUSED"
},
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
},
"created_time": 1457570074236
}
]
}
응답 구조
필드 이름 | Type | 설명 |
---|---|---|
jobs |
작업 배열 | 작업 목록입니다. |
삭제
엔드포인트 | HTTP 메서드 |
---|---|
2.0/jobs/delete |
POST |
작업을 삭제하고 이메일을 JobSettings.email_notifications
에 지정된 주소로 보냅니다. 작업이 이미 제거된 경우 아무 작업도 수행되지 않습니다. 작업이 제거되면 작업 UI 또는 API에 세부 정보 및 실행 기록이 표시되지 않습니다. 이 요청이 완료되면 작업이 제거됩니다. 그러나 이 요청을 받기 전에 활성 상태였던 실행은 여전히 활성 상태일 수 있습니다. 비동기적으로 종료됩니다.
예시
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/delete \
--data '{ "job_id": <job-id> }'
다음을
<databricks-instance>
를 Azure Databricks 작업 영역 인스턴스 이름(예:adb-1234567890123456.7.azuredatabricks.net
)으로 바꿉니다.<job-id>
를 작업 ID(예:123
)로 바꿉니다.
다음 예제에서는 .netrc 파일을 사용합니다.
요청 구조체
필드 이름 | Type | 설명 |
---|---|---|
job_id |
INT64 |
삭제할 작업의 정식 식별자입니다. 이 필드는 필수 필드입니다. |
가져오기
엔드포인트 | HTTP 메서드 |
---|---|
2.0/jobs/get |
GET |
단일 작업에 대한 정보를 검색합니다.
예시
요청
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/get?job_id=<job-id>' \
| jq .
또는
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/get \
--data job_id=<job-id> \
| jq .
다음을
<databricks-instance>
를 Azure Databricks 작업 영역 인스턴스 이름(예:adb-1234567890123456.7.azuredatabricks.net
)으로 바꿉니다.<job-id>
를 작업 ID(예:123
)로 바꿉니다.
다음 예제에서는 .netrc 파일 및 jq를 사용합니다.
응답
{
"job_id": 1,
"settings": {
"name": "Nightly model training",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"timeout_seconds": 100000000,
"max_retries": 1,
"schedule": {
"quartz_cron_expression": "0 15 22 * * ?",
"timezone_id": "America/Los_Angeles",
"pause_status": "UNPAUSED"
},
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
},
"created_time": 1457570074236
}
요청 구조체
필드 이름 | Type | 설명 |
---|---|---|
job_id |
INT64 |
정보를 검색할 작업의 정식 식별자입니다. 이 필드는 필수 필드입니다. |
응답 구조
필드 이름 | Type | 설명 |
---|---|---|
job_id |
INT64 |
이 작업의 정식 식별자입니다. |
creator_user_name |
STRING |
작성자 사용자 이름입니다. 사용자가 삭제된 경우 이 필드는 응답에 포함되지 않습니다. |
settings |
JobSettings | 이 작업 및 해당하는 모든 실행에 대한 설정입니다. 이러한 설정은 다시 설정 또는 업데이트 엔드포인트를 사용하여 업데이트할 수 있습니다. |
created_time |
INT64 |
이 작업을 만든 시간(Epoch 밀리초 - 1970년 1월 1일 UTC 이후의 밀리초)입니다. |
초기화
엔드포인트 | HTTP 메서드 |
---|---|
2.0/jobs/reset |
POST |
특정 작업에 대한 모든 설정을 덮어씁니다. 업데이트 엔드포인트를 사용하여 작업 설정을 부분적으로 업데이트합니다.
예시
이 예제 요청은 작업 2를 만들기 예제의 작업 1과 동일하게 만듭니다.
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/reset \
--data @reset-job.json \
| jq .
reset-job.json
:
{
"job_id": 2,
"new_settings": {
"name": "Nightly model training",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"timeout_seconds": 100000000,
"max_retries": 1,
"schedule": {
"quartz_cron_expression": "0 15 22 * * ?",
"timezone_id": "America/Los_Angeles",
"pause_status": "UNPAUSED"
},
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
}
}
다음을
<databricks-instance>
를 Azure Databricks 작업 영역 인스턴스 이름(예:adb-1234567890123456.7.azuredatabricks.net
)으로 바꿉니다.reset-job.json
의 콘텐츠를 솔루션에 적합한 필드로 바꿉니다.
다음 예제에서는 .netrc 파일 및 jq를 사용합니다.
요청 구조체
필드 이름 | Type | 설명 |
---|---|---|
job_id |
INT64 |
다시 설정할 작업의 정식 식별자입니다. 이 필드는 필수 필드입니다. |
new_settings |
JobSettings | 작업의 새 설정입니다. 이러한 설정은 이전 설정을 완전히 바꿉니다.JobSettings.timeout_seconds 필드에 대한 변경 내용은 활성 실행에 적용됩니다. 다른 필드에 대한 변경 내용은 이후 실행에만 적용됩니다. |
업데이트
엔드포인트 | HTTP 메서드 |
---|---|
2.0/jobs/update |
POST |
기존 작업의 특정 설정을 추가, 변경 또는 제거합니다. 다시 설정 엔드포인트를 사용하여 모든 작업 설정을 덮어씁니다.
예시
이 예제 요청은 라이브러리를 제거하고 이메일 알림 설정을 만들기 예제에 정의된 작업 1에 추가합니다.
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/update \
--data @update-job.json \
| jq .
update-job.json
:
{
"job_id": 1,
"new_settings": {
"existing_cluster_id": "1201-my-cluster",
"email_notifications": {
"on_start": [ "someone@example.com" ],
"on_success": [],
"on_failure": []
}
},
"fields_to_remove": ["libraries"]
}
다음을
<databricks-instance>
를 Azure Databricks 작업 영역 인스턴스 이름(예:adb-1234567890123456.7.azuredatabricks.net
)으로 바꿉니다.update-job.json
의 콘텐츠를 솔루션에 적합한 필드로 바꿉니다.
다음 예제에서는 .netrc 파일 및 jq를 사용합니다.
요청 구조체
필드 이름 | Type | 설명 |
---|---|---|
job_id |
INT64 |
업데이트할 작업의 정식 식별자입니다. 이 필드는 필수 필드입니다. |
new_settings |
JobSettings | 작업에 대한 새 설정입니다.new_settings 에서 지정된 최상위 필드는 배열을 제외하고 완전히 대체됩니다. 배열은 해당 키 필드를 기반으로 병합되며(예: task_key 또는job_cluster_key ), 동일한 키를 가진 배열 항목은 완전히 대체됩니다. 배열 병합을 제외하고 중첩된 필드를 부분적으로 업데이트하는 것은 지원되지 않습니다.JobSettings.timeout_seconds 필드에 대한 변경 내용은 활성 실행에 적용됩니다. 다른 필드에 대한 변경 내용은 이후 실행에만 적용됩니다. |
fields_to_remove |
STRING 배열입니다. |
작업 설정에서 최상위 필드를 제거합니다. 중첩된 필드 제거는 tasks 및 job_clusters 배열의 항목을 제외하고 지원되지 않습니다. 예를 들어 다음은 이 필드에 유효한 인수입니다.["libraries", "schedule", "tasks/task_1", "job_clusters/Default"] 이 필드는 선택적입니다. |
지금 실행
Important
- 작업 영역은 1000개의 동시 태스크 실행으로 제한됩니다. 즉시 시작할 수 없는 실행을 요청하면
429 Too Many Requests
응답이 반환됩니다. - 작업 영역에서 한 시간 내에 만들 수 있는 작업 수는 10000개로 제한됩니다("실행 제출" 포함). 이 제한은 REST API 및 Notebook 워크플로에 의해 만들어진 작업에도 영향을 줍니다.
- 작업 영역에는 최대 12000개의 저장된 작업이 포함될 수 있습니다.
- 작업에는 최대 100개의 태스크가 포함될 수 있습니다.
엔드포인트 | HTTP 메서드 |
---|---|
2.0/jobs/run-now |
POST |
지금 작업을 실행하고 트리거된 실행의 run_id
를 반환합니다.
예시
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/run-now \
--data @run-job.json \
| jq .
run-job.json
:
Notebook 작업에 대한 예제 요청:
{
"job_id": 1,
"notebook_params": {
"name": "john doe",
"age": "35"
}
}
JAR 작업에 대한 예제 요청:
{
"job_id": 2,
"jar_params": [ "john doe", "35" ]
}
다음을
<databricks-instance>
를 Azure Databricks 작업 영역 인스턴스 이름(예:adb-1234567890123456.7.azuredatabricks.net
)으로 바꿉니다.run-job.json
의 콘텐츠를 솔루션에 적합한 필드로 바꿉니다.
다음 예제에서는 .netrc 파일 및 jq를 사용합니다.
요청 구조체
필드 이름 | Type | 설명 |
---|---|---|
job_id |
INT64 |
|
jar_params |
STRING 배열입니다. |
JAR 태스크가 있는 작업에 대한 매개 변수 목록입니다(예: "jar_params": ["john doe", "35"] ). 매개 변수는 Spark JAR 태스크에 지정된 주 클래스의 main 함수를 호출하는 데 사용됩니다. run-now 에 지정하지 않으면 기본적으로 빈 목록이 됩니다. jar_params는 notebook_params와 함께 지정할 수 없습니다. 이 필드의 JSON 표현(예: {"jar_params":["john doe","35"]} )은 10,000바이트를 초과할 수 없습니다. |
notebook_params |
ParamPair 맵 | Notebook 태스크가 있는 작업에 대한 키에서 값으로의 맵(예:"notebook_params": {"name": "john doe", "age": "35"} . 맵은 Notebook에 전달되며 dbutils.widgets.get 함수를 통해 액세스할 수 있습니다.run-now 에 지정하지 않으면 트리거된 실행에서 작업의 기본 매개 변수를 사용합니다.notebook_params는 jar_params와 함께 지정할 수 없습니다. 이 필드의 JSON 표현(예: {"notebook_params":{"name":"john doe","age":"35"}} )은 10,000바이트를 초과할 수 없습니다. |
python_params |
STRING 배열입니다. |
Python 태스크가 있는 작업에 대한 매개 변수 목록입니다(예: "python_params": ["john doe", "35"] ). 매개 변수는 명령줄 매개 변수로 Python 파일에 전달됩니다. run-now 에 지정하면 작업 설정에 지정된 매개 변수를 덮어씁니다. 이 필드의 JSON 표현(예: {"python_params":["john doe","35"]} )은 10,000바이트를 초과할 수 없습니다. |
spark_submit_params |
STRING 배열입니다. |
spark submit 태스크가 있는 작업에 대한 매개 변수 목록(예:"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"] . 매개 변수는 명령줄 매개 변수로 spark-submit 스크립트에 전달됩니다. run-now 에 지정하면 작업 설정에 지정된 매개 변수를 덮어씁니다. 이 필드의 JSON 표현은 10,000바이트를 초과할 수 없습니다. |
idempotency_token |
STRING |
작업 실행 요청의 멱등성을 보장하기 위한 선택적 토큰입니다. 제공된 토큰을 사용한 실행이 이미 있는 경우 요청은 새 실행을 만들지 않고 기존 실행의 ID를 대신 반환합니다. 제공된 토큰을 사용한 실행이 삭제되면 오류가 반환됩니다. 멱등성 토큰을 지정하는 경우 실패 시 요청이 성공할 때까지 다시 시도할 수 있습니다. Azure Databricks는 해당 멱등성 토큰을 사용하여 정확히 한 번의 실행이 시작되도록 보장합니다. 이 토큰은 최대 64자여야 합니다. 자세한 내용은 작업에 대한 멱등성을 확인하는 방법을 참조하세요. |
응답 구조
필드 이름 | Type | 설명 |
---|---|---|
run_id |
INT64 |
새로 트리거된 실행의 전역적으로 고유한 ID입니다. |
number_in_job |
INT64 |
작업의 모든 실행 중에서 이 실행의 시퀀스 번호입니다. |
실행 제출
Important
- 작업 영역은 1000개의 동시 태스크 실행으로 제한됩니다. 즉시 시작할 수 없는 실행을 요청하면
429 Too Many Requests
응답이 반환됩니다. - 작업 영역에서 한 시간 내에 만들 수 있는 작업 수는 10000개로 제한됩니다("실행 제출" 포함). 이 제한은 REST API 및 Notebook 워크플로에 의해 만들어진 작업에도 영향을 줍니다.
- 작업 영역에는 최대 12000개의 저장된 작업이 포함될 수 있습니다.
- 작업에는 최대 100개의 태스크가 포함될 수 있습니다.
엔드포인트 | HTTP 메서드 |
---|---|
2.0/jobs/runs/submit |
POST |
일회성 실행을 제출합니다. 이 엔드포인트를 사용하면 작업을 만들지 않고도 직접 워크로드를 제출할 수 있습니다. jobs/runs/get
API를 사용하여 작업이 제출된 후의 실행 상태를 확인합니다.
예시
요청
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/submit \
--data @submit-job.json \
| jq .
submit-job.json
:
{
"run_name": "my spark task",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
}
다음을
<databricks-instance>
를 Azure Databricks 작업 영역 인스턴스 이름(예:adb-1234567890123456.7.azuredatabricks.net
)으로 바꿉니다.submit-job.json
의 콘텐츠를 솔루션에 적합한 필드로 바꿉니다.
다음 예제에서는 .netrc 파일 및 jq를 사용합니다.
응답
{
"run_id": 123
}
요청 구조체
Important
- 작업을 새 작업 클러스터에서 실행하는 경우 작업은 작업 컴퓨팅 가격 책정에 따라 Jobs Compute(자동화) 워크로드로 처리됩니다.
- 작업을 기존 다목적 클러스터에서 실행하는 경우 All-Purpose Compute 가격 책정에 따라 All-Purpose Compute(대화형) 워크로드로 처리됩니다.
필드 이름 | Type | 설명 |
---|---|---|
existing_cluster_id 또는 new_cluster |
STRING 또는 NewCluster |
existing_cluster_id인 경우 이 작업의 모든 실행에 사용할 기존 클러스터의 ID입니다. 작업을 기존 클러스터에서 실행할 때 응답이 중지되면 클러스터를 수동으로 다시 시작해야 할 수 있습니다. 안정성을 높이려면 작업을 새 클러스터에서 실행하는 것이 좋습니다. new_cluster인 경우 각 실행에 대해 만들 클러스터에 대한 설명입니다. PipelineTask를 지정하는 경우 이 필드는 비어 있을 수 있습니다. |
notebook_task OR spark_jar_task ORspark_python_task OR spark_submit_task ORpipeline_task 또는 run_job_task |
NotebookTask OR SparkJarTask OR SparkPythonTask OR SparkSubmitTask OR PipelineTask OR RunJobTask | notebook_task인 경우 이 작업에서 Notebook을 실행해야 함을 나타냅니다. 이 필드는 spark_jar_task와 함께 지정할 수 없습니다. spark_jar_task인 경우 이 작업에서 JAR을 실행해야 함을 나타냅니다. spark_python_task인 경우 이 작업에서 Python 파일을 실행해야 함을 나타냅니다. spark_submit_task인 경우 spark submit 스크립트에서 이 작업을 시작해야 임을 나타냅니다. pipeline_task인 경우 이 작업에서 Delta Live Tables 파이프라인을 실행해야 함을 나타냅니다. run_job_task 경우 이 작업이 다른 작업을 실행해야 함을 나타냅니다. |
run_name |
STRING |
실행에 대한 선택적 이름입니다. 기본값은 Untitled 입니다. |
webhook_notifications |
WebhookNotifications | 이 작업의 실행이 시작, 완료 또는 실패할 때 알릴 선택적 시스템 대상의 세트입니다. |
notification_settings |
JobNotificationSettings | 이 실행에 대한 각 webhook_notifications 에 알림을 보낼 때 사용되는 선택적 알림 설정입니다. |
libraries |
라이브러리 배열 | 작업을 실행할 클러스터에 설치할 라이브러리의 선택적 목록입니다. 기본값은 빈 목록입니다. |
timeout_seconds |
INT32 |
이 작업의 각 실행에 적용되는 선택적 시간 제한입니다. 기본 동작은 시간 제한이 없는 것입니다. |
idempotency_token |
STRING |
작업 실행 요청의 멱등성을 보장하기 위한 선택적 토큰입니다. 제공된 토큰을 사용한 실행이 이미 있는 경우 요청은 새 실행을 만들지 않고 기존 실행의 ID를 대신 반환합니다. 제공된 토큰을 사용한 실행이 삭제되면 오류가 반환됩니다. 멱등성 토큰을 지정하는 경우 실패 시 요청이 성공할 때까지 다시 시도할 수 있습니다. Azure Databricks는 해당 멱등성 토큰을 사용하여 정확히 한 번의 실행이 시작되도록 보장합니다. 이 토큰은 최대 64자여야 합니다. 자세한 내용은 작업에 대한 멱등성을 확인하는 방법을 참조하세요. |
응답 구조
필드 이름 | Type | 설명 |
---|---|---|
run_id |
INT64 |
새로 제출된 실행의 정식 식별자입니다. |
실행 나열
엔드포인트 | HTTP 메서드 |
---|---|
2.0/jobs/runs/list |
GET |
나열은 시작 시간을 기준으로 내림차순으로 실행됩니다.
참고 항목
실행은 60일 후에 자동으로 제거됩니다. 60일을 초과하여 참조하려면 만료되기 전에 이전 실행 결과를 저장해야 합니다. UI를 사용하여 내보내려면 작업 실행 결과 내보내기를 참조하세요. 작업 API를 사용하여 내보내려면 실행 내보내기를 참조하세요.
예시
요청
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/list?job_id=<job-id>&active_only=<true-false>&offset=<offset>&limit=<limit>&run_type=<run-type>' \
| jq .
또는
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/list \
--data 'job_id=<job-id>&active_only=<true-false>&offset=<offset>&limit=<limit>&run_type=<run-type>' \
| jq .
다음을
<databricks-instance>
를 Azure Databricks 작업 영역 인스턴스 이름(예:adb-1234567890123456.7.azuredatabricks.net
)으로 바꿉니다.<job-id>
를 작업 ID(예:123
)로 바꿉니다.- “
<true-false>
을true
또는false
으로 바꿉니다.” <offset>
을offset
값으로 바꿉니다.<limit>
을limit
값으로 바꿉니다.<run-type>
을run_type
값으로 바꿉니다.
다음 예제에서는 .netrc 파일 및 jq를 사용합니다.
응답
{
"runs": [
{
"job_id": 1,
"run_id": 452,
"number_in_job": 5,
"state": {
"life_cycle_state": "RUNNING",
"state_message": "Performing action"
},
"task": {
"notebook_task": {
"notebook_path": "/Users/donald@duck.com/my-notebook"
}
},
"cluster_spec": {
"existing_cluster_id": "1201-my-cluster"
},
"cluster_instance": {
"cluster_id": "1201-my-cluster",
"spark_context_id": "1102398-spark-context-id"
},
"overriding_parameters": {
"jar_params": ["param1", "param2"]
},
"start_time": 1457570074236,
"end_time": 1457570075149,
"setup_duration": 259754,
"execution_duration": 3589020,
"cleanup_duration": 31038,
"run_duration": 3879812,
"trigger": "PERIODIC"
}
],
"has_more": true
}
요청 구조체
필드 이름 | Type | 설명 |
---|---|---|
active_only 또는 completed_only |
BOOL 또는 BOOL |
active_only가 true 이면 활성 실행만 결과에 포함되고, 그렇지 않으면 활성 실행 및 완료된 실행을 모두 나열합니다. 활성 실행은 PENDING , RUNNING 또는 TERMINATING RunLifecycleState의 실행입니다. Completed_only가 true 인 경우 이 필드는 true 일 수 없습니다.Completed_only가 true 이면 완료된 실행만 결과에 포함되고, 그렇지 않으면 활성 실행 및 완료된 실행을 모두 나열합니다. active_only가 true 인 경우 이 필드는 true 일 수 없습니다. |
job_id |
INT64 |
나열할 작업이 실행됩니다. 생략하면 작업 서비스에서 모든 작업의 실행을 나열합니다. |
offset |
INT32 |
가장 최근 실행을 기준으로 반환할 첫 번째 실행의 오프셋입니다. |
limit |
INT32 |
반환할 실행 수입니다. 이 값은 0보다 크고 1000보다 작아야 합니다. 기본값은 20입니다. 요청에서 제한을 0으로 지정하는 경우 서비스에서 최대 제한을 대신 사용합니다. |
run_type |
STRING |
반환할 실행 형식입니다. 실행 형식에 대한 설명은 Run을 참조하세요. |
응답 구조
필드 이름 | Type | 설명 |
---|---|---|
runs |
Run 배열 | 가장 최근에 시작한 것부터 가장 적게 시작한 것까지의 실행 목록입니다. |
has_more |
BOOL |
true이면 제공된 필터와 일치하는 추가 실행을 목록에 사용할 수 있습니다. |
실행 가져오기
엔드포인트 | HTTP 메서드 |
---|---|
2.0/jobs/runs/get |
GET |
실행의 메타데이터를 검색합니다.
참고 항목
실행은 60일 후에 자동으로 제거됩니다. 60일을 초과하여 참조하려면 만료되기 전에 이전 실행 결과를 저장해야 합니다. UI를 사용하여 내보내려면 작업 실행 결과 내보내기를 참조하세요. 작업 API를 사용하여 내보내려면 실행 내보내기를 참조하세요.
예시
요청
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/get?run_id=<run-id>' \
| jq .
또는
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/get \
--data run_id=<run-id> \
| jq .
다음을
<databricks-instance>
를 Azure Databricks 작업 영역 인스턴스 이름(예:adb-1234567890123456.7.azuredatabricks.net
)으로 바꿉니다.<run-id>
를 실행의 ID(예:123
)로 바꿉니다.
다음 예제에서는 .netrc 파일 및 jq를 사용합니다.
응답
{
"job_id": 1,
"run_id": 452,
"number_in_job": 5,
"state": {
"life_cycle_state": "RUNNING",
"state_message": "Performing action"
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/my-notebook"
}
},
"cluster_spec": {
"existing_cluster_id": "1201-my-cluster"
},
"cluster_instance": {
"cluster_id": "1201-my-cluster",
"spark_context_id": "1102398-spark-context-id"
},
"overriding_parameters": {
"jar_params": ["param1", "param2"]
},
"start_time": 1457570074236,
"end_time": 1457570075149,
"setup_duration": 259754,
"execution_duration": 3589020,
"cleanup_duration": 31038,
"run_duration": 3879812,
"trigger": "PERIODIC"
}
요청 구조체
필드 이름 | Type | 설명 |
---|---|---|
run_id |
INT64 |
메타데이터를 검색할 실행의 정식 식별자입니다. 이 필드는 필수 필드입니다. |
응답 구조
필드 이름 | Type | 설명 |
---|---|---|
job_id |
INT64 |
이 실행이 포함된 작업의 정식 식별자입니다. |
run_id |
INT64 |
실행의 정식 식별자입니다. 이 ID는 모든 작업의 모든 실행에서 고유합니다. |
number_in_job |
INT64 |
작업의 모든 실행 중에서 이 실행의 시퀀스 번호입니다. 이 값은 1에서 시작합니다. |
original_attempt_run_id |
INT64 |
이 실행이 이전 실행 시도의 다시 시도인 경우 이 필드에는 원래 시도의 run_id가 포함되고, 그렇지 않은 경우 run_id와 동일합니다. |
state |
RunState | 실행의 결과 및 수명 주기 상태입니다. |
schedule |
CronSchedule | 주기적 스케줄러에서 트리거된 경우 이 실행을 트리거한 cron 일정입니다. |
task |
JobTask | 실행에서 수행하는 태스크(있는 경우)입니다. |
cluster_spec |
ClusterSpec | 이 실행을 만들 때 작업의 클러스터 사양에 대한 스냅샷입니다. |
cluster_instance |
ClusterInstance | 이 실행에 사용되는 클러스터입니다. 실행이 새 클러스터를 사용하도록 지정된 경우 작업 서비스에서 실행에 대한 클러스터를 요청하면 이 필드가 설정됩니다. |
overriding_parameters |
RunParameters | 이 실행에 사용되는 매개 변수입니다. |
start_time |
INT64 |
이 실행을 시작한 시간(Epoch 밀리초 - 1970년 1월 1일 UTC 이후의 밀리초)입니다. 이는 작업 태스크 실행을 시작하는 시간이 아닐 수 있습니다. 예를 들어 작업이 새 클러스터에서 실행되도록 예약된 경우 클러스터 만들기 호출이 실행되는 시간입니다. |
end_time |
INT64 |
이 실행이 Epoch 밀리초(1970년 1월 1일 UTC 이후의 밀리초)로 종료된 시간입니다. 작업이 계속 실행 중인 경우 이 필드는 0으로 설정됩니다. |
setup_duration |
INT64 |
클러스터를 설정하는 데 걸린 시간(밀리초)입니다. 새 클러스터에서 실행되는 실행의 경우 이는 클러스터를 만든 시간이며, 기존 클러스터에서 실행되는 실행의 경우 이 시간은 매우 짧아야 합니다. 총 실행 시간은 setup_duration 의 합입니다.execution_duration 및 cleanup_duration . 멀티태스킹 실행의 경우 setup_duration 필드는 0으로 설정됩니다. 멀티태스킹 작업 실행의 총 기간은run_duration 필드의 값입니다. |
execution_duration |
INT64 |
명령이 완료되거나, 실패하거나, 시간 초과되거나, 취소되거나 예기치 않은 오류가 발생할 때까지 JAR 또는 Notebook에서 명령을 실행하는 데 걸린 시간(밀리초)입니다. 실행의 총 지속 시간은 setup_duration , execution_duration 의 합입니다.cleanup_duration . 멀티태스킹 실행의 경우 execution_duration 필드는 0으로 설정됩니다. 멀티태스킹 작업 실행의 총 기간은 run_duration 필드의 값입니다. |
cleanup_duration |
INT64 |
클러스터를 종료하고 연결된 아티팩트를 정리하는 데 걸린 시간(밀리초)입니다. 실행의 총 지속 시간은 setup_duration , execution_duration 및 cleanup_duration 의 합입니다. 멀티태스킹 실행의 경우 cleanup_duration 필드는 0으로 설정됩니다. 멀티태스킹 작업 실행의 총 기간은 run_duration 필드의 값입니다. |
run_duration |
INT64 |
작업을 실행하고 모든 수리를 완료하는 데 걸린 시간(밀리초)입니다. 이 필드는 작업 실행이 아닌 멀티태스킹 작업 실행에 대해서만 설정됩니다. 작업 실행 기간은setup_duration , execution_duration 및 cleanup_duration 의 합입니다. |
trigger |
TriggerType | 이 실행을 실행한 트리거 형식입니다. |
creator_user_name |
STRING |
작성자 사용자 이름입니다. 사용자가 삭제된 경우 이 필드는 응답에 포함되지 않습니다. |
run_page_url |
STRING |
실행의 세부 정보 페이지에 대한 URL입니다. |
실행 내보내기
엔드포인트 | HTTP 메서드 |
---|---|
2.0/jobs/runs/export |
GET |
작업 실행 태스크를 내보내고 검색합니다.
참고 항목
Notebook 실행만 HTML 형식으로 내보낼 수 있습니다. 다른 형식의 실행 내보내기는 실패합니다.
예시
요청
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/export?run_id=<run-id>' \
| jq .
또는
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/export \
--data run_id=<run-id> \
| jq .
다음을
<databricks-instance>
를 Azure Databricks 작업 영역 인스턴스 이름(예:adb-1234567890123456.7.azuredatabricks.net
)으로 바꿉니다.<run-id>
를 실행의 ID(예:123
)로 바꿉니다.
다음 예제에서는 .netrc 파일 및 jq를 사용합니다.
응답
{
"views": [ {
"content": "<!DOCTYPE html><html><head>Head</head><body>Body</body></html>",
"name": "my-notebook",
"type": "NOTEBOOK"
} ]
}
JSON 응답에서 HTML Notebook을 추출하려면 이 Python 스크립트를 다운로드하여 실행합니다.
참고 항목
__DATABRICKS_NOTEBOOK_MODEL
개체의 Notebook 본문이 인코딩됩니다.
요청 구조체
필드 이름 | Type | 설명 |
---|---|---|
run_id |
INT64 |
실행의 정식 식별자입니다. 이 필드는 필수 필드입니다. |
views_to_export |
ViewsToExport | 내보낼 보기(CODE, DASHBOARDS 또는 ALL)입니다. 기본값은 CODE입니다. |
응답 구조
필드 이름 | Type | 설명 |
---|---|---|
views |
ViewItem 배열 | HTML 형식으로 내보낸 콘텐츠입니다(각 보기 항목에 대해 하나씩). |
실행 취소
엔드포인트 | HTTP 메서드 |
---|---|
2.0/jobs/runs/cancel |
POST |
작업 실행을 취소합니다. 실행은 비동기적으로 취소되므로 이 요청이 완료되면 실행이 계속 실행될 수 있습니다. 실행이 곧 종료됩니다. 실행이 life_cycle_state
터미널에 이미 있는 경우 이 메서드는 작동하지 않습니다.
이 엔드포인트는 run_id
매개 변수가 유효한지 확인하고 잘못된 매개 변수에 대해 400 HTTP 상태 코드를 반환합니다.
예시
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/cancel \
--data '{ "run_id": <run-id> }'
다음을
<databricks-instance>
를 Azure Databricks 작업 영역 인스턴스 이름(예:adb-1234567890123456.7.azuredatabricks.net
)으로 바꿉니다.<run-id>
를 실행의 ID(예:123
)로 바꿉니다.
다음 예제에서는 .netrc 파일을 사용합니다.
요청 구조체
필드 이름 | Type | 설명 |
---|---|---|
run_id |
INT64 |
취소할 실행의 정식 식별자입니다. 이 필드는 필수 필드입니다. |
모두 실행 취소
엔드포인트 | HTTP 메서드 |
---|---|
2.0/jobs/runs/cancel-all |
POST |
작업의 모든 활성 실행을 취소합니다. 실행은 비동기적으로 취소되므로 새 실행이 시작되지 않도록 방지하지는 않습니다.
이 엔드포인트는 job_id
매개 변수가 유효한지 확인하고 잘못된 매개 변수에 대해 400 HTTP 상태 코드를 반환합니다.
예시
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/cancel-all \
--data '{ "job_id": <job-id> }'
다음을
<databricks-instance>
를 Azure Databricks 작업 영역 인스턴스 이름(예:adb-1234567890123456.7.azuredatabricks.net
)으로 바꿉니다.<job-id>
를 작업 ID(예:123
)로 바꿉니다.
다음 예제에서는 .netrc 파일을 사용합니다.
요청 구조체
필드 이름 | Type | 설명 |
---|---|---|
job_id |
INT64 |
모든 실행을 취소할 작업의 정식 식별자입니다. 이 필드는 필수 필드입니다. |
실행 출력 가져오기
엔드포인트 | HTTP 메서드 |
---|---|
2.0/jobs/runs/get-output |
GET |
단일 작업 실행의 출력 및 메타데이터를 검색합니다. Notebook 태스크에서 dbutils.notebook.exit() 호출을 통해 값을 반환하면 이 엔드포인트를 사용하여 해당 값을 검색할 수 있습니다. Azure Databricks는 이 API에서 출력의 처음 5MB를 반환하도록 제한합니다. 더 큰 결과를 반환하기 위해 작업 결과를 클라우드 스토리지 서비스에 저장할 수 있습니다.
이 엔드포인트는 run_id
매개 변수가 유효한지 확인하고 잘못된 매개 변수에 대해 400 HTTP 상태 코드를 반환합니다.
실행은 60일 후에 자동으로 제거됩니다. 60일을 초과하여 참조하려면 만료되기 전에 이전 실행 결과를 저장해야 합니다. UI를 사용하여 내보내려면 작업 실행 결과 내보내기를 참조하세요. 작업 API를 사용하여 내보내려면 실행 내보내기를 참조하세요.
예시
요청
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/get-output?run_id=<run-id>' \
| jq .
또는
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/get-output \
--data run_id=<run-id> \
| jq .
다음을
<databricks-instance>
를 Azure Databricks 작업 영역 인스턴스 이름(예:adb-1234567890123456.7.azuredatabricks.net
)으로 바꿉니다.<run-id>
를 실행의 ID(예:123
)로 바꿉니다.
다음 예제에서는 .netrc 파일 및 jq를 사용합니다.
응답
{
"metadata": {
"job_id": 1,
"run_id": 452,
"number_in_job": 5,
"state": {
"life_cycle_state": "TERMINATED",
"result_state": "SUCCESS",
"state_message": ""
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/my-notebook"
}
},
"cluster_spec": {
"existing_cluster_id": "1201-my-cluster"
},
"cluster_instance": {
"cluster_id": "1201-my-cluster",
"spark_context_id": "1102398-spark-context-id"
},
"overriding_parameters": {
"jar_params": ["param1", "param2"]
},
"start_time": 1457570074236,
"setup_duration": 259754,
"execution_duration": 3589020,
"cleanup_duration": 31038,
"run_duration": 3879812,
"trigger": "PERIODIC"
},
"notebook_output": {
"result": "the maybe truncated string passed to dbutils.notebook.exit()"
}
}
요청 구조체
필드 이름 | Type | 설명 |
---|---|---|
run_id |
INT64 |
실행의 정식 식별자입니다. 여러 작업이 포함된 작업의 경우 이는 작업 실행의 run_id 입니다. 출력 가져오기 실행을 참조하세요. 이 필드는 필수 필드입니다. |
응답 구조
필드 이름 | Type | 설명 |
---|---|---|
notebook_output 또는 error |
NotebookOutput 또는 STRING |
notebook_output인 경우 Notebook 태스크의 출력(사용 가능한 경우)입니다. 호출하지 않고 성공적으로 또는 실패와 함께 종료되는 Notebook 태스크인dbutils.notebook.exit() 는 출력이 비어 있는 것으로 간주됩니다. 이 필드는 설정되지만 해당 결과 값은 비어 있습니다.오류인 경우 출력을 사용할 수 없는 이유를 나타내는 오류 메시지입니다. 메시지는 구조화되지 않으며 정확한 형식은 변경될 수 있습니다. |
metadata |
Run | 출력을 제외한 실행의 모든 세부 정보입니다. |
실행 삭제
엔드포인트 | HTTP 메서드 |
---|---|
2.0/jobs/runs/delete |
POST |
비활성 실행을 삭제합니다. 실행이 활성 상태이면 오류를 반환합니다.
예시
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/delete \
--data '{ "run_id": <run-id> }'
다음을
<databricks-instance>
를 Azure Databricks 작업 영역 인스턴스 이름(예:adb-1234567890123456.7.azuredatabricks.net
)으로 바꿉니다.<run-id>
를 실행의 ID(예:123
)로 바꿉니다.
다음 예제에서는 .netrc 파일을 사용합니다.
요청 구조체
필드 이름 | Type | 설명 |
---|---|---|
run_id |
INT64 |
메타데이터를 검색할 실행의 정식 식별자입니다. |
데이터 구조체
이 구역의 내용:
- ABFSSStorageInfo
- AutoScale
- AzureAttributes
- AzureAvailability
- ClusterInstance
- ClusterLogConf
- ClusterSpec
- ClusterTag
- CronSchedule
- DbfsStorageInfo
- FileStorageInfo
- InitScriptInfo
- 작업
- JobEmailNotifications
- JobNotificationSettings
- JobSettings
- JobTask
- JobsHealthRule
- JobsHealthRules
- 라이브러리
- MavenLibrary
- NewCluster
- NotebookOutput
- NotebookTask
- ParamPair
- PipelineTask
- PythonPyPiLibrary
- RCranLibrary
- Run
- RunJobTask
- RunLifeCycleState
- RunParameters
- RunResultState
- RunState
- SparkConfPair
- SparkEnvPair
- SparkJarTask
- SparkPythonTask
- SparkSubmitTask
- TriggerType
- ViewItem
- ViewType
- ViewsToExport
- 웹후크
- WebhookNotifications
- WorkspaceStorageInfo
ABFSSStorageInfo
ADLS(Azure Data Lake Storage) 스토리지 정보입니다.
필드 이름 | Type | 설명 |
---|---|---|
destination |
STRING |
파일 대상입니다. 예: abfss://... |
AutoScale
최소 및 최대 클러스터 작업자 수를 정의하는 범위입니다.
필드 이름 | Type | 설명 |
---|---|---|
min_workers |
INT32 |
사용량이 부족할 때 클러스터를 축소할 수 있는 최소 작업자 수입니다. 또한 클러스터를 만든 후 갖게 될 초기 작업자 수이기도 합니다. |
max_workers |
INT32 |
오버로드될 때 클러스터가 스케일 업할 수 있는 최대 작업자 수입니다. max_workers는 min_workers 보다 현저히 커야 합니다. |
AzureAttributes
Azure과 관련된 클러스터를 만드는 동안 설정된 특성입니다.
필드 이름 | Type | 설명 |
---|---|---|
first_on_demand |
INT32 |
클러스터의 첫 번째 first_on_demand 노드는 주문형 인스턴스에 배치됩니다. 이 값은 0보다 커야 합니다. 그렇지 않으면 클러스터 만들기 유효성 검사가 실패합니다. 이 값이 현재 클러스터 크기보다 크거나 같으면 모든 노드가 주문형 인스턴스에 배치됩니다. 이 값이 현재 클러스터 크기 보다 작으면 first_on_demand 노드가 주문형 인스턴스에 배치되고 나머지는 가용성 인스턴스에 배치됩니다. 이 값은 클러스터 크기에 영향을 주지 않으며 클러스터의 수명 동안 변경할 수 없습니다. |
availability |
AzureAvailability | first_on_demand 이후의 모든 노드에 사용되는 가용성 유형입니다. |
spot_bid_max_price |
DOUBLE |
Azure 스폿 인스턴스에 사용되는 최대 입찰가입니다. 현재 스폿 가격보다 크거나 같게 설정할 수 있습니다. -1(기본값: 가격을 기준으로 인스턴스를 제거할 수 없음을 지정)로 설정할 수도 있습니다. 인스턴스의 가격은 스폿 인스턴스의 현재 가격 또는 표준 인스턴스의 가격이 됩니다. Azure Portal에서 가격 책정 기록 및 제거 요금을 볼 수 있습니다. |
AzureAvailability
Azure 인스턴스 가용성 유형 동작입니다.
Type | 설명 |
---|---|
SPOT_AZURE |
스폿 인스턴스를 사용합니다. |
ON_DEMAND_AZURE |
주문형 인스턴스를 사용합니다. |
SPOT_WITH_FALLBACK_AZURE |
스폿 인스턴스를 사용하는 것이 좋지만, 스폿 인스턴스를 획득할 수 없는 경우(예: Azure 스폿 가격이 너무 높거나 할당량을 초과한 경우) 주문형 인스턴스로 대체합니다. 풀 가용성에는 적용되지 않습니다. |
ClusterInstance
실행에서 사용하는 클러스터 및 Spark 컨텍스트의 식별자입니다. 이러한 두 값은 모두 모든 시간에 걸쳐 실행 컨텍스트를 식별합니다.
필드 이름 | Type | 설명 |
---|---|---|
cluster_id |
STRING |
실행에서 사용하는 클러스터의 정식 식별자입니다. 이 필드는 항상 기존 클러스터에 대한 실행에 사용할 수 있습니다. 새 클러스터에 대한 실행의 경우 클러스터가 만들어지면 사용할 수 있게 됩니다. 이 값은 /#setting/sparkui/$cluster_id/driver-logs 로 이동하여 로그를 보는 데 사용할 수 있습니다. 실행이 완료된 후에도 로그는 계속 사용할 수 있습니다.식별자를 아직 사용할 수 없는 경우 이 필드는 응답에 포함되지 않습니다. |
spark_context_id |
STRING |
실행에서 사용하는 Spark 컨텍스트의 정식 식별자입니다. 실행이 실행되기 시작하면 이 필드가 채워집니다. 이 값은 /#setting/sparkui/$cluster_id/$spark_context_id 로 이동하여 Spark UI를 보는 데 사용할 수 있습니다. 실행이 완료된 후에도 Spark UI는 계속 사용할 수 있습니다.식별자를 아직 사용할 수 없는 경우 이 필드는 응답에 포함되지 않습니다. |
ClusterLogConf
클러스터 로그에 대한 경로입니다.
필드 이름 | Type | 설명 |
---|---|---|
dbfs |
DbfsStorageInfo | 클러스터 로그의 DBFS 위치입니다. 대상을 제공해야 합니다. 예를 들면 다음과 같습니다.{ "dbfs" : { "destination" : "dbfs:/home/cluster_log" } } |
ClusterSpec
Important
- 작업을 새 작업 클러스터에서 실행하는 경우 작업은 작업 컴퓨팅 가격 책정에 따라 Jobs Compute(자동화) 워크로드로 처리됩니다.
- 작업을 기존 다목적 클러스터에서 실행하는 경우 All-Purpose Compute 가격 책정에 따라 All-Purpose Compute(대화형) 워크로드로 처리됩니다.
필드 이름 | Type | 설명 |
---|---|---|
existing_cluster_id 또는 new_cluster |
STRING 또는 NewCluster |
existing_cluster_id인 경우 이 작업의 모든 실행에 사용할 기존 클러스터의 ID입니다. 작업을 기존 클러스터에서 실행할 때 응답이 중지되면 클러스터를 수동으로 다시 시작해야 할 수 있습니다. 안정성을 높이려면 작업을 새 클러스터에서 실행하는 것이 좋습니다. new_cluster인 경우 각 실행에 대해 만들 클러스터에 대한 설명입니다. PipelineTask를 지정하는 경우 이 필드는 비어 있을 수 있습니다. |
libraries |
라이브러리 배열 | 작업을 실행할 클러스터에 설치할 라이브러리의 선택적 목록입니다. 기본값은 빈 목록입니다. |
ClusterTag
클러스터 태그 정의입니다.
Type | 설명 |
---|---|
STRING |
태그의 키입니다. 키는 다음과 같아야 합니다. - 1~512문자 사이여야 함 - <>%*&+?\\/ 문자를 포함하지 않음- azure , microsoft , windows 로 시작하지 않음 |
STRING |
태그의 값입니다. 값 길이는 256 UTF-8 문자보다 작거나 같아야 합니다. |
CronSchedule
필드 이름 | Type | 설명 |
---|---|---|
quartz_cron_expression |
STRING |
작업 일정을 설명하는 Quartz 구문을 사용하는 Cron 식입니다. 자세한 내용은 Cron 트리거를 참조하세요. 이 필드는 필수 필드입니다. |
timezone_id |
STRING |
Java 표준 시간대 ID입니다. 작업 일정은 이 표준 시간대와 관련하여 결정됩니다. 자세한 내용은 Java TimeZone을 참조하세요. 이 필드는 필수 필드입니다. |
pause_status |
STRING |
이 일정이 일시 중지되었는지 여부를 나타냅니다. "PAUSED" 또는 "UNPAUSED" 중 하나입니다. |
DbfsStorageInfo
DBFS 스토리지 정보입니다.
필드 이름 | Type | 설명 |
---|---|---|
destination |
STRING |
DBFS 대상입니다. 예: dbfs:/my/path |
FileStorageInfo
파일 스토리지 정보입니다.
참고 항목
이 위치 유형은 Databricks 컨테이너 서비스를 사용하여 설정된 클러스터에만 사용할 수 있습니다.
필드 이름 | Type | 설명 |
---|---|---|
destination |
STRING |
파일 대상입니다. 예: file:/my/file.sh |
InitScriptInfo
init 스크립트의 경로입니다.
Databricks 컨테이너 서비스에서 init 스크립트를 사용하는 방법에 대한 지침은 init 스크립트 사용을 참조하세요.
참고 항목
파일 스토리지 유형(필드 이름: file
)은 Databricks 컨테이너 서비스를 사용하여 설정된 클러스터에만 사용할 수 있습니다. FileStorageInfo를 참조하세요.
필드 이름 | Type | 설명 |
---|---|---|
workspace ORdbfs (더 이상 사용되지 않음)또는 abfss |
WorkspaceStorageInfo DbfsStorageInfo (사용되지 않음) ABFSSStorageInfo |
init 스크립트의 작업 영역 위치입니다. 대상을 제공해야 합니다. 예를 들면 다음과 같습니다.{ "workspace" : { "destination" : "/Users/someone@domain.com/init_script.sh" } } (사용되지 않음) init 스크립트의 DBFS 위치입니다. 대상을 제공해야 합니다. 예를 들면 다음과 같습니다. { "dbfs" : { "destination" : "dbfs:/home/init_script" } } init 스크립트의 ADLS(Azure Data Lake Storage) 위치입니다. 대상을 제공해야 합니다. 예를 들어 { "abfss": { "destination" : "abfss://..." } } |
Job
필드 이름 | Type | 설명 |
---|---|---|
job_id |
INT64 |
이 작업의 정식 식별자입니다. |
creator_user_name |
STRING |
작성자 사용자 이름입니다. 사용자가 이미 삭제된 경우 이 필드는 응답에 포함되지 않습니다. |
run_as |
STRING |
작업을 실행할 사용자 이름입니다. run_as 는 현재 작업 설정을 기반으로 하며, 작업 액세스 제어가 사용하지 않도록 설정된 경우 작업 작성자로 설정되고, 작업 액세스 제어가 사용하도록 설정된 경우 is_owner 권한으로 설정됩니다. |
settings |
JobSettings | 이 작업 및 해당하는 모든 실행에 대한 설정입니다. 이러한 설정은 resetJob 메서드를 사용하여 업데이트할 수 있습니다. |
created_time |
INT64 |
이 작업을 만든 시간(Epoch 밀리초 - 1970년 1월 1일 UTC 이후의 밀리초)입니다. |
JobEmailNotifications
Important
on_start, on_success 및 on_failure 필드는 라틴 문자(ASCII 문자 집합)만 허용합니다. ASCII가 아닌 문자를 사용하면 오류가 반환됩니다. 잘못된 비 ASCII 문자의 예로는 중국어, 일본어 간지 및 이모지가 있습니다.
필드 이름 | Type | 설명 |
---|---|---|
on_start |
STRING 배열입니다. |
실행이 시작될 때 알림을 받을 이메일 주소 목록입니다. 작업을 만들거나 다시 설정하거나 업데이트할 때 지정하지 않으면 목록이 비어 있고 알림을 보내지 않습니다. |
on_success |
STRING 배열입니다. |
실행이 성공적으로 완료되면 알림을 받을 이메일 주소 목록입니다. 실행은 TERMINATED 상태의 life_cycle_state 와 SUCCESSFUL 상태의 result_state 로 끝날 경우 성공적으로 완료된 것으로 간주됩니다. 작업을 만들거나 다시 설정하거나 업데이트할 때 지정하지 않으면 목록이 비어 있고 알림을 보내지 않습니다. |
on_failure |
STRING 배열입니다. |
실행이 성공적으로 완료되지 않으면 알림을 받을 이메일 주소 목록입니다. 실행이 INTERNAL_ERROR life_cycle_state 또는 SKIPPED , FAILED 또는 TIMED_OUT result_state로 끝나는 경우 성공적으로 완료된 것으로 간주됩니다. 작업을 만들거나 다시 설정하거나 업데이트 시 이 필드가 지정되지 않으면 목록이 비어 있고 알림을 보내지 않습니다. |
on_duration_warning_threshold_exceeded |
STRING 배열입니다. |
실행 기간이 health 필드에서 RUN_DURATION_SECONDS 메트릭에 대해 설정된 임계값을 초과할 때 알림을 받을 이메일 주소 목록입니다. health 필드에서 작업에 대한 RUN_DURATION_SECONDS 메트릭에 대한 규칙이 지정되지 않으면 알림이 전송되지 않습니다. |
no_alert_for_skipped_runs |
BOOL |
true인 경우 실행을 건너뛰면 on_failure 에 지정된 받는 사람에게 이메일을 보내지 않습니다. |
필드 이름 | Type | 설명 |
---|---|---|
on_start |
웹후크의 배열 | 실행이 시작될 때 알림을 받을 선택적 시스템 대상 목록입니다. 작업을 만들거나 다시 설정하거나 업데이트할 때 지정하지 않으면 목록이 비어 있고 알림을 보내지 않습니다. on_start 속성에 대해 최대 3개의 대상을 지정할 수 있습니다. |
on_success |
웹후크의 배열 | 실행이 성공적으로 완료되면 알림을 받을 선택적 시스템 대상 목록입니다. 실행은 TERMINATED 상태의 life_cycle_state 와 SUCCESSFUL 상태의 result_state 로 끝날 경우 성공적으로 완료된 것으로 간주됩니다. 작업을 만들거나 다시 설정하거나 업데이트할 때 지정하지 않으면 목록이 비어 있고 알림을 보내지 않습니다. on_success 속성에 대해 최대 3개의 대상을 지정할 수 있습니다. |
on_failure |
웹후크의 배열 | 실행이 성공적으로 완료되지 않으면 알림을 받을 선택적 시스템 대상 목록입니다. 실행이 INTERNAL_ERROR life_cycle_state 또는 SKIPPED , FAILED 또는 TIMED_OUT result_state로 끝나는 경우 성공적으로 완료된 것으로 간주됩니다. 작업을 만들거나 다시 설정하거나 업데이트 시 이 필드가 지정되지 않으면 목록이 비어 있고 알림을 보내지 않습니다. on_failure 속성에 대해 최대 3개의 대상을 지정할 수 있습니다. |
on_duration_warning_threshold_exceeded |
웹후크의 배열 | 실행 기간이 health 필드에서 RUN_DURATION_SECONDS 메트릭에 대해 지정된 임계값을 초과할 때 알림을 받을 선택적 시스템 대상 목록입니다. on_duration_warning_threshold_exceeded 속성에 대해 최대 3개의 대상을 지정할 수 있습니다. |
JobNotificationSettings
필드 이름 | Type | 설명 |
---|---|---|
no_alert_for_skipped_runs |
BOOL |
true인 경우 실행을 건너뛰면 on_failure 에 지정된 받는 사람에게 알림을 보내지 않습니다. |
no_alert_for_canceled_runs |
BOOL |
true인 경우 실행을 취소하면 on_failure 에 지정된 받는 사람에게 알림을 보내지 않습니다. |
alert_on_last_attempt |
BOOL |
true이면 다시 시도된 실행에 대해 on_start 에 지정된 받는 사람에게 알림을 보내지 않고, 마지막 실행 재시도까지 on_failure 에 지정된 받는 사람에게 알림을 보내지 마세요. |
JobSettings
Important
- 작업을 새 작업 클러스터에서 실행하는 경우 작업은 작업 컴퓨팅 가격 책정에 따라 Jobs Compute(자동화) 워크로드로 처리됩니다.
- 작업을 기존 다목적 클러스터에서 실행하는 경우 All-Purpose Compute 가격 책정에 따라 All-Purpose Compute(대화형) 워크로드로 처리됩니다.
작업에 대한 설정입니다. 이러한 설정은 resetJob
메서드를 사용하여 업데이트할 수 있습니다.
필드 이름 | Type | 설명 |
---|---|---|
existing_cluster_id 또는 new_cluster |
STRING 또는 NewCluster |
existing_cluster_id인 경우 이 작업의 모든 실행에 사용할 기존 클러스터의 ID입니다. 작업을 기존 클러스터에서 실행할 때 응답이 중지되면 클러스터를 수동으로 다시 시작해야 할 수 있습니다. 안정성을 높이려면 작업을 새 클러스터에서 실행하는 것이 좋습니다. new_cluster인 경우 각 실행에 대해 만들 클러스터에 대한 설명입니다. PipelineTask를 지정하는 경우 이 필드는 비어 있을 수 있습니다. |
notebook_task OR spark_jar_task ORspark_python_task OR spark_submit_task ORpipeline_task 또는 run_job_task |
NotebookTask OR SparkJarTask OR SparkPythonTask OR SparkSubmitTask OR PipelineTask OR RunJobTask | notebook_task인 경우 이 작업에서 Notebook을 실행해야 함을 나타냅니다. 이 필드는 spark_jar_task와 함께 지정할 수 없습니다. spark_jar_task인 경우 이 작업에서 JAR을 실행해야 함을 나타냅니다. spark_python_task인 경우 이 작업에서 Python 파일을 실행해야 함을 나타냅니다. spark_submit_task인 경우 spark submit 스크립트에서 이 작업을 시작해야 임을 나타냅니다. pipeline_task인 경우 이 작업에서 Delta Live Tables 파이프라인을 실행해야 함을 나타냅니다. run_job_task 경우 이 작업이 다른 작업을 실행해야 함을 나타냅니다. |
name |
STRING |
작업에 대한 선택적 이름입니다. 기본값은 Untitled 입니다. |
libraries |
라이브러리 배열 | 작업을 실행할 클러스터에 설치할 라이브러리의 선택적 목록입니다. 기본값은 빈 목록입니다. |
email_notifications |
JobEmailNotifications | 이 작업의 실행이 시작되거나 완료될 때와 이 작업이 삭제될 때 알림을 받을 이메일 주소의 선택적 집합입니다. 기본 동작은 이메일을 보내지 않는 것입니다. |
webhook_notifications |
WebhookNotifications | 이 작업의 실행이 시작, 완료 또는 실패할 때 알릴 선택적 시스템 대상의 세트입니다. |
notification_settings |
JobNotificationSettings | 이 작업에 대해 각각 email_notifications 과 webhook_notifications 에 알림을 보낼 때 사용되는 선택적 알림 설정입니다. |
timeout_seconds |
INT32 |
이 작업의 각 실행에 적용되는 선택적 시간 제한입니다. 기본 동작은 시간 제한이 없는 것입니다. |
max_retries |
INT32 |
실패한 실행을 다시 시도할 수 있는 선택적 최대 횟수입니다. 실행이 FAILED result_state 또는INTERNAL_ERROR life_cycle_state . -1 값은 무기한으로 다시 시도하고, 0 값은 다시 시도하지 않는 것을 의미합니다. 기본 동작은 다시 시도하지 않는 것입니다. |
min_retry_interval_millis |
INT32 |
시도 간의 선택적 최소 간격(밀리초)입니다. 기본 동작은 실패한 실행을 즉시 다시 시도하는 것입니다. |
retry_on_timeout |
BOOL |
시간 제한을 초과하면 작업을 다시 시도할지 여부를 지정하는 선택적 정책입니다. 기본 동작은 시간 제한을 초과하면 다시 시도하지 않는 것입니다. |
schedule |
CronSchedule | 이 작업에 대한 선택적 정기 일정입니다. 기본 동작은 작업 UI에서 "지금 실행"을 클릭하거나 API 요청을runNow . |
max_concurrent_runs |
INT32 |
선택적으로 허용되는 작업의 최대 동시 실행 수입니다. 동일한 작업의 여러 실행을 동시에 실행할 수 있도록 하려면 이 값을 설정합니다. 예를 들어 이는 빈번한 일정에 따라 작업을 트리거하고 연속 실행이 서로 겹치도록 허용하거나 입력 매개 변수에 따라 다른 여러 실행을 트리거하려는 경우에 유용합니다. 이 설정은 새 실행에만 영향을 줍니다. 예를 들어 작업의 동시성이 4이고 4개의 동시 활성 실행이 있다고 가정합니다. 그런 다음, 동시성을 3으로 설정하면 활성 실행이 종료되지 않습니다. 그러나 이후부터 활성 실행이 3개 미만인 경우를 제외하고는 새 실행을 건너뜁니다. 이 값은 1000을 초과할 수 없습니다. 이 값을 0으로 설정하면 모든 새 실행을 건너뜁니다. 기본 동작은 하나의 동시 실행만 허용하는 것입니다. |
health |
JobsHealthRules | 작업에 대해 정의된 선택적 상태 규칙 집합입니다. |
JobTask
필드 이름 | Type | 설명 |
---|---|---|
notebook_task OR spark_jar_task ORspark_python_task OR spark_submit_task ORpipeline_task 또는 run_job_task |
NotebookTask OR SparkJarTask OR SparkPythonTask OR SparkSubmitTask OR PipelineTask OR RunJobTask | notebook_task인 경우 이 작업에서 Notebook을 실행해야 함을 나타냅니다. 이 필드는 spark_jar_task와 함께 지정할 수 없습니다. spark_jar_task인 경우 이 작업에서 JAR을 실행해야 함을 나타냅니다. spark_python_task인 경우 이 작업에서 Python 파일을 실행해야 함을 나타냅니다. spark_submit_task인 경우 spark submit 스크립트에서 이 작업을 시작해야 임을 나타냅니다. pipeline_task인 경우 이 작업에서 Delta Live Tables 파이프라인을 실행해야 함을 나타냅니다. run_job_task 경우 이 작업이 다른 작업을 실행해야 함을 나타냅니다. |
JobsHealthRule
필드 이름 | Type | 설명 |
---|---|---|
metric |
STRING |
특정 상태 규칙에 대해 평가되는 상태 메트릭을 지정합니다. 유효한 값은 RUN_DURATION_SECONDS 입니다. |
operator |
STRING |
상태 메트릭 값을 지정된 임계값과 비교하는 데 사용되는 연산자를 지정합니다. 유효한 값은 GREATER_THAN 입니다. |
value |
INT32 |
상태 규칙을 준수하기 위해 상태 메트릭이 충족해야 하는 임계값을 지정합니다. |
JobsHealthRules
필드 이름 | Type | 설명 |
---|---|---|
rules |
JobsHealthRule의 배열 | 작업에 대해 정의할 수 있는 선택적 상태 규칙 세트입니다. |
라이브러리
필드 이름 | Type | 설명 |
---|---|---|
jar OR egg OR whl ORpypi OR maven OR cran |
STRING 또는 STRING 또는 STRING 또는 PythonPyPiLibrary 또는 MavenLibrary 또는 RCranLibrary |
jar인 경우, 설치할 JAR의 URI입니다. DBFS 및 ADLS(abfss ) URI가 지원됩니다. 예: { "jar": "dbfs:/mnt/databricks/library.jar" } 또는{ "jar": "abfss://<container-path>/library.jar" } . ADLS를 사용하는 경우 클러스터에 라이브러리에 대한 읽기 액세스 권한이 있어야 합니다.egg인 경우, 설치할 egg의 URI입니다. DBFS 및 ADLS URI가 지원됩니다. 예: { "egg": "dbfs:/my/egg" } 또는{ "egg": "abfss://<container-path>/egg" } .whl인 경우, 설치할 wheel 또는 압축된 wheels 의 URI입니다. DBFS 및 ADLS URI가 지원됩니다. 예: { "whl": "dbfs:/my/whl" } 또는{ "whl": "abfss://<container-path>/whl" } . ADLS를 사용하는 경우 클러스터에 라이브러리에 대한 읽기 액세스 권한이 있어야 합니다. 또한 wheel 파일 이름은 올바른 규칙을 사용해야 합니다. 압축된 wheels 을 설치해야 하는 경우 파일 이름의 접미사는 .wheelhouse.zip 이어야 합니다.pypi인 경우, 설치할 PyPI 라이브러리의 사양입니다. repo 필드를 지정하는 것은 선택 사항이며, 지정하지 않으면 기본 pip 인덱스가 사용됩니다. 예시:{ "package": "simplejson", "repo": "https://my-repo.com" } maven인 경우, 설치할 Maven 라이브러리의 사양입니다. 예시: { "coordinates": "org.jsoup:jsoup:1.7.2" } cran인 경우, 설치할 CRAN 라이브러리의 사양입니다. |
MavenLibrary
필드 이름 | Type | 설명 |
---|---|---|
coordinates |
STRING |
Gradle 스타일 Maven 좌표입니다. 예: org.jsoup:jsoup:1.7.2 이 필드는 필수 필드입니다. |
repo |
STRING |
Maven 패키지를 설치할 원본 Maven 리포지토리입니다. 생략하면 Maven Central Repository와 Spark Package를 모두 검색합니다. |
exclusions |
STRING 배열입니다. |
제외할 종속성 목록입니다. 예: ["slf4j:slf4j", "*:hadoop-client"] Maven 종속성 제외 사항: https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html. |
NewCluster
필드 이름 | Type | 설명 |
---|---|---|
num_workers 또는 autoscale |
INT32 또는 AutoScale |
num_workers의 경우 이 클러스터에 있어야 하는 작업자 노드의 수입니다. 하나의 클러스터에 총 num_workers + 1개의 Spark 노드에 대해 하나의 Spark 드라이버와 num_workers개의 실행기가 있습니다. 참고: 클러스터의 속성을 읽을 때 이 필드는 실제 현재 작업자 수가 아니라 원하는 작업자 수를 반영합니다. 예를 들어 클러스터 크기가 5개에서 10개 작업자로 조정되는 경우 이 필드는 10개 작업자의 대상 크기를 반영하도록 즉시 업데이트되는 반면, spark_info에 나열된 작업자는 새 노드가 프로비전됨에 따라 5개에서 10개로 점진적으로 증가합니다. 자동 크기 조정의 경우 부하에 따라 클러스터를 자동으로 확장 및 축소하는 데 필요한 매개 변수입니다. |
spark_version |
STRING |
클러스터의 Spark 버전입니다. 사용 가능한 Spark 버전 목록은 GET 2.0/clusters/spark-versions 호출을 사용하여 검색할 수 있습니다. 이 필드는 필수 필드입니다. |
spark_conf |
SparkConfPair | 선택적 사용자 지정 Spark 구성 키-값 쌍 세트를 포함하는 개체입니다. 각각 다음을 통해 추가 JVM 옵션 문자열을 드라이버와 실행기에 전달할 수도 있습니다.spark.driver.extraJavaOptions 및 spark.executor.extraJavaOptions .Spark confs 예제: {"spark.speculation": true, "spark.streaming.ui.retainedBatches": 5} 또는{"spark.driver.extraJavaOptions": "-verbose:gc -XX:+PrintGCDetails"} |
node_type_id |
STRING |
이 필드는 단일 값을 통해 이 클러스터의 각 Spark 노드에서 사용할 수 있는 리소스를 인코딩합니다. 예를 들어 Spark 노드는 메모리 또는 컴퓨팅 집약적 워크로드에 맞게 프로비전 및 최적화할 수 있습니다. 사용 가능한 노드 유형 목록은 GET 2.0/clusters/list-node-types 호출을 사용하여 검색할 수 있습니다. 이 필드, instance_pool_id 필드 또는 노드 형식 ID 또는 인스턴스 풀 ID를 지정하는 클러스터 정책은 필수입니다. |
driver_node_type_id |
STRING |
Spark 드라이버의 노드 형식입니다. 이 필드는 선택 사항입니다. 설정되지 않으면 드라이버 노드 유형은 위에서 정의한 node_type_id 와 동일한 값으로 설정됩니다. |
custom_tags |
ClusterTag | 클러스터 리소스에 대한 태그 집합을 포함하는 개체입니다. Databricks는 default_tags 외에도 이러한 태그를 사용하여 모든 클러스터 리소스(예: VM)에 태그를 지정합니다. 고: - 태그는 컴퓨팅 최적화 및 메모리 최적화와 같은 레거시 노드 형식에서 지원되지 않습니다. - Databricks는 최대 45개의 사용자 지정 태그를 허용합니다. |
cluster_log_conf |
ClusterLogConf | Spark 로그를 장기 스토리지 대상으로 배달하기 위한 구성입니다. 하나의 클러스터에 대해 하나의 대상만 지정할 수 있습니다. conf가 지정되면 로그가 5 mins 마다 대상으로 전달됩니다. 드라이버 로그의 대상은 <destination>/<cluster-id>/driver 이고, 실행기 로그의 대상은 <destination>/<cluster-id>/executor 입니다. |
init_scripts |
InitScriptInfo의 배열 | init 스크립트를 저장하기 위한 구성입니다. 원하는 수의 스크립트를 지정할 수 있습니다. 스크립트는 제공된 순서대로 순차적으로 실행됩니다. cluster_log_conf 이(가) 지정된 경우 init 스크립트 로그가 다음으로 전송됩니다.<destination>/<cluster-id>/init_scripts . |
spark_env_vars |
SparkEnvPair | 선택적 사용자 지정 환경 변수 키-값 쌍 세트를 포함하는 개체입니다. (X,Y) 형식의 키-값 쌍은 드라이버와 작업자를 시작하는 동안 그대로(즉, (즉, export X='Y' ).추가 집합 SPARK_DAEMON_JAVA_OPTS 을(를) 지정하려면 다음 예제와 같이 $SPARK_DAEMON_JAVA_OPTS 에 추가하는 것이 좋습니다. 이렇게 하면 모든 기본 databricks 관리 환경 변수도 포함됩니다.Spark 환경 변수 예제: {"SPARK_WORKER_MEMORY": "28000m", "SPARK_LOCAL_DIRS": "/local_disk0"} 또는{"SPARK_DAEMON_JAVA_OPTS": "$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true"} |
enable_elastic_disk |
BOOL |
로컬 스토리지 자동 크기 조정: 사용하도록 설정되면 Spark 작업자의 디스크 공간이 부족할 때 이 클러스터에서 추가 디스크 공간을 동적으로 획득합니다. 자세한 내용은 로컬 스토리지 자동 크기 조정 사용을 참조하세요. |
driver_instance_pool_id |
STRING |
드라이버 노드에 사용할 인스턴스 풀의 선택적 ID입니다. 또한 instance_pool_id 를 지정해야 합니다. 자세한 내용은 인스턴스 풀 API을 참조하세요. |
instance_pool_id |
STRING |
클러스터 노드에 사용할 인스턴스 풀의 선택적 ID입니다. driver_instance_pool_id 이(가) 있는 경우instance_pool_id 은(는) 작업자 노드에만 사용됩니다. 그렇지 않으면 드라이버 노드와 작업자 노드 모두에 사용됩니다. 자세한 내용은 인스턴스 풀 API을 참조하세요. |
NotebookOutput
필드 이름 | Type | 설명 |
---|---|---|
result |
STRING |
dbutils.notebook.exit()에 전달된 값입니다. Azure Databricks는 이 API에서 값의 처음 1MB를 반환하도록 제한합니다. 더 큰 결과를 얻기 위해 작업에서 결과를 클라우드 스토리지 서비스에 저장할 수 있습니다. dbutils.notebook.exit() 가 호출되지 않으면 이 필드가 없습니다. |
truncated |
BOOLEAN |
결과가 잘렸는지 여부입니다. |
NotebookTask
모든 출력 셀의 크기는 8MB입니다. 셀의 출력 크기가 더 크면 나머지 실행이 취소되고 실행이 실패한 것으로 표시됩니다. 이 경우 다른 셀에서 출력된 콘텐츠 중 일부도 누락될 수 있습니다.
제한을 초과하는 셀을 찾는 데 도움이 필요한 경우 다목적 클러스터에 대해 Notebook을 실행하고 이 Notebook 자동 저장 기술을 사용합니다.
필드 이름 | Type | 설명 |
---|---|---|
notebook_path |
STRING |
Azure Databricks 작업 영역에서 실행할 Notebook의 절대 경로입니다. 이 경로는 슬래시로 시작해야 합니다. 이 필드는 필수 필드입니다. |
revision_timestamp |
LONG |
Notebook의 수정 버전에 대한 타임스탬프입니다. |
base_parameters |
ParamPair 맵 | 이 작업의 각 실행에 사용할 기본 매개 변수입니다. 매개 변수가 지정된 run-now 를 호출하여 실행이 시작되면 두 매개 변수 맵이 병합됩니다. 동일한 키가 base_parameters 및 run-now 에 지정되면 run-now 의 값이 사용됩니다.동적 값 참조란?을 사용하여 작업 실행에 대한 정보가 포함된 매개 변수를 설정합니다. Notebook에서 작업의 base_parameters 또는 run-now 재정의 매개 변수에 지정되지 않은 매개 변수를 사용하는 경우 Notebook의 기본값이 사용됩니다.dbutils.widgets.get을 사용하여 Notebook에서 이러한 매개 변수를 검색합니다. |
ParamPair
Notebook 태스크를 실행하는 작업에 대한 이름 기반 매개 변수입니다.
Important
이 데이터 구조의 필드는 라틴 문자(ASCII 문자 집합)만 허용합니다. ASCII가 아닌 문자를 사용하면 오류가 반환됩니다. 잘못된 비 ASCII 문자의 예로는 중국어, 일본어 간지 및 이모지가 있습니다.
Type | 설명 |
---|---|
STRING |
매개 변수 이름입니다. dbutils.widgets.get에 전달하여 값을 검색합니다. |
STRING |
매개 변수 값입니다. |
PipelineTask
필드 이름 | Type | 설명 |
---|---|---|
pipeline_id |
STRING |
실행할 Delta Live Tables 파이프라인 태스크의 전체 이름입니다. |
PythonPyPiLibrary
필드 이름 | Type | 설명 |
---|---|---|
package |
STRING |
설치할 PyPI 패키지의 이름입니다. 정확한 버전 사양(선택 사항)도 지원됩니다. 예를 들어 simplejson 및 simplejson==3.8.0 가 있습니다. 이 필드는 필수 필드입니다. |
repo |
STRING |
패키지를 찾을 수 있는 리포지토리입니다. 지정하지 않으면 기본 pip 인덱스가 사용됩니다. |
RCranLibrary
필드 이름 | Type | 설명 |
---|---|---|
package |
STRING |
설치할 CRAN 패키지의 이름입니다. 이 필드는 필수 필드입니다. |
repo |
STRING |
패키지를 찾을 수 있는 리포지토리입니다. 지정하지 않으면 기본 CRAN 리포지토리가 사용됩니다. |
Run
출력을 제외한 실행에 대한 모든 정보입니다. 출력은 getRunOutput
메서드를 사용하여 별도로 검색할 수 있습니다.
필드 이름 | Type | 설명 |
---|---|---|
job_id |
INT64 |
이 실행이 포함된 작업의 정식 식별자입니다. |
run_id |
INT64 |
실행의 정식 식별자입니다. 이 ID는 모든 작업의 모든 실행에서 고유합니다. |
creator_user_name |
STRING |
작성자 사용자 이름입니다. 사용자가 이미 삭제된 경우 이 필드는 응답에 포함되지 않습니다. |
number_in_job |
INT64 |
작업의 모든 실행 중에서 이 실행의 시퀀스 번호입니다. 이 값은 1에서 시작합니다. |
original_attempt_run_id |
INT64 |
이 실행이 이전 실행 시도의 다시 시도인 경우 이 필드에는 원래 시도의 run_id가 포함되고, 그렇지 않은 경우 run_id와 동일합니다. |
state |
RunState | 실행의 결과 및 수명 주기 상태입니다. |
schedule |
CronSchedule | 주기적 스케줄러에서 트리거된 경우 이 실행을 트리거한 cron 일정입니다. |
task |
JobTask | 실행에서 수행하는 태스크(있는 경우)입니다. |
cluster_spec |
ClusterSpec | 이 실행을 만들 때 작업의 클러스터 사양에 대한 스냅샷입니다. |
cluster_instance |
ClusterInstance | 이 실행에 사용되는 클러스터입니다. 실행이 새 클러스터를 사용하도록 지정된 경우 작업 서비스에서 실행에 대한 클러스터를 요청하면 이 필드가 설정됩니다. |
overriding_parameters |
RunParameters | 이 실행에 사용되는 매개 변수입니다. |
start_time |
INT64 |
이 실행을 시작한 시간(Epoch 밀리초 - 1970년 1월 1일 UTC 이후의 밀리초)입니다. 이는 작업 태스크 실행을 시작하는 시간이 아닐 수 있습니다. 예를 들어 작업이 새 클러스터에서 실행되도록 예약된 경우 클러스터 만들기 호출이 실행되는 시간입니다. |
setup_duration |
INT64 |
클러스터를 설정하는 데 걸린 시간(밀리초)입니다. 새 클러스터에서 실행되는 실행의 경우 이는 클러스터를 만든 시간이며, 기존 클러스터에서 실행되는 실행의 경우 이 시간은 매우 짧아야 합니다. |
execution_duration |
INT64 |
명령이 완료되거나, 실패하거나, 시간 초과되거나, 취소되거나 예기치 않은 오류가 발생할 때까지 JAR 또는 Notebook에서 명령을 실행하는 데 걸린 시간(밀리초)입니다. |
cleanup_duration |
INT64 |
클러스터를 종료하고 연결된 아티팩트를 정리하는 데 걸린 시간(밀리초)입니다. 총 실행 기간은 setup_duration, execution_duration 및 cleanup_duration의 합계입니다. |
end_time |
INT64 |
이 실행이 Epoch 밀리초(1970년 1월 1일 UTC 이후의 밀리초)로 종료된 시간입니다. 작업이 계속 실행 중인 경우 이 필드는 0으로 설정됩니다. |
trigger |
TriggerType | 이 실행을 실행한 트리거 형식입니다. |
run_name |
STRING |
실행에 대한 선택적 이름입니다. 기본값은 Untitled 입니다. 허용되는 최대 길이는 UTF-8 인코딩에서 4,096바이트입니다. |
run_page_url |
STRING |
실행의 세부 정보 페이지에 대한 URL입니다. |
run_type |
STRING |
실행의 형식입니다. - JOB_RUN - 일반 작업 실행입니다. 지금 실행을 사용하여 만든 실행입니다.- WORKFLOW_RUN - 워크플로 실행입니다. dbutils.notebook.run을 사용하여 만든 실행입니다.- SUBMIT_RUN - 실행 제출입니다. 지금 실행을 사용하여 만든 실행입니다. |
attempt_number |
INT32 |
트리거된 작업 실행에 대한 이 실행 시도의 시퀀스 번호입니다. 실행의 초기 시도에 대한 attempt_number는 0입니다. 초기 실행 시도가 실패하고 작업에 다시 시도 정책(max_retries > 0)이 있는 경우 원래 시도 ID의 original_attempt_run_id 및 증분하는 attempt_number 를 사용하여 후속 실행이 만들어집니다. 실행은 성공할 때까지만 다시 시도되며 최대 attempt_number 는 작업의 max_retries 값과 동일합니다. |
RunJobTask
필드 이름 | Type | 설명 |
---|---|---|
job_id |
INT32 |
실행할 작업의 고유 식별자입니다. 이 필드는 필수 필드입니다. |
RunLifeCycleState
실행의 수명 주기 상태입니다. 허용되는 상태 전환은 다음과 같습니다.
QUEUED
->PENDING
PENDING
->RUNNING
->TERMINATING
->TERMINATED
PENDING
->SKIPPED
PENDING
->INTERNAL_ERROR
RUNNING
->INTERNAL_ERROR
TERMINATING
->INTERNAL_ERROR
시스템 상태 | 설명 |
---|---|
QUEUED |
실행이 트리거되었지만 다음 제한 중 하나에 도달했기 때문에 큐에 대기됩니다. - 작업 영역에서 최대 동시 활성 실행 - 작업 영역에서 최대 동시 Run Job 작업 실행- 작업의 최대 동시 실행 작업 또는 실행이 이 상태에 도달하기 전에 큐를 사용하도록 설정해야 합니다. |
PENDING |
실행이 트리거되었습니다. 작업에 설정된 최대 동시 실행 수에 이미 도달한 경우, 리소스를 준비하지 않고 실행이 즉시 SKIPPED 상태로 전환됩니다. 그렇지 않은 경우 클러스터 준비 및 실행이 진행 중입니다. |
RUNNING |
이 실행의 태스크가 실행되고 있습니다. |
TERMINATING |
이 실행의 태스크가 완료되었으며 클러스터 및 실행 컨텍스트가 정리되고 있습니다. |
TERMINATED |
이 실행의 태스크가 완료되었으며 클러스터 및 실행 컨텍스트가 정리되었습니다. 이 상태는 터미널입니다. |
SKIPPED |
동일한 작업의 이전 실행이 이미 활성화되어 있으므로 이 실행이 중단되었습니다. 이 상태는 터미널입니다. |
INTERNAL_ERROR |
오랜 기간 동안의 네트워크 오류와 같은 작업 서비스의 실패를 나타내는 예외 상태입니다. 새 클러스터에서 실행이 INTERNAL_ERROR 상태로 종료되면 작업 서비스에서 최대한 빨리 클러스터를 종료합니다. 이 상태는 터미널입니다. |
RunParameters
이 실행에 대한 매개 변수입니다. 작업 태스크의 종류에 따라 jar_params, python_params
또는 notebook_params 중 하나만 run-now
요청에 지정해야 합니다.
Spark JAR 태스크 또는 Python 태스크가 있는 작업은 위치 기반 매개 변수 목록을 사용하고, Notebook 태스크가 있는 작업은 키 값 맵을 사용합니다.
필드 이름 | Type | 설명 |
---|---|---|
jar_params |
STRING 배열입니다. |
Spark JAR 태스크가 있는 작업에 대한 매개 변수 목록(예: "jar_params": ["john doe", "35"] )입니다. 매개 변수는 Spark JAR 태스크에 지정된 주 클래스의 main 함수를 호출하는 데 사용됩니다. run-now 에 지정하지 않으면 기본적으로 빈 목록이 됩니다. jar_params는 notebook_params와 함께 지정할 수 없습니다. 이 필드의 JSON 표현(예: {"jar_params":["john doe","35"]} )은 10,000바이트를 초과할 수 없습니다.동적 값 참조란?을 사용하여 작업 실행에 대한 정보가 포함된 매개 변수를 설정합니다. |
notebook_params |
ParamPair 맵 | Notebook 태스크가 있는 작업에 대한 키에서 값으로의 맵(예:"notebook_params": {"name": "john doe", "age": "35"} . 맵은 Notebook에 전달되며 dbutils.widgets.get 함수를 통해 액세스할 수 있습니다.run-now 에 지정하지 않으면 트리거된 실행에서 작업의 기본 매개 변수를 사용합니다.notebook_params는 jar_params와 함께 지정할 수 없습니다. 동적 값 참조란?을 사용하여 작업 실행에 대한 정보가 포함된 매개 변수를 설정합니다. 이 필드의 JSON 표현(예: {"notebook_params":{"name":"john doe","age":"35"}} )은 10,000바이트를 초과할 수 없습니다. |
python_params |
STRING 배열입니다. |
Python 태스크가 있는 작업에 대한 매개 변수 목록입니다(예: "python_params": ["john doe", "35"] ). 매개 변수는 명령줄 매개 변수로 Python 파일에 전달됩니다. run-now 에 지정하면 작업 설정에 지정된 매개 변수를 덮어씁니다. 이 필드의 JSON 표현(예: {"python_params":["john doe","35"]} )은 10,000바이트를 초과할 수 없습니다.동적 값 참조란?을 사용하여 작업 실행에 대한 정보가 포함된 매개 변수를 설정합니다. > [!중요] >> 이러한 매개 변수는 라틴 문자(ASCII 문자 집합)만 허용합니다. > ASCII가 아닌 문자를 사용하면 오류가 반환됩니다. 잘못된 비 ASCII > 문자의 예로는 중국어, 일본어 간지 및 이모지가 있습니다. |
spark_submit_params |
STRING 배열입니다. |
spark submit 태스크가 있는 작업에 대한 매개 변수 목록(예:"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"] . 매개 변수는 명령줄 매개 변수로 spark-submit 스크립트에 전달됩니다. run-now 에 지정하면 작업 설정에 지정된 매개 변수를 덮어씁니다. 이 필드의 JSON 표현(예: {"python_params":["john doe","35"]} )은 10,000바이트를 초과할 수 없습니다.동적 값 참조란?을 사용하여 작업 실행에 대한 정보가 포함된 매개 변수를 설정합니다. > [!중요] >> 이러한 매개 변수는 라틴 문자(ASCII 문자 집합)만 허용합니다. > ASCII가 아닌 문자를 사용하면 오류가 반환됩니다. 잘못된 비 ASCII > 문자의 예로는 중국어, 일본어 간지 및 이모지가 있습니다. |
RunResultState
실행의 결과 상태입니다.
life_cycle_state
=TERMINATED
인 경우: 실행에 태스크가 있으면 결과를 사용할 수 있음이 보장되고 태스크의 결과를 나타냅니다.life_cycle_state
=PENDING
,RUNNING
또는SKIPPED
인 경우 결과 상태를 사용할 수 없습니다.life_cycle_state
=TERMINATING
또는 lifecyclestate =INTERNAL_ERROR
인 경우: 실행에 태스크가 있고 시작하도록 관리되면 결과 상태를 사용할 수 있습니다.
사용할 수 있는 경우 결과 상태가 변경되지 않습니다.
시스템 상태 | 설명 |
---|---|
SUCCESS |
태스크가 성공적으로 완료되었습니다. |
FAILED |
태스크가 오류와 함께 완료되었습니다. |
TIMEDOUT |
시간 제한에 도달한 후 실행이 중지되었습니다. |
CANCELED |
사용자 요청에 따라 실행이 취소되었습니다. |
RunState
필드 이름 | Type | 설명 |
---|---|---|
life_cycle_state |
RunLifeCycleState | 실행 수명 주기에서 실행의 현재 위치에 대한 설명입니다. 이 필드는 응답에서 항상 사용할 수 있습니다. |
result_state |
RunResultState | 실행의 결과 상태입니다. 사용할 수 없는 경우 이 필드는 응답에 포함되지 않습니다. result_state의 가용성에 대한 자세한 내용은 RunResultState를 참조하세요. |
user_cancelled_or_timedout |
BOOLEAN |
실행 시간이 초과되어 사용자 또는 스케줄러에서 실행을 수동으로 취소했는지 여부입니다. |
state_message |
STRING |
현재 상태에 대한 설명 메시지입니다. 필드는 구조화되지 않으며 정확한 형식은 변경될 수 있습니다. |
SparkConfPair
Spark 구성 키-값 쌍입니다.
Type | 설명 |
---|---|
STRING |
구성 속성 이름입니다. |
STRING |
구성 속성 값입니다. |
SparkEnvPair
Spark 환경 변수 키-값 쌍.
Important
작업 클러스터에서 환경 변수를 지정할 때 이 데이터 구조의 필드는 라틴 문자(ASCII 문자 집합)만 허용합니다. ASCII가 아닌 문자를 사용하면 오류가 반환됩니다. 잘못된 비 ASCII 문자의 예로는 중국어, 일본어 간지 및 이모지가 있습니다.
Type | 설명 |
---|---|
STRING |
환경 변수 이름입니다. |
STRING |
환경 변수 값입니다. |
SparkJarTask
필드 이름 | Type | 설명 |
---|---|---|
jar_uri |
STRING |
2016년 4월부터 더 이상 사용되지 않습니다. 대신 libraries 필드를 통해 jar 을 제공합니다. 예제는 만들기를 참조하세요. |
main_class_name |
STRING |
실행될 main 메서드가 포함된 클래스의 전체 이름입니다. 이 클래스는 라이브러리로 제공된 JAR에 포함되어야 합니다. 코드는 SparkContext.getOrCreate 를 사용하여 Spark 컨텍스트를 가져와야 합니다. 그렇지 않으면 작업 실행이 실패합니다. |
parameters |
STRING 배열입니다. |
main 메서드에 전달되는 매개 변수입니다. 동적 값 참조란?을 사용하여 작업 실행에 대한 정보가 포함된 매개 변수를 설정합니다. |
SparkPythonTask
필드 이름 | Type | 설명 |
---|---|---|
python_file |
STRING |
실행할 Python 파일의 URI입니다. DBFS 경로가 지원됩니다. 이 필드는 필수 필드입니다. |
parameters |
STRING 배열입니다. |
Python 파일에 전달되는 명령줄 매개 변수입니다. 동적 값 참조란?을 사용하여 작업 실행에 대한 정보가 포함된 매개 변수를 설정합니다. |
SparkSubmitTask
Important
- Spark 제출 태스크는 새 클러스터에서만 호출할 수 있습니다.
- new_cluster 사양에서
libraries
및spark_conf
는 지원되지 않습니다. 대신--jars
및--py-files
를 사용하여 Java 및 Python 라이브러리를 추가하고,--conf
를 사용하여 Spark 구성을 설정합니다. master
,deploy-mode
및executor-cores
는 Azure Databricks에서 자동으로 구성되며, 매개 변수에 지정할 수 없습니다.- 기본적으로 Spark 제출 작업은 모든 사용 가능한 메모리를 사용합니다(Azure Databricks 서비스에 예약된 메모리 제외).
--driver-memory
및--executor-memory
를 더 작은 값으로 설정하여 오프 힙 사용을 위한 공간을 남길 수 있습니다. --jars
,--py-files
,--files
인수는 DBFS 경로를 지원합니다.
예를 들어 JAR이 DBFS에 업로드되었다고 가정하면 다음 매개 변수를 설정하여 SparkPi
를 실행할 수 있습니다.
{
"parameters": [
"--class",
"org.apache.spark.examples.SparkPi",
"dbfs:/path/to/examples.jar",
"10"
]
}
필드 이름 | Type | 설명 |
---|---|---|
parameters |
STRING 배열입니다. |
spark 제출에 전달되는 명령줄 매개 변수입니다. 동적 값 참조란?을 사용하여 작업 실행에 대한 정보가 포함된 매개 변수를 설정합니다. |
TriggerType
실행을 실행할 수 있는 트리거 형식입니다.
Type | 설명 |
---|---|
PERIODIC |
cron 스케줄러와 같이 주기적으로 실행을 트리거하는 일정입니다. |
ONE_TIME |
단일 실행을 실행하는 일회성 트리거입니다. 이는 UI 또는 API를 통해 요청 시 단일 실행을 트리거했을 때 발생합니다. |
RETRY |
이전에 실패한 실행의 다시 시도로 트리거되는 실행을 나타냅니다. 이는 실패한 경우 작업을 다시 실행하도록 요청할 때 발생합니다. |
ViewItem
내보낸 콘텐츠는 HTML 형식입니다. 예를 들어 내보낼 보기가 대시보드인 경우 각 대시보드에 대해 하나의 HTML 문자열이 반환됩니다.
필드 이름 | Type | 설명 |
---|---|---|
content |
STRING |
보기의 콘텐츠입니다. |
name |
STRING |
보기 항목의 이름입니다. 코드 보기의 경우 Notebook의 이름입니다. 대시보드 보기의 경우 대시보드의 이름입니다. |
type |
ViewType | 보기 항목의 형식입니다. |
ViewType
Type | 설명 |
---|---|
NOTEBOOK |
Notebook 보기 항목입니다. |
DASHBOARD |
대시보드 보기 항목입니다. |
ViewsToExport
내보낼 보기: 코드, 모든 대시보드 또는 모두.
Type | 설명 |
---|---|
CODE |
Notebook의 코드 보기입니다. |
DASHBOARDS |
Notebook의 모든 대시보드 보기입니다. |
ALL |
Notebook의 모든 보기입니다. |
Webhook
필드 이름 | Type | 설명 |
---|---|---|
id |
STRING |
시스템 알림 대상을 참조하는 식별자입니다. 이 필드는 필수 필드입니다. |
WebhookNotifications
필드 이름 | Type | 설명 |
---|---|---|
on_start |
웹후크의 배열 | 실행이 시작될 때 알림을 받을 선택적 시스템 대상 목록입니다. 작업을 만들거나 다시 설정하거나 업데이트할 때 지정하지 않으면 목록이 비어 있고 알림을 보내지 않습니다. on_start 속성에 대해 최대 3개의 대상을 지정할 수 있습니다. |
on_success |
웹후크의 배열 | 실행이 성공적으로 완료되면 알림을 받을 선택적 시스템 대상 목록입니다. 실행은 TERMINATED 상태의 life_cycle_state 와 SUCCESSFUL 상태의 result_state 로 끝날 경우 성공적으로 완료된 것으로 간주됩니다. 작업을 만들거나 다시 설정하거나 업데이트할 때 지정하지 않으면 목록이 비어 있고 알림을 보내지 않습니다. on_success 속성에 대해 최대 3개의 대상을 지정할 수 있습니다. |
on_failure |
웹후크의 배열 | 실행이 성공적으로 완료되지 않으면 알림을 받을 선택적 시스템 대상 목록입니다. 실행이 INTERNAL_ERROR life_cycle_state 로 끝나거나, SKIPPED ,FAILED , 또는 TIMED_OUT result_state 로 끝나는 경우, 해당 실행은 성공적으로 완료되지 않은 것으로 간주됩니다. 작업을 만들거나 다시 설정하거나 업데이트 시 이 필드가 지정되지 않으면 목록이 비어 있고 알림을 보내지 않습니다. on_failure 속성에 대해 최대 3개의 대상을 지정할 수 있습니다. |
on_duration_warning_threshold_exceeded |
웹후크의 배열 | 실행 기간이 health 필드에서 RUN_DURATION_SECONDS 메트릭에 대해 지정된 임계값을 초과할 때 알림을 받을 선택적 시스템 대상 목록입니다. on_duration_warning_threshold_exceeded 속성에 대해 최대 3개의 대상을 지정할 수 있습니다. |
WorkspaceStorageInfo
작업 영역 스토리지 정보입니다.
필드 이름 | Type | 설명 |
---|---|---|
destination |
STRING |
파일 대상입니다. 예: /Users/someone@domain.com/init_script.sh |