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 (英文)指出是否要在 development 或 production 模式中執行管線的旗標。預設值是 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 此值是由系統設定,而且無法覆寫。 |