共用方式為


工作 API 2.0

重要

本文記錄工作 API 的 2.0 版。 不過,Databricks 建議您針對新的和現有的用戶端和腳本使用 Jobs API 2.2。 如需 2.2 版作業 API 變更的詳細資訊,請參閱 從作業 API 2.1 更新至 2.2

工作 API 可讓您建立、編輯和刪除工作。 對工作 API 的要求允許的大小上限為 10MB。

若要瞭解較新版本的作業 API 中更新的功能,請參閱 從作業 API 2.0 更新至 2.1從作業 API 2.1 更新至 2.2

警告

您絕不應硬式編碼祕密,或將其以純文字儲存。 在 Databricks CLI 中使用Secrets API來管理祕密資料。 使用 Secrets 公用程式 (dbutils.secrets) 參考筆記本和工作中的祕密。

注意

如果您在發送 Jobs API 請求時收到 500 級錯誤,Databricks 建議在 10 分鐘內重試請求(重試間隔至少 30 秒)。

重要

若要存取 Databricks REST API,您必須驗證

建立​​

端點 HTTP 方法
2.0/jobs/create POST

建立新工作。

範例

此範例會建立一個工作,該工作會在每晚下午 10:15 執行 JAR 任務。

要求

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
}

要求結構

重要

  • 當您在新工作叢集上執行工作時,該工作會被視為 Jobs Compute(自動化)工作負載,並會按照 Jobs Compute 的計價模式計費。
  • 當您在現有的全用途叢集上執行工作時,其會被視為全用途計算 (互動式) 工作負載,且受限於全用途計算價格。
欄位名稱 類型 描述
existing_cluster_idnew_cluster STRINGNewCluster 如果有 existing_cluster_id,則為用於此工作的所有執行的現有叢集的 ID。 在現有叢集上執行工作時,如果叢集停止回應,您可能需要手動重新啟動。 我們建議在新的叢集上執行工作,以提高可靠性。
如果是 new_cluster,則會提供每次執行時將建立的叢集的描述。
如果指定 PipelineTask,此欄位可為空白。
notebook_taskspark_jar_task
spark_python_taskspark_submit_task
pipeline_taskrun_job_task
NotebookTaskSparkJarTaskSparkPythonTaskSparkSubmitTaskPipelineTaskRunJobTask 如果是 notebook_task,則表示此工作應該運行筆記本。 此欄位可能不會與 spark_jar_task 一起指定。
如果是 spark_jar_task,則表示此工作應該執行 JAR。
如果是 spark_python_task,則表示此工作應該執行 Python 檔案。
如果是 spark_submit_task,則表示 Spark 提交指令應該啟動此工作。
如果 pipeline_task 存在,表示該作業應當執行 DLT 流程。
如果是 run_job_task,則表示此工作應該執行另一個工作。
name STRING 工作的可選名稱。 預設值是 Untitled
libraries 程式庫的陣列 在執行工作的叢集上,可選擇安裝的程式庫清單。 預設值是空白清單。
email_notifications 工作郵件通知 可選擇的一組電子郵件地址,在該工作的運行開始和結束時,以及該工作被刪除時會收到通知。 預設行為是不要傳送任何電子郵件。
webhook_notifications WebhookNotifications 一組可選的系統通知目的地,用於在此工作開始、完成或失敗時發送通知。
notification_settings 工作通知設定 將通知傳送至此工作的每個 email_notificationswebhook_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 會導致跳過所有新的執行作業。 預設行為是只允許 1 個並行執行。

回覆結構

欄位名稱 類型 描述
job_id INT64 新建立的工作的正式識別碼。

清單

端點 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
    }
  ]
}

回覆結構

欄位名稱 類型 描述
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> 具有該工作的識別碼,例如 123

此範例會使用 .netrc 檔案。

要求結構

欄位名稱 類型 描述
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> 具有該工作的識別碼,例如 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
}

要求結構

欄位名稱 類型 描述
job_id INT64 要擷取信息的工作的標準識別碼。 這是必要欄位。

回覆結構

欄位名稱 類型 描述
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

要求結構

欄位名稱 類型 描述
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

要求結構

欄位名稱 類型 描述
job_id INT64 要更新的工作的標準識別碼。 這是必要欄位。
new_settings JobSettings 工作的新設定。
new_settings 中指定的最上層欄位會完全取代陣列以外的欄位。 陣列會根據各自的鍵欄位合併,例如 task_key
job_cluster_key,並會完全取代具有相同索引鍵的陣列項目。 除了陣列合併之外,不支援部分更新巢狀欄位。
欄位 JobSettings.timeout_seconds 的變更會套用至正在進行的操作。 其他欄位的變更僅會套用至未來的執行。
fields_to_remove STRING 的陣列 移除工作設定中的最上層欄位。 除了 tasksjob_clusters 陣列中的項目外,不支援移除巢狀欄位。 例如,以下是此欄位的有效引數:
["libraries", "schedule", "tasks/task_1", "job_clusters/Default"]
這是選用欄位。

立即執行

重要

  • 工作區受限於 1000 個同時執行的任務。 當您要求無法立即啟動的執行程序時,會傳回 429 Too Many Requests 回應。
  • 工作區在一小時內可以建立的作業數目限制為 10000 (包括「執行提交」)。 這項限制也會影響 REST API 和筆記本工作流程所建立的作業。
  • 工作區最多可包含 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

