δ生活表的配置管道設置
預覽
這個特性是在公共預覽。
本文詳細介紹了配置管道設置三角洲生活表。三角洲生活表提供了一個用戶界麵配置和編輯管道設置。UI還提供了一個選項來顯示和編輯設置JSON。
請注意
您可以配置大多數設置UI或JSON規範。一些高級選項隻使用JSON配置。
磚建議熟悉各種三角洲生活表設置使用UI。如果有必要,你可以在工作區中直接編輯JSON配置。JSON配置文件部署管道時也有用新環境或當使用CLI或REST API。
δ住一個完整的引用表的JSON配置設置,看看三角洲生活表管道配置。
選擇一個產品版本
選擇三角洲生活表產品版最適合您的管道需求的特性。以下產品版本是可用的:
核心
流攝取工作負載運行。選擇核心
版如果你的管道不需要高級特性等變化數據捕獲(CDC)或δ生活表期望。箴
流攝取和疾病預防控製中心工作負載運行。的箴
產品版本支持所有的核心
特性,加上支持工作負載需要更新表基於源數據的變化。先進的
流攝取工作負載運行,疾控中心的工作負載,負載需要的期望。的先進的
產品版本支持的特性核心
和箴
版本,還支持執行數據質量約束與達美住表期望。
您可以選擇當您創建或編輯一個管道產品版本。你可以選擇一個不同的版本為每個管道。看到三角洲生活表產品頁麵。
請注意
如果你的管道包括選定的產品版本不支持的特性,例如,期望,您將收到一條錯誤消息和錯誤的原因。您可以編輯管道,選擇適當的版本。
選擇一個管道模式
你可以選擇不斷更新你的管道或手動觸發基於管道模式。看到連續與管道執行觸發。
選擇一個集群政策
用戶必須有權限配置和更新部署計算管道三角洲住表。工作區管理員可以配置集群政策來為用戶提供計算資源的訪問三角洲生活表。看到δ定義限製住表管道集群。
請注意
集群政策是可選的。檢查與您的工作區管理員如果你缺乏計算表三角洲生活所需的特權。
配置源代碼庫
您可以使用文件選擇器在三角洲地區的生活表界麵配置源代碼定義你的管道。管道源代碼中定義數據磚筆記本或SQL或Python腳本存儲在工作區文件。當您創建或編輯你的管道,您可以添加一個或多個筆記本或工作區文件或筆記本和工作區文件。
因為δ生活表自動分析數據集依賴建設管道的加工圖,您可以添加源代碼庫以任意順序。
您還可以修改JSON文件,包括三角洲生活表源代碼中定義的SQL和Python腳本存儲在工作區文件。下麵的例子包括筆記本和從磚回購的工作區文件:
{“名稱”:“例如管道3”,“存儲”:“dbfs: / pipeline-examples /存儲位置/青年們”,“庫”:({“筆記本”:{“路徑”:“/ example-notebook_1”}},{“筆記本”:{“路徑”:“/ example-notebook_2”}},{“文件”:{“路徑”:“回購/ <用戶名> @www.eheci.com/Apply_Changes_Into/apply_changes_into.sql”}},{“文件”:{“路徑”:“回購/ <用戶名> @www.eheci.com/Apply_Changes_Into/apply_changes_into.py”}}]}
指定一個存儲位置
你可以選擇指定一個存儲位置的管道蜂巢metastore出版。指定位置的主要動機是控製的對象存儲位置數據寫的您的管道。
因為所有表、數據、檢查點和元數據的生活表管道完全由δ生活表,大多數交互與達美住表數據集是通過注冊表蜂巢metastore或統一目錄。
為管道輸出表指定一個目標模式
雖然可選的,您應該指定一個目標發布表由管道隨時你超越新管道的開發和測試。發布一條輸油管道到目標使數據集用於查詢在您的磚環境。看到從三角洲住表發布數據蜂巢metastore管道或使用統一的目錄與三角洲住表管道。
配置您的計算設置
每個三角洲住表管道有兩個相關的集群。
的默認的集群是用於管道更新過程。
的維護集群運行日常維護任務。
計算設置在三角洲地區的生活表界麵主要目標默認集群用於管道更新。如果你指定一個存儲位置需要數據訪問憑證,您必須確保維護集群也有這些權限配置。
三角洲生活表為集群提供類似的選項設置為其他計算磚。像其他管道的設置,您可以修改JSON配置為集群指定選項沒有出現在UI。看到集群。
請注意
因為δ生活表運行時管理管道集群的生命周期和磚運行時的運行一個定製版本,你不能手動設置一些集群設置在管道配置中,如火花版本或集群名稱。看到集群沒有用戶可設置的屬性。
您可以配置三角洲生活表管道利用光子。看到光子運行時。
使用自動定量來提高效率和減少資源的使用
使用增強自動定量優化集群利用率的管道。增強自動定量添加額外的資源隻有在係統確定這些資源會增加管道處理速度。資源釋放不再需要時,就關閉所有管道和集群更新完成。
使用以下指南在配置增強自動定量生產管道:
離開
最小值工人
在默認設置。設置
馬克斯工人
設置一個值基於預算和管道優先。
延遲關閉計算
因為δ生活表集群自動關閉不使用的時候,引用一個集群政策,集autotermination_minutes
在您的集群配置會導致錯誤。關閉控製集群行為,您可以使用開發或生產方式或使用pipelines.clusterShutdown.delay
設置在管道配置。下麵的示例設置pipelines.clusterShutdown.delay
價值60秒:
{“配置”:{“pipelines.clusterShutdown.delay”:“六十年代”}}
當生產
模式被啟用,默認值pipelines.clusterShutdown.delay
是0秒
。當發展
模式被啟用,默認值是2小時
。
創建一個單獨的節點集群
如果你設置num_workers
0在集群環境中,作為創建集群單節點集群。配置自動定量集群和設置min_workers
為0,max_workers
0還創建了單個節點集群。
如果你配置一個自動定量集群和設置min_workers
為0,那麼集群不是作為單個節點創建集群。集群有至少1活躍職工時刻直到終止。
一個示例集群配置創建一個節點集群在三角洲住表:
{“集群”:({“標簽”:“默認”,“num_workers”:0}]}
集群配置標簽
您可以使用集群的標簽為您的管道集群監控使用。添加集群標簽在三角洲地區的生活表UI當您創建或編輯一個管道,或者通過編輯的JSON設置管道集群。
雲存儲配置
訪問一個桶在穀歌雲存儲(GCS),您必須創建一個服務帳戶訪問,GCS水桶和服務帳戶添加到集群配置。更多的信息創建一個穀歌雲服務帳戶,看到的穀歌雲存儲。您可以添加服務帳戶配置時創建或編輯管道的現場表API或δ生活表界麵:
在管道的細節為你的管道頁,單擊設置按鈕。的管道的設置頁麵出現。
單擊JSON按鈕。
輸入的服務帳戶配置
gcp_attributes.google_service_account
在集群配置:
{“集群”:({“標簽”:“默認”,“gcp_attributes”:{“google_service_account”:“test-gcs-doc@databricks-dev.iam.gserviceaccount.com”}},{“標簽”:“維護”,“gcp_attributes”:{“google_service_account”:“test-gcs-doc@databricks-dev.iam.gserviceaccount.com”}}]}
參數化管道
Python和SQL代碼定義了你的數據集可以參數化管道的設置。參數化使以下用例:
從你的代碼分離長路徑和其他變量。
減少在開發或登台環境中處理的數據量,加快測試。
重用相同的轉換邏輯來處理來自多個數據源。
下麵的例子使用了startDate可以
配置值限製開發管道輸入數據的一個子集:
創建或刷新生活表customer_events作為選擇*從sourceTable在哪裏日期>“$ {mypipeline.startDate}”;
@dlt。表defcustomer_events():start_date=火花。相依。得到(“mypipeline.startDate”)返回讀(“sourceTable”)。在哪裏(上校(“日期”)>start_date)
{“名稱”:“數據攝取- DEV”,“配置”:{“mypipeline.startDate”:“2021-01-02”}}
{“名稱”:“數據攝取刺激”,“配置”:{“mypipeline.startDate”:“2010-01-02”}}
管道觸發間隔
您可以使用pipelines.trigger.interval
控製流的觸發間隔更新一個表或一個完整的管道。因為引發管道過程隻有一次,每個表pipelines.trigger.interval
隻有使用連續的管道。
磚建議設置pipelines.trigger.interval
在單個表上,因為不同的默認值為流和批處理查詢。將值設置在管道隻有當你處理需要控製整個管道更新圖。
你設置pipelines.trigger.interval
在桌子上使用spark_conf
在Python中,或集
在SQL:
@dlt。表(spark_conf={“pipelines.trigger.interval”:“10秒”})def<函數- - - - - -的名字>():返回(<查詢>)
集管道。觸發。時間間隔=“10秒”;創建或刷新生活表TABLE_NAME作為選擇…
設置pipelines.trigger.interval
在一個管道,將其添加到配置
對象在管道設置:
{“配置”:{“pipelines.trigger.interval”:“10秒”}}