共用方式為


Delta Live Tables 屬性參考

本文提供 Azure Databricks 中差異即時資料表 JSON 設定規格和資料表屬性的參考。 如需關於使用這些各種屬性和組態的詳細資訊,請參閱下列文章:

差異即時資料表管線設定

欄位
id

類型:string (英文)

此管線的全域唯一識別碼。 識別碼是由系統指派,且無法變更。
name

類型:string (英文)

此管線的使用者好記名稱。 此名稱可用來識別 UI 中的管線作業。
storage

類型:string (英文)

DBFS 或雲端儲存體上的位置,儲存管線執行所需的輸出資料和中繼資料。 資料表和中繼資料會儲存在此位置的子目錄中。

未指定 storage 設定時,系統會預設為 dbfs:/pipelines/ 中的位置。

建立管線之後,storage 就無法變更設定。
configuration

類型:object (英文)

要新增至將會執行管線的叢集 Spark 組態的選擇性設定清單。 差異即時資料表執行階段會讀取這些設定,並可透過 Spark 設定來管線查詢。

元素必須格式化為 key:value 配對。
libraries

類型:array of objects (英文)

包含管線程式碼和必要成品的筆記本陣列。
clusters

類型:array of objects (英文)

要執行管線的叢集的規格陣列。

如果未指定此欄位,管線將自動為管線選取預設叢集組態。
development

類型:boolean (英文)

指出是否要在
developmentproduction 模式中執行管線的旗標。

預設值是 true
notifications

類型:array of objects (英文)

當管線更新完成、發生可重試錯誤失敗、無法重試錯誤,或流程失敗時,電子郵件通知的選擇性規格陣列。
continuous

類型:boolean (英文)

指出是否要持續執行管線的旗標。

預設值是 false
target

類型:string (英文)

持久儲存管線輸出資料的資料庫名稱。 設定 target 可讓您檢視及查詢來自 Azure Databricks UI 的管線輸出資料。
channel

類型:string (英文)

要使用的差異即時資料表執行階段版本。 支援的 值為:

- preview 使用即將對執行階段版本的變更來測試您的管線。
- current 以檢視目前的執行階段版本。

channel 是選擇性欄位。 預設值為
current. Databricks 建議針對生產工作負載使用目前執行階段版本。
edition

輸入 string

要執行管線的差異即時資料表產品版本。 此設定可讓您根據管線的需求,選擇最佳產品版本:

- CORE 表示執行串流內嵌工作負載。
- PRO 表示執行串流擷取和異動資料擷取 (CDC) 工作負載。
- ADVANCED 表示執行串流內嵌工作負載、CDC 工作負載,以及需要差異即時資料表預期來強制執行資料品質限制的工作負載。

edition 是選擇性欄位。 預設值為
ADVANCED.
photon

類型:boolean (英文)

指出是否要使用什麼是 Photon?來執行管線的旗標。 Photon 是 Azure Databricks 高效能 Spark 引擎。 啟用 Photon 的管線會以與非 Photon 管線不同的費率計費。

photon 是選擇性欄位。 預設值是 false
pipelines.maxFlowRetryAttempts

類型:int (英文)

在發生可重試失敗的管線更新失敗之前,重試流程的嘗試次數上限。

預設值是 2。 根據預設,發生可重試失敗時,差異即時資料表執行階段會嘗試執行流程三次,包括原始嘗試。
pipelines.numUpdateRetryAttempts

類型:int (英文)

在發生可重試失敗的更新失敗之前,重試更新的嘗試次數上限。 重試會以完整更新的方式執行。

預設值是 5。 此參數僅適用於在生產模式中執行的觸發更新。 當管線在開發模式中執行時,不會重試。

差異即時資料表資料表屬性

除了 Delta Lake 支援的資料表屬性之外,還可設定下列資料表屬性。

資料表屬性
pipelines.autoOptimize.managed

預設:true

啟用或停用此資料表的自動排程最佳化。
pipelines.autoOptimize.zOrderCols

預設值:None

選擇性字串,包含以逗號分隔的資料行名稱清單,用於對此資料表進行 Z 軸順序。 例如,pipelines.autoOptimize.zOrderCols = "year,month"
pipelines.reset.allowed

預設:true

控制此資料表是否允許完整重新整理。

管線觸發間隔

您可為整個差異即時資料表管線的指定管線觸發間隔,或指定為資料集宣告的一部分。 請參閱 設定連續管線的觸發間隔。

pipelines.trigger.interval
預設值基於流程類型:

- 五秒的串流查詢。
- 當所有輸入資料都是來自 Delta 來源時,一分鐘即可完成查詢。
- 當某些資料源可能是非 Delta 時,十分鐘完成查詢。

值為數位加上時間單位。 以下是有效的時間單位:

- second, seconds
- minute, minutes
- hour, hours
- day, days

定義值時,您可使用單數或複數單位,例如:

- {"pipelines.trigger.interval" : "1 hour"}
- {"pipelines.trigger.interval" : "10 seconds"}
- {"pipelines.trigger.interval" : "30 second"}
- {"pipelines.trigger.interval" : "1 minute"}
- {"pipelines.trigger.interval" : "10 minutes"}
- {"pipelines.trigger.interval" : "10 minute"}

不是使用者可設定的叢集屬性

因為差異即時資料表會管理叢集生命週期,所以許多叢集設定是由差異即時資料表所設定,而且使用者無法在管線設定或管線所使用的叢集原則中手動設定。 下表列出這些設定,以及無法手動對其進行設定的原因。

欄位
cluster_name

差異即時資料表會設定用來執行管線更新的叢集名稱。 無法覆寫這些名稱。
data_security_mode
access_mode

系統會自動設定這些值。
spark_version

差異即時資料表叢集會在持續更新以包含最新功能的自訂 Databricks 執行階段版本上執行。 Spark 版本會與 Databricks Runtime 版本搭配使用,且無法覆寫。
autotermination_minutes

由於差異即時資料表會管理叢集自動終止和重複使用邏輯,因此無法覆寫叢集自動終止時間。
runtime_engine

雖然您可為管線啟用 Photon 來控制此欄位,但無法直接設定此值。
effective_spark_version

此值由系統自動設定。
cluster_source

此欄位是由系統設定,而且唯讀。
docker_image

因為差異即時資料表會管理叢集生命週期,所以您無法搭配管線叢集使用自訂容器。
workload_type

此值是由系統設定,而且無法覆寫。