筆記本工作的範例要求:

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

要求結構

欄位名稱 類型 描述
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_params": {"name": "john doe", "age": "35"}. 映射會傳遞至筆記本,並可透過 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 提交」任務的工作參數清單,例如
"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"]. 這些參數將作為命令列參數傳遞至 spark-submit 指令。 如果在 run-now 上指定,則會覆寫工作設定中指定的參數。 此欄位的 JSON 表示法不能超過 10,000 個位元組。
idempotency_token STRING 選用的令牌,可保證作業執行請求的等冪性。 如果已存在具有所提供權杖的執行,要求不會建立新的執行,而是傳回現有執行的識別碼。 如果已刪除具有所提供權杖的執行,則會傳回錯誤。
如果您指定了冪等性憑證,在請求失敗時,您可以重試直至成功。 Azure Databricks 保證只會使用該冪等性權杖啟動一個執行。
此令牌最多只能有 64 個字元。
如需詳細資訊,請參閱如何確保工作的等冪性

回覆結構

欄位名稱 類型 描述
run_id INT64 新觸發執行的全球唯一識別碼。
number_in_job INT64 此次運行於這個工作的所有運行中的序號。

執行提交

重要

  • 工作區受限於 1000 個同時執行的任務。 當您要求無法立即啟動的執行程序時,會傳回 429 Too Many Requests 回應。
  • 工作區在一小時內可以建立的作業數目限制為 10000 (包括「執行提交」)。 這項限制也會影響 REST API 和筆記本工作流程所建立的作業。
  • 工作區最多可包含 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
}

要求結構

重要

  • 當您在新工作叢集上執行工作時,該工作會被視為 Jobs Compute(自動化)工作負載,並會按照 Jobs Compute 的計價模式計費。
  • 當您在現有的全用途叢集上執行工作時,其會被視為全用途計算 (互動式) 工作負載,且受限於全用途計算價格。
欄位名稱 類型 描述
existing_cluster_idnew_cluster STRINGNewCluster 如果 existing_cluster_id 是現有叢集的 ID,則該叢集將用於此工作的所有執行。 在現有叢集上執行工作時,如果叢集停止回應,您可能需要手動重新啟動。 我們建議在新的叢集上執行工作,以提高可靠性。
如果是 new_cluster,則會提供每次執行時將建立的叢集的描述。
如果指定 PipelineTask,則此欄位可為空白。
notebook_taskspark_jar_task
spark_python_taskspark_submit_task
pipeline_taskrun_job_task
NotebookTaskSparkJarTaskSparkPythonTaskSparkSubmitTaskPipelineTaskRunJobTask 如果是 notebook_task,則表示此工作應該運行筆記本。 此欄位可能不會與 spark_jar_task 一起指定。
如果是 spark_jar_task,則表示此工作應該執行 JAR。
如果是 spark_python_task,則表示此工作應該執行 Python 檔案。
如果是 spark_submit_task,則表示 Spark 提交指令應該啟動此工作。
如果 pipeline_task 存在,表示該作業應當執行 DLT 流程。
如果是 run_job_task,則表示此工作應該執行另一個工作。
run_name STRING 執行的名稱(可選)。 預設值是 Untitled
webhook_notifications WebhookNotifications 一組可選的系統通知目的地,用於在此工作開始、完成或失敗時發送通知。
notification_settings 工作通知設定 此執行過程中針對每個 webhook_notifications 發送通知時使用的選擇性通知設定。
libraries 程式庫的陣列 可選的程式庫清單,可以安裝在即將執行工作的叢集上。 預設值是空白清單。
timeout_seconds INT32 可選用的逾時設定,可應用於每次執行此作業。 預設行為是沒有設定逾時。
idempotency_token STRING 可選擇的令牌,可保證作業執行請求的等冪性。 如果已存在具有所提供權杖的執行,要求不會建立新的執行,而是傳回現有執行的識別碼。 如果具備所提供權杖的運行被刪除,則會返回錯誤。
如果您指定冪等性令牌,那麼當請求失敗時,您可以重試直到請求成功。 Azure Databricks 保證確保只會以該等冪性權杖啟動一個執行程序。
此令牌最多只能有 64 個字元。
如需詳細資訊,請參閱如何確保工作的等冪性

回覆結構

欄位名稱 類型 描述
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> 具有該工作的識別碼,例如 123
  • <true-false>truefalse
  • <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
}

要求結構

欄位名稱 類型 描述
active_onlycompleted_only BOOLBOOL 如果 active_only 為 true,則結果中只會包含作用中的執行,否則會同時列出作用中和已完成的執行。 作用中的執行是在 PENDINGRUNNINGTERMINATINGRunLifecycleState 中的執行。 當 completed_only 為 true 時,這個欄位不能為 true
如果 completed_only 為 true,則結果中只會包含已完成的執行,否則會同時列出作用中和已完成的執行。 當 active_only 為 true 時,這個欄位不能為 true
job_id INT64 列出將執行的工作。 如果省略,Jobs 服務將列出所有工作的執行記錄。
offset INT32 要傳回的第一個執行相對於最近一次執行的偏移量。
limit INT32 要返回的執行次數。 此值應大於 0 且小於 1000。 預設值為 20。 如果要求指定的限制為 0,服務會改用上限代替。
run_type STRING 要傳回的運行類型。 如需執行類型的描述,請參閱執行

回覆結構

