周期任務補資料功能用於對周期任務在指定的歷史業務日期內進行資料回刷。周期任務開發完成並提交發布後,任務會按照調度配置定時運行,如果您希望在指定時間段運行周期任務或回刷歷史一段時間區間的資料,可以使用補資料功能。節點使用的調度參數會根據補資料選擇的業務時間自動替換成對應的值。本文為您介紹如何對周期任務進行補資料。
應用情境
補資料功能多用於以下應用情境:
新開發的周期任務,只能從第二天開始調度。如果您需要馬上查看歷史分區資料,可以執行補資料操作。
上遊依賴的任務重跑或補資料導致歷史分區資料重新整理。您可以通過補資料功能,回刷下遊任務的歷史分區資料。
業務的歷史資料存在遺漏,需要定時回刷歷史資料。
補資料模式
當前,營運中心補資料功能支援對當前任務和對當前任務及下遊任務進行補資料,詳細說明如下:
補當前任務:即當前任務,用於對當前任務進行補資料操作。適用於以下情境:
對當前節點進行資料回刷,而無需更新下遊節點資料。
當前任務計算邏輯變更,您可以先對當前任務進行補資料驗證計算邏輯正確性,再對下遊任務進行資料回刷。
補當前及上下遊任務:即當前任務及上下遊任務,適用於對全鏈路資料進行重新整理的情境。
補資料操作入口
在Dataphin首頁的頂部功能表列中,選擇研發 > 任務營運。
在左側導覽列中選擇任務營運 > 周期任務。
在頂部功能表列中選擇生產或開發環境。
在整合和計算任務或建模任務頁簽下,單擊目標任務操作列的
表徵圖,選擇補資料,再選擇補當前任務或補當前及上下遊任務。說明補資料操作也支援在周期任務的DAG圖中進行補資料。更多資訊,請參見周期任務DAG圖。
對當前任務補資料
在補資料 - 補當前任務對話方塊,配置補資料任務。
步驟一:補資料配置
參數
描述
基本資料
補資料執行個體名稱
系統自動產生,命名格式為節點名稱_運行日期_執行個體化編號,您也可以進行手動更改。
補資料已耗用時間
補資料執行個體整體開始調度的時間,可選擇立即運行或自訂運行。
立即運行:完成配置後,立即產生補資料執行個體進行補資料任務。
自訂:自訂指定補資料執行個體已耗用時間點,補資料執行個體將在自訂的時間開始調度。
當系統時區(即使用者中心中的時區)與調度時區不一致時,系統將同時展示系統時區和調度時區。選擇已耗用時間後,系統自動計算出對應的調度時區時間。
說明自訂補資料已耗用時間需晚於目前時間。
完成自訂補資料已耗用時間配置後,業務日期最晚可選擇至自訂日期的當天。
周期性定時執行的補資料任務將在定時已耗用時間的前一天23點產生待產生執行個體。
業務日期
選擇需要進行補資料的業務日期區間(按照所配置的調度時區計算時間),根據任務的調度周期配置業務日期,詳細說明如下:
調度周期為日、周、月的任務可以選擇按區間、按周期和自訂業務日期。各選項適用情境說明如下:
按區間:適用於需要回刷多個連續業務日期的資料。需選擇開始時間和結束時間,時間跨度不可超過1年。
說明如果您只需要對單天進行補資料,則開始時間和結束時間選擇相同日期即可。
按周期:用於需要回刷多個連續業務日期內每周中星期或每月中的日期資料。需先選擇時間範圍,時間跨度不可超過1年。
每周:回刷連續時間內每周所選中的星期。
每月:回刷連續時間內每月所選中的日期。
說明月末指每月的最後1天。
自訂:適用於需要回刷多個不連續業務日期的資料。您可以手動輸入
1900-01-01 ~ 至今範圍內的業務日期,業務日期的格式為YYYY-MM-DD。如果需要回刷多個業務日期的資料,則多個業務日期使用斷行符號分割。
調度周期為小時、分鐘的任務需要您先選擇業務日期,再選擇精確到分鐘的補資料時間區間,定義了補資料的業務日期及時間區間。
選擇欄位
如果您為建模任務補資料,則需要選擇補資料的欄位。詳細說明如下:
如果主鍵或來源表變更,為了保障資料的一致性和正確性,僅支援選擇全表補資料模式。
如果主鍵或來源表未發生變更,您可以選擇全表補資料模式或指定欄位補資料模式:
全表:適用於資料表的所有欄位都需要補資料的情境。
說明不包括註冊上掛欄位。
指定欄位:適用於需要自訂補資料的欄位的情境。選中補資料欄位後,與所選欄位在同一物化節點內的欄位及由於系統實現必選的欄位將會自動連帶選中。規則如下:
與所選欄位在同一物化節點內的欄位。
由於系統實現必選的欄位,如修改指標調度周期模型重新整理但物化未改變的情況等。
任務已耗用時間
單個任務執行個體的已耗用時間,可選擇忽略執行個體定時已耗用時間或等待執行個體定時已耗用時間。
忽略執行個體定時已耗用時間:預設選中,執行個體的所有運行條件不判斷定時已耗用時間。
等待執行個體定時已耗用時間:執行個體的所有運行條件需判斷定時已耗用時間是否已滿足。
其他配置
單一實例補資料
僅支援事實邏輯表進行選擇。
可通過一個補資料執行個體同時覆蓋更新本事件事實邏輯表所有選定日期(區間範圍內)的資料,相比普通多執行個體並發補資料,可以節約計算資源,大幅減少補資料時間。
並發運行組數
並發運行組數用於控制同時有多少個補資料進程在運行。您可以選擇並發啟動並執行組數,系統支援最少並發運行1組,最多並發運行12組。
業務日期的跨度時間小於並發運行組數,則實際並行組數為業務日期天數。
業務日期的跨度時間大於並發運行組數,則可能兼有串列和並行。相同組內的執行個體按業務日期順序運行,不同組之間的執行個體並行運行。例如,業務日期是1月11日~1月13日,並發運行組數為2,11號和12號為一組,13號為一組,11號和13號的執行個體同時開始運行,12號的執行個體則會在11號的執行個體運行完成後開始運行。
說明所選節點中存在跨周期依賴時不支援並發運行。
補資料順序
可選擇根據業務時間正序或倒序進行補資料。
說明所選節點中存在跨周期依賴、自依賴時不支援業務日期倒序補資料。
暫停調度任務對應執行個體
配置暫停調度的任務產生的補資料執行個體的運行狀態:
暫停運行(可能會阻斷補資料進程):即暫停調度的任務產生的補資料執行個體均暫停運行,會阻斷下遊執行個體正常運行。
說明適用於當前任務及其下遊任務均不需要啟動並執行情境。
空跑:若選擇空跑,則選中的暫停任務產生的補資料執行個體將直接空跑成功。
說明適用於當前任務無需運行,但下遊任務需要按照調度配置正常啟動並執行情境。
正常運行:暫停狀態的任務產生的補資料執行個體均正常運行。
說明適用於當前節點被設定為暫停調度,在選中的補資料業務日期需要正常啟動並執行情境。
空跑調度任務對應執行個體
配置空跑調度的任務產生的補資料執行個體的運行狀態:
空跑:若選擇空跑,則選中的空跑調度任務產生的補資料執行個體將直接空跑成功。
正常運行:空跑狀態的任務產生的補資料執行個體均正常運行。
指定臨時調度資源群組
如果您開啟了自訂資源群組功能,可指定本次補資料操作臨時使用的資源群組,以滿足臨時性的資源消耗需求。詳情請參見資源群組概述。 如果未指定臨時調度資源群組,將使用每個任務配置的任務調度資源群組進行調度運行。
說明配置的資源群組僅支援選擇應用情境包含批量營運操作的資源群組。
補當前任務(建模任務)不支援該配置。
步驟二:選擇推薦欄位
建模任務的指定欄位存在可連帶欄位時,您可以在選擇推薦欄位步驟中選擇可選連帶補資料欄位一起補資料。推薦連帶原因包括計算邏輯有變更、計算邏輯有變更的主表主鍵、主表主鍵有變更的子表主鍵。
計算邏輯有變更的欄位:欄位目前的計算邏輯與所選的業務日期內的歷史分區的計算邏輯不同,即欄位的計算邏輯存在變更,此類欄位可以一起補資料。
計算邏輯有變更的主表主鍵:所選業務日期範圍內主子維度資料表中主表的主鍵計算邏輯有過變更,主表的主鍵欄位可以一起補資料。
主表主鍵有變更的子表主鍵:所選業務日期範圍內主子維度資料表中主表的主鍵計算邏輯有過變更(影響子表產出),子表的主鍵欄位可以一起補資料。
單擊確定,完成對當前任務補資料操作。
對當前及上下遊任務補資料
在補資料 - 補當前及上下遊任務對話方塊,配置補資料任務。
步驟一:配置基本資料
參數
描述
補資料執行個體名稱
系統自動產生,命名格式為節點名稱_運行日期_執行個體化編號,您也可以進行手動更改。
補資料已耗用時間
補資料執行個體整體開始調度的時間,可選擇立即運行或自訂運行。
立即運行:完成配置後,立即產生補資料執行個體進行補資料任務。
自訂:自訂指定補資料執行個體已耗用時間點,補資料執行個體將在自訂的時間開始調度。
當系統時區(即使用者中心中的時區)與調度時區不一致時,系統將同時展示系統時區和調度時區。選擇已耗用時間後,系統自動計算出對應的調度時區時間。
說明自訂補資料已耗用時間需晚於目前時間。
完成自訂補資料已耗用時間配置後,業務日期最晚可選擇至自訂日期的當天。
周期性定時執行的補資料任務將在定時已耗用時間的前一天23點產生待產生執行個體。
業務日期
選擇需要進行補資料的業務日期區間(按照所配置的調度時區計算時間),根據任務的調度周期配置業務日期,詳細說明如下:
調度周期為日、周、月的任務可以選擇按區間、按周期和自訂業務日期。各選項適用情境說明如下:
按區間:適用於需要回刷多個連續業務日期的資料。
說明如果您只需要對單天進行補資料,則開始時間和結束時間選擇相同日期即可。
按周期:用於需要回刷多個連續業務日期內每周中星期或每月中的日期資料。
每周:回刷連續時間內每周所選中的星期。
每月:回刷連續時間內每月所選中的日期。
說明月末指每月的最後1天。
自訂:適用於需要回刷多個不連續業務日期的資料。您可以手動輸入業務日期,業務日期的格式為
YYYY-MM-DD。如果需要回刷多個業務日期的資料,則多個業務日期使用斷行符號分割。
調度周期為小時、分鐘的任務需要您先選擇業務日期,再選擇精確到分鐘的補資料時間區間,定義了補資料的業務日期及時間區間。
選擇欄位
如果您為建模任務補資料,則需要選擇補資料的欄位。詳細說明如下:
如果主鍵或來源表變更,為了保障資料一致性和正確性,僅支援選擇全表補資料模式。
如果主鍵或來源表未發生變更,您可以選擇全表補資料模式或指定欄位補資料模式:
全表:適用於資料表的所有欄位都需要補資料的情境。
指定欄位:適用於需要自訂補資料的欄位的情境。選中補資料欄位後,與所選欄位在同一物化節點內的欄位及由於系統實現必選的欄位將會自動連帶選中。規則如下:
與所選欄位在同一物化節點內的欄位。
由於系統實現必選的欄位,如修改指標調度周期模型重新整理但物化未改變的情況等。
任務已耗用時間
單個任務執行個體的已耗用時間,可選擇忽略執行個體定時已耗用時間或等待執行個體定時已耗用時間。
忽略執行個體定時已耗用時間:預設選中,執行個體的所有運行條件不判斷定時已耗用時間。
等待執行個體定時已耗用時間:執行個體的所有運行條件需判斷定時已耗用時間是否已滿足。
步驟二:選擇推薦欄位
建模任務的指定欄位存在可連帶欄位時,您可以在選擇推薦欄位步驟中選擇可選連帶補資料欄位一起補資料。推薦連帶原因包括計算邏輯有變更、計算邏輯有變更的主表主鍵、主表主鍵有變更的子表主鍵。
計算邏輯有變更的欄位:欄位目前的計算邏輯與所選的業務日期內的歷史分區的計算邏輯不同,即欄位的計算邏輯存在變更,此類欄位可以一起補資料。
計算邏輯有變更的主表主鍵:所選業務日期範圍內主子維度資料表中主表的主鍵計算邏輯有過變更,主表的主鍵欄位可以一起補資料。
主表主鍵有變更的子表主鍵:所選業務日期範圍內主子維度資料表中主表的主鍵計算邏輯有過變更(影響子表產出),子表的主鍵欄位可以一起補資料。
補資料配置
補資料範圍:支援通過列表模式和海量模式選擇需要補資料的上下遊任務。
重要跨節點參數相關說明:選中節點時,建議同時選中該節點引用了跨節點參數的所有上遊節點。下遊(Down)節點引用了上遊(Up)節點的跨節點輸出參數,對下遊(Down)節點做補資料操作時,如果未選中到上遊(Up)同一個補資料執行個體,下遊(Down)節點中跨節點輸入參數將從上遊(Up)的最近N天運行記錄中取值,若不存在運行記錄或超出N天,則取預設值。最近N天(N)預設為15天,可能存在更改,建議同時選中上遊(Up)和下遊(Down)。更多資訊,請參見參數配置及使用節點參數。
列表模式
適用於所有層級的上下遊任務,且任務依賴可快捷選擇1~10層以及全部層級。列表內最多可展示2000個節點,如超出上限請選擇海量模式。同時單擊列表
表徵圖支援根據節點類型、所屬專案、營運負責人篩選節點。說明若起點任務是邏輯表,下遊任務展示範圍取決於選中需要補資料的邏輯表欄位。
上下遊任務展示範圍包含當前表所選欄位的所有上下遊,包括連帶必選欄位,不包括連帶推薦欄位。
過濾暫停任務及其下遊:
預設選中,選中後,列表不展示指定層級和篩選條件下,調度方式為暫停調度的節點及其全部下遊,同時取消已選中的暫停任務。
對於邏輯表,只要包含了暫停欄位即被過濾;依賴下遊列表中被標識了暫停邏輯表包含的所有欄位的下遊任務也均被過濾。
說明下遊邏輯表欄位只能整體選中補資料,不能只過濾掉暫停欄位。
海量模式
如果列表模式無法滿足您對下遊節點選擇的要求(例如節點數量過多,或者需要批量選擇某些指定節點),您可以選擇海量模式,海量模式將按照篩選條件從當前節點向下尋找選中範圍內的任務,並依據依賴關係進行編排。適用於需要全域補資料的情境。同時海量模式支援以下篩選參數:
覆蓋範圍:支援通過指定專案、指定節點輸出名稱、當前節點的全部下遊、指定一級子節點及其全部下遊、指定終點、指定節點名稱、指定節點ID、指定起點、當前節點全部上下遊、當前節點全部上遊來指定範圍。
指定專案:通過指定專案來指定補資料範圍。
指定節點輸出名稱:通過填寫節點輸出名稱來指定補資料範圍。輸入多個節點時,使用斷行符號換行,最多輸入1000個。
當前節點的全部下遊/上遊:補當前節點的全部上遊/下遊節點資料。
指定一級子節點及全部下遊:補當前節點的若干個一級子節點及其全部下遊節點。
指定終點:將補起點到終點鏈路上所有的節點資料。起點預設為當前節點,不支援修改。終點支援選擇多個終點節點。
指定起點:將補起點到終點鏈路上所有的節點資料。終點預設為當前節點,不支援修改。起點支援選擇多個起點節點。
指定節點名稱/指定節點ID:補當前節點下遊指定節點名稱/指定節點ID的資料。多個節點以斷行符號換行分隔,最多輸入5000個。一個節點名稱存在多個任務時,您可以單擊提示資訊的選擇補資料節點,在存在節點名稱重複的節點對話方塊中,選擇對應節點,進行二次確認需要補資料的節點。
說明如果所選的終點節點非起點的下遊節點,則只對起點和終點兩個孤立節點進行補資料。
終點可以通過搜尋id/節點名稱進行搜尋,搜尋範圍為當前租戶內的所有節點。
邏輯表任務終點只支援選擇到全表(全部欄位)。
當前節點全部上下遊:補當前節點的全部上下遊節點資料。
選中範圍內排除:指定需要在覆蓋範圍內排除的節點輸出名稱或節點名稱。預設選中排除暫停節點及其下遊,同列表模式中過濾暫停節點及其下遊。
說明在選中範圍內排除某些任務後,補資料執行個體的DAG圖上可能產生孤立的任務節點。
適用於只對下遊某一個任務節點進行補資料的情境。
已選節點列表:海量模式下。支援查看已選的節點列表以確認補資料節點或單擊匯出已選節點列表匯出為本地檔案,檔案格式為
csv。
其他配置
參數
描述
並發運行組數
並發運行組數用於控制同時有多少個補資料進程在運行。您可以選擇並發啟動並執行組數,系統支援最少並發運行1組,最多並發運行12組。
業務日期的跨度時間小於並發運行組數,則實際並行組數為業務日期天數。
業務日期的跨度時間大於並發運行組數,則可能兼有串列和並行。相同組內的執行個體按業務日期順序運行,不同組之間的執行個體並行運行。例如,業務日期是1月11日~1月13日,並發運行組數為2,11號和12號為一組,13號為一組,11號和13號的執行個體同時開始運行,12號的執行個體則會在11號的執行個體運行完成後再開始運行。
說明所選節點中存在跨周期依賴時不支援並發運行。
補資料順序
可選擇根據業務時間正序或倒序進行補資料。
說明所選節點中存在跨周期依賴時不支援按業務日期倒序補數。
本節點是否空跑
選擇本任務是否需要空跑:
是:當前任務對應的補資料執行個體空跑運行,即一調度到該任務便直接返回成功,沒有真正的執行該任務。
說明適用於當前節點不需要補資料,但是需要以當前節點為起點選中下遊進行補資料的情境。
否:本節點正常運行。
暫停調度任務對應執行個體
配置暫停調度的任務產生的補資料執行個體的運行狀態:
暫停運行(可能會阻斷補資料進程):即暫停調度的任務產生的補資料執行個體均暫停運行,會阻斷下遊執行個體正常運行。
說明適用於當前任務及其下遊任務均不需要啟動並執行情境。
空跑:若選擇空跑,則選中的暫停任務產生的補資料執行個體將直接空跑成功。
說明適用於當前任務無需運行,但下遊任務需要按照調度配置正常啟動並執行情境。
正常運行:暫停狀態的任務產生的補資料執行個體均正常運行。
說明適用於當前節點被設定為暫停調度,在選中的補資料業務日期需要正常啟動並執行情境。
空跑調度任務對應執行個體
配置空跑調度的任務產生的補資料執行個體的運行狀態:
空跑:若選擇空跑,則選中的空跑調度任務產生的補資料執行個體將直接空跑成功。
正常運行:空跑狀態的任務產生的補資料執行個體均正常運行。
小時區間影響範圍
如果是小時、分鐘任務,則還需要配置生效範圍:
不影響日/周/月調度任務(選中即運行):即下遊任務不受小時區間選擇的影響,全部運行。
日/周/月調度任務只有定時已耗用時間在選中小時區間內才會運行:即下遊任務受小時區間影響,只有定時已耗用時間在選中小時區間內才運行。
指定臨時調度資源群組
如果您開啟了自訂資源群組功能,可指定本次補資料操作臨時使用的資源群組,以滿足臨時性的資源消耗需求。詳情請參見資源群組概述。 如果未指定臨時調度資源群組,將使用每個任務配置的任務調度資源群組進行調度運行。
說明配置的資源群組僅支援選擇應用情境包含批量營運操作的資源群組。
單擊確定,完成對當前及下遊任務補資料操作。
後續步驟
補資料操作提交後,您可以對補資料執行個體進行營運管理,例如查看作業記錄、查看節點代碼、終止執行個體運行等操作。更多資訊,請參見補資料執行個體營運概述。