本頁提供如何在 Databricks 資產套件組合中定義作業工作的相關資訊。 如需作業工作的相關資訊,請參閱 在 Lakeflow 作業中設定和編輯工作。
這很重要
不建議將任務 git_source 欄位和任務 source 欄位設為 GIT,因為本機相對路徑可能不會指向 Git 儲存庫中的相同內容。 套件組合預期已部署作業的檔案與部署所在位置的本機複本相同。
請改為在本機複製存放庫,並在此存放庫中設定您的套件組合專案,讓工作的來源是工作區。
設定任務
在工作定義的索引鍵中 tasks 定義服務包中工作的任務。 可用工作類型的工作設定範例位於 [工作設定] 區段中。 如需在軟體組中定義工作的相關資訊,請參閱 工作。
提示
若要使用 Databricks CLI快速產生現有作業的資源組態,您可以使用 bundle generate job 命令。 請參閱套件組合命令。
若要設定任務值,大部分的工作任務類型都有任務特定的參數,但您也可以定義傳遞給任務的工作 參數 。 工作參數支援動態值參照,可讓您在作業之間傳遞工作執行特有的值。 如需如何依任務類型傳遞任務值的完整資訊,請參閱 依任務類型的詳細資訊。
您也可以使用目標工作區的設定來覆寫一般工作任務設定。 請參閱 用目標設定覆蓋。
下列範例組態會定義具有兩個筆記本任務的任務,並將任務值從第一個任務傳遞至第二個任務。
resources:
jobs:
pass_task_values_job:
name: pass_task_values_job
tasks:
# Output task
- task_key: output_value
notebook_task:
notebook_path: ../src/output_notebook.ipynb
# Input task
- task_key: input_value
depends_on:
- task_key: output_value
notebook_task:
notebook_path: ../src/input_notebook.ipynb
base_parameters:
received_message: '{{tasks.output_value.values.message}}'
output_notebook.ipynb 包含以下程式碼,該程式碼可為 message 鍵設定任務值:
# Databricks notebook source
# This first task sets a simple output value.
message = "Hello from the first task"
# Set the message to be used by other tasks
dbutils.jobs.taskValues.set(key="message", value=message)
print(f"Produced message: {message}")
擷取 input_notebook.ipynb 在工作組態中設定的參數 received_message的值:
# This notebook receives the message as a parameter.
dbutils.widgets.text("received_message", "")
received_message = dbutils.widgets.get("received_message")
print(f"Received message: {received_message}")
任務設定
本節包含每個工作任務類型的設定和範例。
無塵室筆記本任務
當clean_rooms_notebook_task欄位存在時,無塵室筆記本任務會執行無塵室筆記本。 如需無塵室的相關資訊,請參閱 什麼是 Azure Databricks 無塵室?。
下列按鍵可用於 無塵室筆記本工作。 如需對應的 REST API 物件定義,請參閱 clean_rooms_notebook_task。
| Key | 類型 | Description |
|---|---|---|
clean_room_name |
繩子 | 必須的。 筆記本所屬的無塵室。 |
etag |
繩子 | 校驗碼,以驗證筆記本資源的最新狀態。 可以透過呼叫 無塵室資產取用操作來取得它。 |
object |
Map | 用於潔淨室筆記本任務的基本參數。 |
notebook_name |
繩子 | 必須的。 正在執行的筆記本名稱。 |
條件任務
condition_task 可讓您將具有 if/else 條件式邏輯的工作新增至作業。 這項任務評估一種可用來控制其他任務執行的條件。 條件工作不需要叢集執行,而且不支援重試或通知。 如需有關 if/else 條件工作的詳細資訊,請參閱 如何透過 If/else 工作為工作新增分支邏輯。
以下按鍵可用於條件任務。 如需對應的 REST API 物件定義,請參閱 condition_task。
| Key | 類型 | Description |
|---|---|---|
left |
繩子 | 必須的。 条件的左运算元。 可以是字串值或工作狀態,或動態值參照,例如 {{job.repair_count}} 或 {{tasks.task_key.values.output}}。 |
op |
繩子 | 必須的。 要用於比較的運算符。 有效值為: EQUAL_TO、 NOT_EQUAL、 GREATER_THAN、 GREATER_THAN_OR_EQUAL、 LESS_THANLESS_THAN_OR_EQUAL、 。 |
right |
繩子 | 必須的。 條件的正確運算元。 可以是字串值、工作狀態或動態值參照。 |
範例
下列範例包含條件工作和筆記本工作,其中筆記本工作只有在作業修復數目小於 5 時才會執行。
resources:
jobs:
my-job:
name: my-job
tasks:
- task_key: condition_task
condition_task:
op: LESS_THAN
left: '{{job.repair_count}}'
right: '5'
- task_key: notebook_task
depends_on:
- task_key: condition_task
outcome: 'true'
notebook_task:
notebook_path: ../src/notebook.ipynb
面板任務
您可以使用此工作來重新整理儀錶板,並將快照集傳送給訂閱者。 如需套件組合中儀表板的詳細資訊,請參閱 儀表板。
下列鍵可用於 儀表板工作。 如需對應的 REST API 物件定義,請參閱 dashboard_task。
| Key | 類型 | Description |
|---|---|---|
dashboard_id |
繩子 | 必須的。 要重新整理的儀表板識別碼。 儀表板必須已經存在。 |
subscription |
Map | 用於傳送儀表板快照的訂閱組態。 每個訂閱物件都可以指定在儀表板重新整理完成後傳送快照的目的地設定。 請參閱 訂閱。 |
warehouse_id |
繩子 | 用於執行排程儀表板的倉庫 ID。 如果未指定,則會使用儀表板的預設倉儲。 |
範例
下列範例會將儀表板任務新增至作業。 執行作業時,會重新整理具有指定ID的儀表板。
resources:
jobs:
my-dashboard-job:
name: my-dashboard-job
tasks:
- task_key: my-dashboard-task
dashboard_task:
dashboard_id: 11111111-1111-1111-1111-111111111111
dbt 任務
您可以使用這項工作來執行一或多個 dbt 命令。 如需 dbt 的詳細資訊,請參閱 連線至 dbt Cloud。
下列按鍵可用於 dbt 工作。 如需對應的 REST API 物件定義,請參閱 dbt_task。
| Key | 類型 | Description |
|---|---|---|
catalog |
繩子 | 要使用的目錄名稱。 只有在指定 a warehouse_id 時,才能指定目錄值。 此欄位需要 dbt-databricks >= 1.1.1。 |
commands |
Sequence | 必須的。 要依序執行的 dbt 命令清單。 每個命令必須是完整的 dbt 命令(例如,dbt deps、dbt seeddbt rundbt test)。 最多可以提供 10 個命令。 |
profiles_directory |
繩子 | 包含 dbt profiles.yml 檔案的目錄路徑。 只有在未指定 warehouse_id 時才能指定。 如果未指定 no warehouse_id 且未設定此資料夾,則會使用根目錄。 |
project_directory |
繩子 | 包含 dbt 專案之目錄的路徑。 如果未指定,則預設為儲存庫或工作區目錄的根目錄。 對於儲存在 Databricks 工作區中的專案,路徑必須是絕對的,並以斜線開頭。 對於遠端儲存庫中的專案,路徑必須是相對的。 |
schema |
繩子 | 要寫入的模式。 只有在同時提供 a warehouse_id 時,才會使用此參數。 如果未提供,則會使用預設結構描述。 |
source |
繩子 | dbt 專案的位置類型。 有效值為 WORKSPACE 與 GIT。 設定為 WORKSPACE時,將會從 Databricks 工作區擷取專案。 當設定為 GIT時,將從 中 git_source定義的 Git 儲存庫擷取專案。 如果是空的,則任務會使用GIT如果git_source已定義,否則使用WORKSPACE。 |
warehouse_id |
繩子 | 要用來執行 dbt 命令的 SQL 倉儲識別碼。 如果未指定,將使用預設倉庫。 |
範例
下列範例會將 dbt 任務新增至一個任務中。 此 dbt 工作會使用指定的 SQL 倉儲來執行指定的 dbt 命令。
若要取得 SQL 倉儲的識別碼,請開啟 SQL 倉儲的設定頁面,然後在 [概觀] 標籤的 名稱 欄位中,複製倉儲名稱後括弧中找到的識別碼。
提示
Databricks 資源包中還包含dbt-sql專案範本,用於定義包含 dbt 任務的工作,以及已部署的 dbt 工作的 dbt 設定檔。 如需 Databricks 資產組合範本的相關信息,請參閱 預設套件組合範本。
resources:
jobs:
my-dbt-job:
name: my-dbt-job
tasks:
- task_key: my-dbt-task
dbt_task:
commands:
- 'dbt deps'
- 'dbt seed'
- 'dbt run'
project_directory: /Users/someone@example.com/Testing
warehouse_id: 1a111111a1111aa1
libraries:
- pypi:
package: 'dbt-databricks>=1.0.0,<2.0.0'
對每個任務
for_each_task 可讓您將具有「for each」迴圈的任務新增至您的作業中。 該任務會針對所提供的每個輸入執行一個嵌套任務。 如需 for_each_task的詳細資訊,請參閱 如何使用 For each 工作在循環中反覆執行另一個工作。
下列按鍵可用於 for_each_task。 如需對應的 REST API 物件定義,請參閱 for_each_task。
| Key | 類型 | Description |
|---|---|---|
concurrency |
整數 | 可同時執行的工作反覆專案數目上限。 如果未指定,則所有疊代都可以平行執行,但須遵守叢集和工作區限制。 |
inputs |
繩子 | 必須的。 迴圈的輸入數據。 這可以是 JSON 字串或陣列參數的參考。 陣列中的每個元素都會傳遞至巢狀任務的一次迭代。 |
task |
Map | 必須的。 要針對每個輸入執行的巢狀任務定義。 此物件包含完整的任務規格,包括 task_key 和任務類型(例如、 notebook_task、 python_wheel_task等)。 |
範例
下列範例會將 for_each_task 涵蓋到一個作業中,然後對另一個任務的值進行迴圈處理。
resources:
jobs:
my_job:
name: my_job
tasks:
- task_key: generate_countries_list
notebook_task:
notebook_path: ../src/generate_countries_list.ipnyb
- task_key: process_countries
depends_on:
- task_key: generate_countries_list
for_each_task:
inputs: '{{tasks.generate_countries_list.values.countries}}'
task:
task_key: process_countries_iteration
notebook_task:
notebook_path: ../src/process_countries_notebook.ipnyb
JAR 任務
您可以使用此工作來執行 JAR。 您可以參考本機 JAR 程式庫或工作區中的程式庫、Unity Catalog 磁碟區中的程式庫或外部雲端儲存位置中的程式庫。 請參閱 JAR 檔案 (Java 或 Scala)。
如需如何在標準存取模式中在已啟用 Unity 目錄的叢集上編譯和部署 Scala JAR 檔案的詳細資訊,請參閱 教學課程:在無伺服器計算上執行 Scala 程式碼。
下列索引鍵可用於 JAR 作業。 如需對應的 REST API 物件定義,請參閱 jar_task。
| Key | 類型 | Description |
|---|---|---|
jar_uri |
繩子 | Deprecated. 要執行的 JAR URI。 支援 DBFS 和雲端儲存路徑。 此欄位已被取代,不應使用。 請改用欄位 libraries 來指定 JAR 相依關係。 |
main_class_name |
繩子 | 必須的。 包含要執行的 main 方法之類別的完整名稱。 這個類別必須包含在提供做為程式庫的 JAR 中。 程式碼必須用 SparkContext.getOrCreate 來取得 Spark 內容;否則,作業的執行會失敗。 |
parameters |
Sequence | 傳遞至 main 方法的參數。 使用工作參數變數來設定包含工作執行相關資訊的參數。 |
範例
下列範例會將 JAR 工作新增到任務中。 JAR 檔案的路徑指向一個磁碟卷位置。
resources:
jobs:
my-jar-job:
name: my-jar-job
tasks:
- task_key: my-jar-task
spark_jar_task:
main_class_name: org.example.com.Main
libraries:
- jar: /Volumes/main/default/my-volume/my-project-0.1.0-SNAPSHOT.jar
筆記本任務
您使用此任務來執行筆記本。 請參閱工作相關的筆記本任務。
下列按鍵可用於筆記型電腦任務。 如需對應的 REST API 物件定義,請參閱 notebook_task。
| Key | 類型 | Description |
|---|---|---|
base_parameters |
Map | 要用於此作業每次執行的基本參數。
|
notebook_path |
繩子 | 必須的。 Databricks 工作區或遠端存放庫中筆記本的路徑,例如 /Users/user.name@databricks.com/notebook_to_run。 對於儲存在 Databricks 工作區中的筆記本,路徑必須是絕對的,並以斜線開頭。 對於儲存在遠端儲存庫中的筆記本,路徑必須是相對的。 |
source |
繩子 | 筆記本的位置類型。 有效值為 WORKSPACE 與 GIT。 設定為 WORKSPACE時,將會從本機 Databricks 工作區擷取筆記本。 當設定為 GIT時,將從 中 git_source定義的 Git 儲存庫擷取筆記本。 如果值為空,則會使用 GIT,在git_source已定義的情況下;否則使用WORKSPACE。 |
warehouse_id |
繩子 | 要執行筆記本的倉庫識別碼。 不支援傳統 SQL 倉儲。 請改用無伺服器或專業版 SQL 倉儲。 請注意,SQL 倉儲僅支援 SQL 儲存格。 如果筆記本包含非 SQL 儲存格,執行將會失敗,因此如果您需要在儲存格中使用 Python (或其他),請使用無伺服器。 |
範例
下列範例會將筆記本工作新增至工作,並設定名為 my_job_run_id 的工作參數。 要部署的筆記本的路徑是相對於宣告該任務的設定檔而定的。 該任務從其在 Azure Databricks 工作區中部署的位置取得筆記本。
resources:
jobs:
my-notebook-job:
name: my-notebook-job
tasks:
- task_key: my-notebook-task
notebook_task:
notebook_path: ./my-notebook.ipynb
parameters:
- name: my_job_run_id
default: '{{job.run_id}}'
管線工作
您可以使用此任務來運行管線。 請參閱 Lakeflow Spark 宣告式管線。
下列鍵可用於 管線工作。 如需對應的 REST API 物件定義,請參閱 pipeline_task。
| Key | 類型 | Description |
|---|---|---|
full_refresh |
布林值 | 如果為true,則會觸發管線的完整重新整理,這會完全重新計算管線中的所有資料集。 如果為 false 或省略,則只會處理增量資料。 如需詳細資訊,請參閱 管線重新整理語意。 |
pipeline_id |
繩子 | 必須的。 要執行的管線識別碼。 管線必須已經存在。 |
範例
下列範例會將管線工作新增至作業。 此任務會執行指定的管線。
提示
您可以在工作區中開啟管線,然後前往管線設定頁面中的 管線詳細資訊 索引標籤,複製 管線 ID 值以取得管線的 ID。
resources:
jobs:
my-pipeline-job:
name: my-pipeline-job
tasks:
- task_key: my-pipeline-task
pipeline_task:
pipeline_id: 11111111-1111-1111-1111-111111111111
Power BI 工作
這很重要
Power BI 工作類型處於 公開預覽狀態。
使用此工作來觸發 Power BI 語意模型 (先前稱為資料集) 的重新整理。
下列索引鍵可用於 Power BI 工作。 如需對應的 REST API 物件定義,請參閱 power_bi_task。
| Key | 類型 | Description |
|---|---|---|
connection_resource_name |
繩子 | 必須的。 Unity 目錄連線的名稱,以從 Databricks 驗證至 Power BI。 |
power_bi_model |
繩子 | 必須的。 要更新的 Power BI 語意模型 (資料集) 名稱。 |
refresh_after_update |
布林值 | 是否要在更新完成後重新整理 Power BI 語意模型。 預設為 False。 |
tables |
Sequence | 要匯出至 Power BI 的資料表清單 (每個資料表都是地圖)。 請參閱 表格。 |
warehouse_id |
繩子 | 要用作 Power BI 資料來源的 SQL 倉儲識別碼。 |
範例
下列範例會定義 Power BI 工作,其中會指定連線、要更新的 Power BI 模型,以及要匯出的 Databricks 資料表。
resources:
jobs:
my_job:
name: my_job
tasks:
- task_key: power_bi_task
power_bi_task:
connection_resource_name: 'connection_name'
power_bi_model:
workspace_name: 'workspace_name'
model_name: 'model_name'
storage_mode: 'DIRECT_QUERY'
authentication_method: 'OAUTH'
overwrite_existing: false
refresh_after_update: false
tables:
- catalog: 'main'
schema: 'tpch'
name: 'customers'
storage_mode: 'DIRECT_QUERY'
warehouse_id: '1a111111a1111aa1'
Python 指令碼任務
您可以使用這項工作來執行 Python 檔案。
下列索引鍵可用於 Python 指令碼工作。 如需對應的 REST API 物件定義,請參閱 python_task。
| Key | 類型 | Description |
|---|---|---|
parameters |
Sequence | 要傳遞至 Python 檔案的參數。 使用工作參數變數來設定包含工作執行相關資訊的參數。 |
python_file |
繩子 | 必須的。 要執行的 Python 檔案的 URI,例如 /Users/someone@example.com/my-script.py. 針對儲存在 Databricks 工作區中的 Python 檔案,路徑必須是絕對的,且以 / 開頭。 對於儲存在遠端儲存庫中的檔案,路徑必須是相對路徑。 此欄位不支援動態值參照,例如變數。 |
source |
繩子 | Python 檔案的位置類型。 有效值為 WORKSPACE 與 GIT。 設定為 WORKSPACE時,將會從本機 Databricks 工作區擷取檔案。 當設定為 GIT時,將從 中 git_source定義的 Git 儲存庫擷取檔案。 如果值為空,則會使用 GIT,在git_source已定義的情況下;否則使用WORKSPACE。 |
範例
下列範例會將 Python 指令碼工作新增至工作。 要部署的 Python 檔案路徑相對於宣告此工作的設定檔。 這項任務會從其在 Azure Databricks 工作區中部署的位置提取 Python 檔案。
resources:
jobs:
my-python-script-job:
name: my-python-script-job
tasks:
- task_key: my-python-script-task
spark_python_task:
python_file: ./my-script.py
Python Wheel 任務
您可以使用此工作來執行 Python 輪。 請參閱 使用 Databricks 資產套件組合建置 Python 轉輪檔案。
下列鍵可用於 Python 輪子任務。 如需對應的 REST API 物件定義,請參閱 python_wheel_task。
| Key | 類型 | Description |
|---|---|---|
entry_point |
繩子 | 必須的。 要執行的具名進入點:函數或類別。 如果它不存在於套件的元資料中,則會直接使用 $packageName.$entryPoint()套件執行函式。 |
named_parameters |
Map | 要傳遞給 Python 滾輪任務的具名參數,也稱為 關鍵字引數。 具名參數是具有字串鍵和字串值的鍵值對。 不能同時指定 parameters 和 named_parameters。 如果指定,則 named_parameters 會以 parameters 關鍵字引數的形式傳遞至進入點函式。 |
package_name |
繩子 | 必須的。 要執行的 Python 套件名稱。 所有相依性都必須安裝在環境中。 這不會檢查或安裝任何套件相依性。 |
parameters |
Sequence | 要傳遞給 Python 滾輪工作的參數,也稱為 位置引數。 每個參數都是一個字串。 如果指定, named_parameters 則不得指定。 |
範例
下列範例將 Python wheel 任務新增至作業。 要部署的 Python Wheel 檔案的路徑是相對於宣告此任務的設定檔而定的。 請參閱 Databricks Asset Bundles 程式庫相依性。
resources:
jobs:
my-python-wheel-job:
name: my-python-wheel-job
tasks:
- task_key: my-python-wheel-task
python_wheel_task:
entry_point: run
package_name: my_package
libraries:
- whl: ./my_package/dist/my_package-*.whl
執行作業任務
您可以使用此工作來執行另一個工作。
下列鍵可用於執行工作任務。 如需對應的 REST API 物件定義,請參閱 run_job_task。
| Key | 類型 | Description |
|---|---|---|
job_id |
整數 | 必須的。 要執行之作業的識別碼。 工作區中必須已存在該工作。 |
job_parameters |
Map | 要傳遞至正在執行的工作的工作層次參數。 這些參數可在工作任務中存取。 |
pipeline_params |
Map | 管線工作的參數。 只有在執行中的工作包含管線工作時才會使用。 可以包含 full_refresh 以觸發管線的完整刷新。 |
範例
下列範例包含一個在第二個作業中執行用以執行第一個作業的任務。
這個範例會使用替代來擷取要執行的工作 ID。 若要從 UI 取得作業的識別碼,請開啟工作區中的作業,並從作業設定頁面的 [ 作業 詳細數據] 索引標籤標的 [ 作業標識元 ] 值複製識別碼。
resources:
jobs:
my-first-job:
name: my-first-job
tasks:
- task_key: my-first-job-task
new_cluster:
spark_version: '13.3.x-scala2.12'
node_type_id: 'i3.xlarge'
num_workers: 2
notebook_task:
notebook_path: ./src/test.py
my_second_job:
name: my-second-job
tasks:
- task_key: my-second-job-task
run_job_task:
job_id: ${resources.jobs.my-first-job.id}
SQL 作業
您可以使用此工作來執行 SQL 檔案、查詢或警示。
下列索引鍵可用於 SQL 工作。 如需對應的 REST API 物件定義,請參閱 sql_task。
| Key | 類型 | Description |
|---|---|---|
alert |
Map | 執行 SQL 警示的設定。 包含:
|
dashboard |
Map | 重新整理 SQL 儀表板的設定。 包含:
|
file |
Map | 執行 SQL 檔案的設定。 包含:
|
parameters |
Map | 要用於每次執行此任務的參數。 SQL 查詢和檔案可以透過使用語法 {{parameter_key}}來參考這些參數。 使用工作參數變數來設定包含工作執行相關資訊的參數。 |
query |
Map | 執行 SQL 查詢的組態。 包含:
|
warehouse_id |
繩子 | 必須的。 用來執行 SQL 工作的 SQL 倉儲識別碼。 SQL 倉儲必須已經存在。 |
範例
提示
若要取得 SQL 倉儲的識別碼,請開啟 SQL 倉儲的設定頁面,然後在 [概觀] 標籤的 名稱 欄位中,複製倉儲名稱後括弧中找到的識別碼。
下列範例會將 SQL 檔案工作新增至工作。 此 SQL 檔案工作會使用指定的 SQL 倉儲來執行指定的 SQL 檔案。
resources:
jobs:
my-sql-file-job:
name: my-sql-file-job
tasks:
- task_key: my-sql-file-task
sql_task:
file:
path: /Users/someone@example.com/hello-world.sql
source: WORKSPACE
warehouse_id: 1a111111a1111aa1
下列範例會將 SQL 警示工作新增至工作。 此 SQL 警示工作會使用指定的 SQL 倉儲來重新整理指定的 SQL 警示。
resources:
jobs:
my-sql-file-job:
name: my-sql-alert-job
tasks:
- task_key: my-sql-alert-task
sql_task:
warehouse_id: 1a111111a1111aa1
alert:
alert_id: 11111111-1111-1111-1111-111111111111
下列範例會將 SQL 查詢工作新增至工作。 此 SQL 查詢工作會使用指定的 SQL 倉儲來執行指定的 SQL 查詢。
resources:
jobs:
my-sql-query-job:
name: my-sql-query-job
tasks:
- task_key: my-sql-query-task
sql_task:
warehouse_id: 1a111111a1111aa1
query:
query_id: 11111111-1111-1111-1111-111111111111
其他任務設定
下列工作設定可讓您設定所有工作的行為。 如需對應的 REST API 物件定義,請參閱 作業。
| Key | 類型 | Description |
|---|---|---|
depends_on |
Sequence | 任務相依性的可選清單。 每項包含:
|
description |
繩子 | 任務的可選描述。 |
disable_auto_optimization |
布林值 | 是否停用此工作的自動最佳化。 如果為true,則會停用調適性查詢執行等自動最佳化。 |
email_notifications |
Map | 一組選擇性的電子郵件地址,用於在執行開始、完成或失敗時發出通知。 每項包含:
|
environment_key |
繩子 | 工作組態中定義的 environments 環境金鑰。 用於指定環境特定的設定。 使用無伺服器運算時,Python 指令碼、Python 輪盤和 dbt 工作需要此欄位。 |
existing_cluster_id |
繩子 | 將用於所有此任務執行的現有叢集識別碼。 |
health |
Map | 此工作性能監控的選用規格,包括一個 rules 金鑰,這是要評估的性能規則清單。 |
job_cluster_key |
繩子 | 作業組態中定義的作業叢集job_clusters金鑰。 |
libraries |
Sequence | 要安裝在叢集上執行工作的程式庫的選用清單。 每一個程式庫都被指定為具有像jar、egg、whl、pypi、maven、cran或requirements這樣的索引鍵的對應項。 |
max_retries |
整數 | 可選擇設定的失敗時重試任務的最大次數上限。 如果未特別指定,則不會重新嘗試該任務。 |
min_retry_interval_millis |
整數 | 失敗執行開始與後續重試執行之間的選用最小間隔 (以毫秒為單位)。 如果未指定,預設值為 0 (立即重試)。 |
new_cluster |
Map | 為了每次執行此作業,將會制定一個新的叢集規格。 請參閱 叢集。 |
notification_settings |
Map | 此工作的選用通知設定。 每項包含:
|
retry_on_timeout |
布林值 | 選擇性策略,用於指定在任務逾時時是否重試任務。如果未指定,則預設為 false。 |
run_if |
繩子 | 選擇性值,指出工作應執行的條件。 有效值為:
|
task_key |
繩子 | 必須的。 工作的唯一名稱。 此欄位用於從使用該 depends_on 欄位的其他任務中參照此任務。 |
timeout_seconds |
整數 | 選擇性逾時將應用於此任務的每次執行。 值 0 表示沒有逾時。 如果未設定,則會使用叢集組態的預設逾時。 |
webhook_notifications |
Map | 一組選用的系統目的地,用於在執行開始、完成或失敗時發出通知。 每項包含:
|