欄位名稱 類型 描述
runs 執行的陣列 從最近開始到最少使用的執行清單。
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"
}

要求結構

欄位名稱 類型 描述
run_id INT64 要擷取其中繼資料的執行的標準識別碼。 這是必要欄位。

回覆結構

欄位名稱 類型 描述
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 此執行結束的時間,以自 1970 年 1 月 1 日(UTC)起的時代毫秒為單位。 如果工作仍在執行中,此欄位將會設定為 0。
setup_duration INT64 設定叢集所需的時間,以毫秒為單位。 對於在新叢集上執行的執行,這是叢集建立時間;對於在現有叢集上執行的執行,此時間應該很短。 執行的總持續時間是以下各項的總和:setup_duration
execution_durationcleanup_duration。 對於多工工作執行,setup_duration 欄位設定為 0。 多工任務執行的總持續時間是
run_duration 欄位。
execution_duration INT64 執行 JAR 或筆記本中命令所需的時間 (以毫秒為單位),直到它們完成、失敗、逾時、取消,或遇到了未預期的錯誤。 執行的總持續時間是以下各項的總和:setup_durationexecution_duration
cleanup_duration. 對於多工工作執行,execution_duration 欄位設定為 0。 多工工作執行的總持續時間是 run_duration 欄位的值。
cleanup_duration INT64 所需的毫秒時間來終結叢集並清除任何相關的偽件。 執行的總持續時間是以下各項的總和:setup_durationexecution_durationcleanup_duration。 對於多工工作執行,cleanup_duration 欄位設定為 0。 多工工作執行的總持續時間是 run_duration 欄位的值。
run_duration INT64 完成工作執行及所有修復所需的時間,以毫秒為單位。 此欄位只會針對多任務工作執行設定,而非單一任務執行。 任務執行的持續時間是以下各項的總和:
setup_durationexecution_durationcleanup_duration
trigger TriggerType 引發此執行的觸發器類型。
creator_user_name STRING 建立者使用者名稱。 如果使用者已刪除,此欄位將不會包含在回應中
run_page_url STRING 運行詳細頁面的 URL。

執行匯出

端點 HTTP 方法
2.0/jobs/runs/export GET

匯出和擷取工作執行任務。

注意

僅有筆記本的執行記錄可以匯出為 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> 具有運行識別碼的,例如 123

此範例會使用 .netrc 檔案和 jq

回應

{
  "views": [
    {
      "content": "<!DOCTYPE html><html><head>Head</head><body>Body</body></html>",
      "name": "my-notebook",
      "type": "NOTEBOOK"
    }
  ]
}

若要從 JSON 回應擷取 HTML 筆記本,請下載並執行此 Python 指令

注意

__DATABRICKS_NOTEBOOK_MODEL 物件中的筆記本主體已編碼。

要求結構

欄位名稱 類型 描述
run_id INT64 運行的規範識別碼。 這是必要欄位。
views_to_export 要匯出的視圖 要匯出的視圖(程式碼、儀表板或全部)。 預設為 CODE。

回覆結構

欄位名稱 類型 描述
views ViewItem 的陣列 以 HTML 格式匯出的內容 (每個檢視項目各一個)。

運行已取消

端點 HTTP 方法
2.0/jobs/runs/cancel POST

取消作業運行。 因為執行是以非同步方式取消的,因此當此要求完成時,執行可能仍在執行中。 執行將會很快終止。 如果執行已經在終端機 life_cycle_state 中,則這個方法為 no-op。

此端點會驗證 run_id 參數是否有效,且無效的參數會傳回 HTTP 狀態程式碼 400。

範例

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> 使用執行的識別碼,例如 123

此範例會使用 .netrc 檔案。

要求結構

欄位名稱 類型 描述
run_id INT64 要取消之執行的規範識別碼。 這是必要欄位。

執行取消所有

端點 HTTP 方法
2.0/jobs/runs/cancel-all POST

取消所有正在進行的工作。 因為執行是以非同步方式取消的,因此不會防止啟動新的執行。

此端點會驗證 job_id 參數是否有效,且無效的參數會傳回 HTTP 狀態程式碼 400。

範例

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> 具有該工作的識別碼,例如 123

此範例會使用 .netrc 檔案。

要求結構

欄位名稱 類型 描述
job_id INT64 要取消所有執行運行的工作的標準識別碼。 這是必要欄位。

運行會產生結果

端點 HTTP 方法
2.0/jobs/runs/get-output GET

擷取單一任務執行的輸出和中繼資料。 當筆記本任務透過 dbutils.notebook.exit() 呼叫傳回值時,您可以使用此端點來擷取該值。 Azure Databricks 會限制此 API 只傳回輸出的前 5 MB。 若要傳回較大的結果,您可以將工作結果儲存在雲端儲存體服務中。

此端點會驗證 run_id 參數是否有效,且無效的參數會傳回 HTTP 狀態程式碼 400。

這些執行紀錄會在 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> 具有執行的識別碼,例如 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()"
  }
}

要求結構

欄位名稱 類型 描述
run_id INT64 運行的標準識別碼。 對於具有多個任務的工作,這是代表任務執行的 run_id。 請參閱運行結果輸出。 這是必要欄位。

回覆結構

欄位名稱 類型 描述
notebook_outputerror NotebookOutputSTRING 如果有 notebook_output,則為筆記本任務的輸出(如果有的話)。 無需呼叫即可終止的筆記本任務 (成功或失敗)
dbutils.notebook.exit() 會被視為具有空白輸出。 將會設定此欄位,但其結果值會是空白。
如果發生錯誤,則會發出錯誤訊息,指出輸出無法使用的原因。 訊息為非結構化,且其確切的格式可能會有變更。
metadata 執行 執行的所有詳細資料,但輸出除外。

執行刪除

端點 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> 具有執行識別碼,例如 123

此範例會使用 .netrc 檔案。

要求結構

欄位名稱 類型 描述
run_id INT64 用於擷取中繼資料的執行的標準識別碼。

資料結構

本節內容:

ABFSSStorageInfo

Azure Data Lake Storage (ADLS) 儲存體資訊。

欄位名稱 類型 描述
destination STRING 檔案目的地。 範例: abfss://...

自動縮放

定義叢集工作者的最小和最大數量的範圍。

欄位名稱 類型 描述
min_workers INT32 叢集在未充分利用時可以縮減到的最少工人數量。 這也是叢集建立後將擁有的初始工人數量。
max_workers INT32 叢集在超載時可擴增的工作者最大數目。 max_workers 必須大於 min_workers。

AzureAttributes

建立 Azure 相關叢集時設定的屬性。

欄位名稱 類型 描述
first_on_demand INT32 叢集的第一個 first_on_demand 節點將會放置在隨選執行個體上。 此值必須大於 0,否則叢集建立驗證便會失敗。 如果此值大於或等於目前的叢集大小,所有節點都會放置在隨選執行個體上。 如果此值小於目前的叢集大小,則 first_on_demand 節點會放置在隨選執行個體上,而其餘的節點會放置在可用性執行個體上。 此值不會影響叢集大小,而且無法在叢集的存留期內變動。
availability AzureAvailability 用於 first_on_demand 節點之後的所有後續節點的可用性類型。
spot_bid_max_price DOUBLE 用於 Azure 現成執行個體的最高出價價格。 您可以將此值設定為大於或等於目前的現成價格。 您也可以將此設定為 -1(預設值),這表示執行個體無法根據價格停用。 執行個體的價格將是現成執行個體的目前價格,或是標準執行個體的價格。 您可以在 Azure 入口網站中檢視歷程記錄價格和收回費率。

AzureAvailability

Azure 執行個體可用性類型行為。

類型 描述
SPOT_AZURE 使用現成執行個體。
ON_DEMAND_AZURE 使用隨選執行個體。
SPOT_WITH_FALLBACK_AZURE 最好使用現成執行個體,但如果無法取得現成執行個體,請回復為隨選執行個體 (例如,如果 Azure 現成價格太高或超出配額)。 不適用於游泳池的可用性。

叢集實例

執行使用的叢集和 Spark 內容的識別碼。 這兩個值可一起識別所有時間的執行內容。

欄位名稱 類型 描述
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

叢集記錄檔的路徑。

欄位名稱 類型 描述
dbfs 叢集記錄檔的 DBFS 位置。 必須提供目的地。 例如,{ "dbfs" : { "destination" : "dbfs:/home/cluster_log" } }

ClusterSpec

重要

  • 當您在新工作叢集上執行工作時,該工作會被視為 Jobs Compute(自動化)工作負載,並會按照 Jobs Compute 的計價模式計費。
  • 當您在現有的全用途叢集上執行工作時,其會被視為全用途計算 (互動式) 工作負載,且受限於全用途計算價格。
欄位名稱 類型 描述
existing_cluster_idnew_cluster STRINGNewCluster 如果是 existing_cluster_id,則為將用於該工作的所有執行的現有叢集的 ID。 在現有叢集上執行工作時,如果叢集停止回應,您可能需要手動重新啟動。 我們建議在新的叢集上執行工作,以提高可靠性。
如果是 new_cluster,則會提供每次執行時將建立的叢集的描述。
如果指定 PipelineTask,則此欄位可為空白。
libraries 程式庫的陣列 可選安裝在執行工作的叢集上的程式庫清單。 預設值是空白清單。

群集標籤

叢集標籤定義。

類型 描述
STRING 標籤的鍵值。 索引鍵必須:
  • 長度介於 1 到 512 個字元之間
  • 不包含任何字元 <>%*&+?\\/
  • 不以 azuremicrosoftwindows 開頭
STRING 標籤的值。 值長度必須小於或等於 256 個 UTF-8 字元。

CronSchedule

欄位名稱 類型 描述
quartz_cron_expression STRING 使用 Quartz 語法的 Cron 表達式,用於描述工作排程。 如需詳細資料,請參閱 Cron 觸發程序。 這是必要欄位。
timezone_id STRING JAVA 時區標識碼。 工作排程將會根據此時區確定。 如需詳細資訊,請參閱 JAVA 時區。 這是必要欄位。
pause_status STRING 指出此排程是否已暫停。 要麼「暫停」,要麼「取消暫停」。

DbfsStorageInfo

DBFS 儲存體資訊。

欄位名稱 類型 描述
destination STRING DBFS 目的地。 範例: dbfs:/my/path

檔案存儲資訊

檔案儲存空間資訊。

注意

此位置類型僅適用於使用 Databricks Container Services 設定的叢集。

欄位名稱 類型 描述
destination STRING 檔案目的地。 範例: file:/my/file.sh

InitScriptInfo

初始化腳本的路徑。

如需有關將 init 指令與 Databricks Container Services 搭配使用的指示,請參閱使用 init 指令碼

注意

此檔案儲存空間類型 (欄位名稱:file) 僅適用於使用 Databricks Container Services 設定的叢集。 請參閱 FileStorageInfo

欄位名稱 類型 描述
workspace OR dbfs (已淘汰)
abfss
WorkspaceStorageInfo
DbfsStorageInfo (已取代)
ABFSSStorageInfo
init 指令的工作區位置。 必須提供目的地。 例如,
{ "workspace" : { "destination" : "/Users/someone@domain.com/init_script.sh" } }
(已棄用) 初始化腳本的 DBFS 路徑。 必須提供目的地。 例如,
{ "dbfs" : { "destination" : "dbfs:/home/init_script" } }
初始化腳本的 Azure Data Lake Storage (ADLS) 位置。 必須提供目的地。 例如,{ "abfss": { "destination" : "abfss://..." } }

工作

欄位名稱 類型 描述
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)起的毫秒數)。

工作電子郵件通知

重要

on_start、on_success 和 on_failure 欄位只接受拉丁文字元 (ASCII 字元集)。 使用非 ASCII 字元將會傳回錯誤。 無效、非 ASCII 字元的範例包括中文、日文漢字和表情圖示。

欄位名稱 類型 描述
on_start STRING 的陣列 執行開始時要通知的電子郵件地址清單。 如果未在工作建立、重設或更新上指定,清單會是空的,而且不會傳送通知。
on_success 一個STRING的陣列 執行成功完成時要通知的電子郵件地址清單。 如果執行以 TERMINATEDlife_cycle_stateSUCCESSFULresult_state 結束,則視為已成功完成。 如果未在工作建立、重設或更新上指定,清單會是空的,而且不會傳送通知。
on_failure STRING 的陣列 執行未成功完成時要通知的電子郵件地址清單。 如果執行以下列狀態結束,則視為未成功完成:INTERNAL_ERROR
life_cycle_stateSKIPPEDFAILEDTIMED_OUT 結果狀態。 如果未在工作建立、重設或更新上指定,清單會是空的,而且不會傳送通知。
on_duration_warning_threshold_exceeded STRING 的陣列 當執行持續時間超過 RUN_DURATION_SECONDS 欄位中 health 計量指定的閾值時,要通知的電子郵件地址清單。 如果未在工作的 RUN_DURATION_SECONDS 欄位中指定 health 計量的規則,則不會傳送通知。
no_alert_for_skipped_runs BOOL 如果為 true,則不會在略過執行時傳送電子郵件給 on_failure 中指定的收件者。
欄位名稱 類型 描述
on_start Webhook 的陣列 可選的系統目的地清單,在執行開始時將收到通知。 如果未在工作建立、重設或更新上指定,清單會是空的,而且不會傳送通知。 最多可為 on_start 屬性指定 3 個目的地。
on_success Webhook 的陣列 可選擇的系統通知對象清單,在執行成功完成時會收到通知。 如果執行以 TERMINATEDlife_cycle_stateSUCCESSFULresult_state 結束,則視為已成功完成。 如果未在工作建立、重設或更新上指定,清單會是空的,而且不會傳送通知。 最多可為 on_success 屬性指定 3 個目的地。
on_failure Webhook 的陣列 選用的系統目的地清單,可在執行未成功完成時收到通知。 如果執行以下列狀態結束,則視為未成功完成:INTERNAL_ERROR
life_cycle_stateSKIPPEDFAILEDTIMED_OUT 結果狀態。 如果未在工作建立、重設或更新上指定,清單會是空的,而且不會傳送通知。 最多可為 on_failure 屬性指定 3 個目的地。
on_duration_warning_threshold_exceeded Webhook 的陣列 當執行時間超過 RUN_DURATION_SECONDS 欄位中 health 指標指定的閾值時,需通知的系統目的地可選清單。 最多可為 on_duration_warning_threshold_exceeded 屬性指定 3 個目的地。

JobNotificationSettings

欄位名稱 類型 描述
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 中指定的收件者。

工作設定

重要

  • 當您在新工作叢集上執行工作時,該工作會被視為 Jobs Compute(自動化)工作負載,並會按照 Jobs Compute 的計價模式計費。
  • 當您在現有的全用途叢集上執行工作時,其會被視為全用途計算 (互動式) 工作負載,且受限於全用途計算價格。

工作的設定。 可以使用 resetJob 方法來更新這些設定。

欄位名稱 類型 描述
existing_cluster_idnew_cluster STRINGNewCluster 如果是 existing_cluster_id,則為將用於該工作的所有執行的現有叢集的 ID。 在現有叢集上執行工作時,如果叢集停止回應,您可能需要手動重新啟動。 我們建議在新的叢集上執行工作,以提高可靠性。
如果是 new_cluster,則會提供每次執行時將建立的叢集的描述。
如果指定 PipelineTask,則此欄位可為空白。
notebook_taskspark_jar_task
spark_python_taskspark_submit_task
pipeline_taskrun_job_task
NotebookTaskSparkJarTaskSparkPythonTaskSparkSubmitTaskPipelineTaskRunJobTask 如果是 notebook_task,則表示此工作應該運行筆記本。 此欄位可能不會與 spark_jar_task 一起指定。
如果是 spark_jar_task,則表示此工作應該執行 JAR。
如果是 spark_python_task,則表示此工作應該執行 Python 檔案。
如果是 spark_submit_task,則表示 Spark 提交指令應該啟動此工作。
如果 pipeline_task 存在,表示該作業應當執行 DLT 流程。
如果是 run_job_task,則表示此工作應該執行另一個工作。
name STRING 工作的可選名稱。 預設值是 Untitled
libraries 程式庫的陣列 在執行工作的叢集上,可選擇安裝的程式庫清單。 預設值是空白清單。
email_notifications 工作郵件通知 一組選用的電子郵件地址,將在此工作的執行開始或完成時以及刪除此工作時收到通知。 預設行為是不要傳送任何電子郵件。
webhook_notifications WebhookNotifications 一組可選的系統通知目的地,用於在此工作開始、完成或失敗時發送通知。
notification_settings 工作通知設定 將通知傳送至此工作的每個 email_notificationswebhook_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 會導致跳過所有新的執行。 預設行為是只允許 1 個並行執行。
health 工作健康規則 一組針對工作所制定的可選的健康規則。

工作任務

欄位名稱 類型 描述
notebook_taskspark_jar_task
spark_python_taskspark_submit_task
pipeline_taskrun_job_task
NotebookTaskSparkJarTaskSparkPythonTaskSparkSubmitTaskPipelineTaskRunJobTask 如果是 notebook_task,則表示此工作應該運行筆記本。 此欄位可能不會與 spark_jar_task 一起指定。
如果是 spark_jar_task,則表示此工作應該執行 JAR。
如果是 spark_python_task,則表示此工作應該執行 Python 檔案。
如果是 spark_submit_task,則表示 Spark 提交指令應該啟動此工作。
如果 pipeline_task 存在,表示該作業應當執行 DLT 流程。
如果是 run_job_task,則表示此工作應該執行另一個工作。

工作健康規則

欄位名稱 類型 描述
metric STRING 指定要評估的特定健康規則之健康指標。 合法值為 RUN_DURATION_SECONDS
operator STRING 指定用來比較健康情況計量值的運算元與指定的閾值。 合法值為 GREATER_THAN
value INT32 指定健康情況計量應符合的閾值,以符合健康情況規則。

工作健康規則

欄位名稱 類型 描述
rules JobsHealthRule 的陣列 一組可針對工作定義的可選健康規則。

圖書館

欄位名稱 類型 描述
jareggwhl
pypimavencran
STRINGSTRINGSTRINGPythonPyPiLibraryMavenLibraryRCranLibrary 如果是 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

欄位名稱 類型 描述
coordinates STRING Gradle 風格的 Maven 座標。 例如: org.jsoup:jsoup:1.7.2 。 這是必要欄位。
repo STRING 可用於安裝 Maven 套件的 Maven 存放庫。 如果省略,則會搜尋 Maven 中央儲存庫和 Spark 套件。
exclusions 一個 STRING 的陣列 要排除的相依性清單。 例如: ["slf4j:slf4j", "*:hadoop-client"]
Maven 相依性排除項目:https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html

新群集

欄位名稱 類型 描述
num_workersautoscale INT32自動縮放 如果有 num_workers,這個叢集應該擁有的工作節點數目。 一個叢集有一個 Spark 驅動程式、num_workers 個執行程式、總共 num_workers + 1 個 Spark 節點。
注意:讀取叢集的屬性時,此欄位會反映預期的工作者數目,而不是目前實際的工作者數目。 例如,如果叢集從 5 個背景工作角色調整為 10 個背景工作角色,則此欄位會立即更新,以反映 10 個背景工作角色的目標大小,而列於 spark_info 中的背景工作角色會隨著佈建的新節點而逐漸從 5 個增加到 10 個。
如果是自動縮放,則需要參數,才能根據負載自動擴大和縮小叢集。
spark_version STRING 叢集的 Spark 版本。 您可以使用 GET 2.0/clusters/spark-versions 呼叫來擷取可用的 Spark 版本清單。 這是必要欄位。
spark_conf SparkConfPair 包含一組選用的、使用者指定的 Spark 設定索引鍵/值組的物件。 您還可以通過某種方式將額外的 JVM 選項字串傳遞給驅動程式和執行程式。
分別是 spark.driver.extraJavaOptionsspark.executor.extraJavaOptions
範例 Spark 設定:
{"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 欄位,或者是指定節點類型識別碼或執行個體集區識別碼的叢集原則。
driver_node_type_id STRING Spark 驅動程式的節點類型。 此欄位是選擇性的;如果取消設定,驅動程式節點類型會設定為與上面定義 node_type_id 相同的值。
custom_tags ClusterTag 包含叢集資源的一組標籤的物件。 除了 default_tags 之外,Databricks 會使用這些標籤來標記所有叢集資源 (例如 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 要用於驅動節點的實例池的選擇性識別碼。 您還必須指定 instance_pool_id。 若需詳細資料,請參閱執行個體集區 API
instance_pool_id STRING 用於叢集節點的實例池的可選 ID。 如果 driver_instance_pool_id 存在,
instance_pool_id 僅用於工作節點。 否則,它會同時用於驅動程式節點和工作節點。 如需詳細資料,請參閱執行個體集區 API

筆記本輸出

欄位名稱 類型 描述
result STRING 傳遞至 dbutils.notebook.exit() 的數值。 Azure Databricks 會限制此 API 只傳回值的前 1 MB。 若是較大的結果,您的工作可以將結果儲存在雲端存儲服務中。 如果從未呼叫 dbutils.notebook.exit(),此欄位將會不存在。
truncated BOOLEAN 結果是否被截斷。

NotebookTask

所有輸出儲存格的大小均以 8MB 為限。 如果儲存格的輸出的大小較大,則將會取消執行的剩餘部分,且該執行會被標示為失敗。 在這種情況下,其他儲存格的輸出內容可能也會遺漏某些部分。

如果您需要尋找超出限制的儲存格,請針對通用叢集運行筆記本,並使用此筆記本自動儲存技術

欄位名稱 類型 描述
notebook_path STRING 要在 Azure Databricks 工作區中執行的筆記本的絕對路徑。 此路徑必須以斜線開頭。 這是必要欄位。
revision_timestamp LONG 記事本修訂的時間戳記。
base_parameters ParamPair 的地圖 用於此工作每次執行的基本參數。 如果執行是由呼叫 run-now 並指定參數所起始的,則會合併兩個參數映射。 如果在 base_parametersrun-now 中指定了相同的索引鍵,則會使用來自 run-now 的值。
使用什麼是動態值參考?來設定包含工作執行相關資訊的參數。
如果筆記本接受的參數在工作的 base_parametersrun-now 覆寫參數中未被指定,則系統會使用筆記本的預設值。
使用 dbutils.widgets.get 在筆記本中擷取這些參數。

ParamPair

執行筆記本任務的工作的名稱型參數。

重要

此資料結構中的欄位只接受拉丁文字元 (ASCII 字元集)。 使用非 ASCII 字元將會傳回錯誤。 無效、非 ASCII 字元的範例包括中文、日文漢字和表情圖示。

類型 描述
STRING 參數名稱。 傳遞至 dbutils.widgets.get 以擷取值。
STRING 參數值。

PipelineTask

欄位名稱 類型 描述
pipeline_id STRING 要執行之 DLT 管線工作的完整名稱。

Python PyPi 函式庫

欄位名稱 類型 描述
package STRING 要安裝的 PyPI 套件的名稱。 另外,還支援選用的確切版本規格。 範例:simplejsonsimplejson==3.8.0。 這是必要欄位。
repo STRING 套件可以被找到的存放庫。 如果未指定,則會使用預設的 pip 索引子。

RCranLibrary

欄位名稱 類型 描述
package STRING 要安裝的 CRAN 套件的名稱。 這是必要欄位。
repo STRING 套件可以被找到的存放庫。 如果未指定,則會使用預設的 CRAN 存放庫。

運行

有關執行的所有資訊,除了其輸出之外。 您可以使用 getRunOutput 方法個別擷取輸出。

欄位名稱 類型 描述
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 或筆記本中命令所需的時間 (以毫秒為單位),直到它們完成、失敗、逾時、取消,或遇到了未預期的錯誤。
cleanup_duration INT64 所需的毫秒時間來終結叢集並清除任何相關的偽件。 執行的總持續時間是 setup_duration、execution_duration 和cleanup_duration 的總和。
end_time INT64 結束此執行的時間,以 Epoch 毫秒為單位 (自 1970 年 1 月 1 日 (UTC) 起的毫秒數)。 如果工作仍在執行中,此欄位將會設定為 0。
trigger TriggerType 引發此執行的觸發器類型。
run_name STRING 執行名稱(可選) 預設值是 Untitled。 允許的長度上限是 4096 個位元組 (UTF-8 編碼)。
run_page_url STRING 運行詳細頁面的 URL。
run_type STRING 運行類型。
attempt_number INT32 此次觸發作業執行嘗試的序列號。 初始執行嘗試的 attempt_number 為 0。 如果初始執行嘗試失敗,且工作有重試原則 (max_retries> 0),則會使用原始嘗試的標識碼 original_attempt_run_id 和遞增 attempt_number 來建立後續執行。 僅重試執行,直到執行成功且最大值 attempt_number 與工作的 max_retries 值相同為止。

RunJobTask

欄位名稱 類型 描述
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 狀態結束,則工作服務會盡快終止叢集。 此狀態是末期的。

執行參數

本次運行的參數。 根據工作任務的類型,應在 python_params 要求中僅指定 jar_params、run-now 或 notebook_params 中的一個。 包含 Spark JAR 任務或 Python 任務的作業接收基於位置的參數列表,而包含筆記本任務的作業則使用鍵值映射表。

欄位名稱 類型 描述
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_params": {"name": "john doe", "age": "35"}. 映射會傳遞至筆記本,並可透過 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 字元的範例包括中文、日文漢字和表情圖示。

執行結果狀態

執行的結果狀態。

  • 如果 life_cycle_state = TERMINATED:如果執行有任務,則結果保證可供使用,並指出任務的結果。
  • 如果 life_cycle_state = PENDINGRUNNINGSKIPPED,則結果狀態不可用。
  • 如果 life_cycle_state = TERMINATING 或 lifecyclestate = INTERNAL_ERROR:在執行中有任務且成功啟動它的情況下,結果狀態可供使用。

一旦可用,結果狀態就不會變更。

描述
SUCCESS 任務已順利完成。
FAILED 任務已完成,但出現了錯誤。
TIMEDOUT 到達超時後,運行已停止。
CANCELED 應使用者要求,運行已取消。

RunState

欄位名稱 類型 描述
life_cycle_state RunLifeCycleState 執行生命週期中執行的目前位置的描述。 此欄位在回應中始終可供使用。
result_state RunResultState 運行過程的結果狀態。 如果無法使用,則回應不會包含此欄位。 如需 result_state 可用性的詳細資料,請參閱 RunResultState
user_cancelled_or_timedout BOOLEAN 執行是否因逾時而被排程器取消或被使用者手動取消。
state_message STRING 目前狀態的描述性訊息。 此欄位為非結構化,且其確切的格式可能會有變更。

SparkConfPair

Spark 組態索引鍵/值組。

類型 描述
STRING 組態屬性名稱。
STRING 組態屬性值。

SparkEnvPair

Spark 環境變數索引鍵/值組。

重要

在工作叢集中指定環境變數時,此資料結構中的欄位只接受拉丁文字元 (ASCII 字元集)。 使用非 ASCII 字元將會傳回錯誤。 無效、非 ASCII 字元的範例包括中文、日文漢字和表情圖示。

類型 描述
STRING 環境變數名稱。
STRING 環境變數值。

SparkJarTask

欄位名稱 類型 描述
jar_uri STRING 自 2016 年 4 月起已遭取代。 請改為提供 jar 透過 libraries 欄位。 如需範例,請參閱建立
main_class_name STRING 包含要執行的 main 方法之類別的完整名稱。 這個類別必須包含在提供做為程式庫的 JAR 中。
程式碼應該使用 SparkContext.getOrCreate 來取得 Spark 內容,否則工作的執行將會失敗。
parameters STRING 的陣列 傳遞至 main 方法的參數。
使用什麼是動態值參考?來設定包含工作執行相關資訊的參數。

SparkPythonTask

欄位名稱 類型 描述
python_file STRING 要執行之 Python 檔案的 URI。 支援 DBFS 路徑。 這是必要欄位。
parameters STRING 的陣列 傳遞至 Python 檔案的命令列參數。
使用什麼是動態值參考?來設定包含工作執行相關資訊的參數。

SparkSubmitTask

重要

  • 您只能在新的叢集上叫用 Spark 提交任務。
  • 在 new_cluster 規格中,不支援 librariesspark_conf。 請改用 --jars--py-files 來新增 JAVA 和 Python 程式庫,並使用 --conf 來設定 Spark 組態。
  • masterdeploy-modeexecutor-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"]
}
欄位名稱 類型 描述
parameters STRING 的陣列 傳遞給 "Spark submit" 的命令列參數。
使用什麼是動態值參考?來設定包含工作執行相關資訊的參數。

觸發類型

這些是可引發執行的觸發程序類型。

類型 描述
PERIODIC 定期觸發執行的排程,例如 cron 排程。
ONE_TIME 引發單次運行的一次性觸發器。 當您透過 UI 或 API 依需求觸發一次性運行時,就會發生這種情況。
RETRY 表示因重試先前失敗的執行而觸發的執行。 當您要求在發生失敗時重新執行工作時,就會發生這種情況。

檢視項目

匯出的內容為 HTML 格式。 例如,如果要匯出的檢視是儀表板,則會針對每個儀表板傳回一個 HTML 字串。

欄位名稱 類型 描述
content STRING 檢視的內容。
name STRING 檢視項目的名稱。 在程式碼檢視模式下,筆記本的名稱。 在儀表板視圖中,顯示的是面板名稱。
type ViewType 檢視項目的類型。

檢視類型

類型 描述
NOTEBOOK 記事本檢視項目
DASHBOARD 儀表板檢視項目。

匯出視圖

匯出內容選項:程式碼、所有儀表板或全部。

類型 描述
CODE 筆記本的程式碼檢視。
DASHBOARDS 筆記本的所有儀表板視圖。
ALL 筆記本的所有視圖。

Webhook

欄位名稱 類型 描述
id STRING 參考系統通知目的地的識別碼。 這是必要欄位。

WebhookNotifications

欄位名稱 類型 描述
on_start Webhook 的陣列 可選的系統目的地清單,在執行開始時將收到通知。 如果未在工作建立、重設或更新上指定,清單會是空的,而且不會傳送通知。 最多可為 on_start 屬性指定 3 個目的地。
on_success Webhook 的陣列 可選擇的系統通知對象清單,在執行成功完成時會收到通知。 如果執行以 TERMINATEDlife_cycle_stateSUCCESSFULresult_state 結束,則視為已成功完成。 如果未在工作建立、重設或更新上指定,清單會是空的,而且不會傳送通知。 最多可為 on_success 屬性指定 3 個目的地。
on_failure Webhook 的陣列 選用的系統目的地清單,可在執行未成功完成時收到通知。 如果執行以下列狀態結束,則視為未成功完成:INTERNAL_ERROR
life_cycle_stateSKIPPEDFAILEDTIMED_OUTresult_state。 如果未在工作建立、重設或更新上指定,清單會是空的,而且不會傳送通知。 最多可為 on_failure 屬性指定 3 個目的地。
on_duration_warning_threshold_exceeded Webhook 的陣列 當執行時間超過RUN_DURATION_SECONDS欄位中health度量指定的閾值時,需要通知的系統目的地的可選清單。 最多可為 on_duration_warning_threshold_exceeded 屬性指定 3 個目的地。

WorkspaceStorageInfo

工作區儲存體資訊。

欄位名稱 類型 描述
destination STRING 檔案目的地。 範例: /Users/someone@domain.com/init_script.sh