本文為您介紹如何通過資料品質實現表資料監控。
前提條件
已通過Data Integration將儲存於RDS MySQL的使用者基本資料(ods_user_info_d)同步至MaxCompute的ods_user_info_d表。
已通過Data Integration將儲存於OSS的網站訪問日誌(user_log.txt)同步至MaxCompute的ods_raw_log_d表。
已通過資料開發DataStudio將資料加工為使用者畫像基本資料。
背景資訊
資料品質是支援多種異構資料來源的品質校正、通知、管理服務的一站式平台。資料品質以資料集(DataSet)為監控對象,目前支援MaxCompute資料表監控。當離線MaxCompute資料發生變化時,資料品質會對資料進行校正,並阻塞生產鏈路,以避免問題資料汙染擴散。同時,資料品質提供歷史校正結果的管理,以便您對資料品質分析和定級。
本案例通過DataWorks資料品質功能及時感知使用者Portrait analysis案例源端資料的變更與ETL(Extract Transform Load)過程中產生的髒資料。基於使用者Portrait analysis加工流程,匯總品質監控規則如下:
表名 | 需求明細 |
ods_raw_log_d | 對每日同步的原始日誌資料進行表資料非0監控,避免後續無效加工,及時止損。 |
ods_user_info_d | 對每日同步的使用者資訊資料進行錶行數非0校正(強規則)和業務主鍵唯一性校正(弱規則),避免後續無效加工,及時止損。 |
dwd_log_info_di | 不單獨進行監控。 |
dws_user_info_all_di | 不單獨進行監控。 |
ads_user_info_1d | 對每日使用者資料進行錶行數波動監測,以此觀察每日UV的波動,以便及時瞭解應用動態。 |
進入規則配置頁面
進入資料品質頁面。
登入DataWorks控制台,切換至目標地區後,單擊左側導覽列的 ,在下拉框中選擇對應工作空間後單擊進入資料品質。
進入表規則配置頁面。
在資料品質左側導覽列,單擊
,根據如下參數定位目標表。資料來源:MaxCompute
資料庫:您當前的生產專案(workshop2024_01)。
表:本案例需要分別為
ods_raw_log_d
、ods_user_info_d
、ads_user_info_1d
表設定監控規則。
在搜尋結果中找到目標表,單擊操作列的監控配置,進入該表的品質詳情頁面。具體配置參考下文操作。
配置品質監控規則
配置ods_raw_log_d品質監控規則
表ods_raw_log_d
用於接收從OSS同步過來的使用者網站訪問記錄,基於該表的業務屬性,我們為其配置錶行數非0校正,並通過關聯品質監控的方式觸發該表資料品質規則校正。
1、配置品質監控
品質監控通過監控目標表的指定資料範圍(分區)檢驗資料是否符合預期。
此步驟中,您需要配置品質監控的資料範圍為dt=$[yyyymmdd-1],品質監控運行時匹配此分區的資料,從而判斷其是否符合預期。
即在ods_raw_log_d
表的調度任務每次運行時觸發品質監控,使用品質監控關聯的品質規則校正對應資料範圍內的資料,判斷其是否符合資料品質校正規則。
具體步驟如下:
在品質監控頁簽,單擊建立品質監控。
配置品質監控相關資訊。
關鍵參數:
參數
配置樣本
資料範圍
dt=$[yyyymmdd-1]
觸發方式
生產調度觸發,節點選擇同步資料中建立的
ods_raw_log_d
節點。選擇品質規則
暫不配置,在後文中配置。
說明配置資料品質監控的更多資訊,請參見配置規則:按表(單表)。
本案例希望監控每日調度任務產出的表資料是否符合預期,由於當前表每日產出業務時間是昨天的資料,所以此處計算結果顯示調度時間為今天,計算結果為昨天時,符合預期。
2、配置監控規則
表ods_raw_log_d
用於接收從OSS同步過來的網站訪問記錄,為使用者Portrait analysis情境的源頭表,所以為了避免後續無效加工及品質問題,我們針對該表配置錶行數大於0的強監控規則,來判斷同步任務是否往該表的分區寫入資料。
當監控到ods_raw_log_d
表對應分區行數為0,將觸發警示,ods_raw_log_d節點失敗退出,並阻塞ods_raw_log_d節點的下遊任務執行。
具體步驟如下:
在規則管理頁簽,選中品質監控視角下已建立的品質監控(本樣本為
raw_log_number_of_table_rows_not_0
),然後單擊建立規則,進入建立規則頁面。在系統模板中,找到錶行數大於0規則,單擊使用,然後修改重要程度為強規則。
說明本案例規則定義為強,即當監控到
ods_raw_log_d
錶行數為0時,觸發警示,並且阻塞下遊任務執行。單擊確定。
說明更多配置項介紹請參見配置規則:按表(單表)。
3、測試回合品質監控
測試回合可以驗證品質監控中的校正規則配置是否合理性,為確保品質規則的配置無誤且符合預期,您可在規則建立完成後,測試回合品質監控。
單擊測試回合,進入測試回合對話方塊。
在測試回合對話方塊中,選擇調度時間,單擊測試回合。
測試回合完成後,可根據介面指引,單擊查看詳情,查看測試結果。
4、訂閱品質監控
資料品質為您提供監控警示功能,通過訂閱品質監控,及時接收品質校正異常並處理,保障資料安全、穩定、按時產出。
訂閱管理設定完成後,在左側導覽列,單擊
,選中我的訂閱,查看和修改已訂閱的任務。配置ods_user_info_d品質監控規則
表ods_user_info_d
用於接收從RDS MySQL同步過來的使用者基本資料,基於該表的業務屬性,我們為其配置錶行數非0和業務主鍵唯一性校正,並通過關聯品質監控的方式觸發該表資料品質規則校正。
1、配置品質監控
品質監控通過監控目標表的指定資料範圍(分區)檢驗資料是否符合預期。
此步驟中,您需要配置品質監控的資料範圍為dt=$[yyyymmdd-1],品質監控運行時匹配此分區的資料,從而判斷其是否符合預期。
即在ods_user_info_d
表的調度任務每次運行時觸發品質監控,使用品質監控關聯的品質規則校正對應資料範圍內的資料,判斷其是否符合資料品質校正規則。
具體步驟如下:
在品質監控頁簽,單擊建立品質監控。
配置品質監控相關資訊。
關鍵參數:
參數
配置樣本
資料範圍
dt=$[yyyymmdd-1]
觸發方式
生產調度觸發,節點選擇同步資料中建立的
ods_user_info_d
節點。選擇品質規則
暫不配置,在後文中配置。
說明配置資料品質監控的更多資訊,請參見配置規則:按表(單表)。
2、配置監控規則
表ods_user_info_d
用於接收從RDS MySQL同步過來的使用者基本資料,為使用者Portrait analysis情境的源頭表,所以為了避免後續無效加工及品質問題,我們針對該表配置錶行數大於0的強監控規則,來判斷同步是否往該表該分區寫入資料。
規則生效時,當監控到ods_user_info_d
表對應分區行數為0,將觸發警示,ods_user_info_d節點失敗退出,並且阻塞ods_user_info_d節點下遊任務執行。
具體步驟如下:
在規則管理頁簽,選中品質監控視角下已建立的品質監控(本樣本為
user_info_quality_control
),然後單擊建立規則,進入建立規則頁面。在系統模板中,找到錶行數大於0規則,單擊使用,然後修改重要程度為強規則。
說明本案例規則定義為強,即當監控到
ods_user_info_d
錶行數為0時,觸發警示,並且阻塞下遊任務執行。在系統模板中,找到唯一值個數,固定值規則,單擊使用,然後修改規則範圍、監控閾值和重要程度如下圖所示。
單擊確定。
說明更多配置項介紹請參見配置規則:按表(單表)。
3、其他
測試回合品質監控及訂閱品質監控操作與配置ods_raw_log_d品質監控規則一致。
配置ads_user_info_1d品質監控規則
表ads_user_info_1d
為最終結果表。根據該表業務屬性,我們進行錶行數波動監測,以及針對業務主鍵唯一值校正,以此觀察每日UV的波動,及時瞭解線上流量波動,並通過關聯品質監控的方式觸發該表資料品質規則校正。
1、配置分區運算式
品質監控通過監控目標表的指定資料範圍(分區)檢驗資料是否符合預期。
此步驟中,您需要配置品質監控的資料範圍為dt=$[yyyymmdd-1],品質監控運行時匹配此分區的資料,從而判斷其是否符合預期。
即在ads_user_info_1d
表的調度任務每次運行時觸發品質監控,使用品質監控關聯的品質規則校正對應資料範圍內的資料,判斷其是否符合資料品質校正規則。
具體步驟如下:
在品質監控頁簽,單擊建立品質監控。
配置品質監控相關資訊。
關鍵參數:
參數
配置樣本
資料範圍
dt=$[yyyymmdd-1]
觸發方式
生產調度觸發,節點選擇同步資料中建立的
ads_user_info_1d
節點。選擇品質規則
暫不配置,在後文中配置。
說明配置資料品質監控的更多資訊,請參見配置規則:按表(單表)。
2、建立監控規則
表ads_user_info_1d
用於使用者Portrait analysis,為檢測每日UV波動,我們對摘要資料進行錶行數波動監測及主鍵進行唯一值校正,以此觀察每日UV的波動,及時瞭解線上流量波動。
規則生效時,當監控到ads_user_info_1d
表對應主鍵不唯一時觸發警示,當錶行數7天波動率大於10%且小於50%時,觸發橙色異常警示;當錶行數7天波動率大於50%時觸發紅色異常警示。
品質監控中配置了處置策略:
強規則·紅色異常
,處理策略為阻塞。表示當檢測到資料品質問題後,將識別觸發該表品質檢測的生產調度節點,並將該節點設定為失敗,下遊節點將不執行,以此阻塞生產鏈路,以避免問題資料汙染擴散。其他異常,處理策略為警示,當檢測到資料品質問題後,將對該品質監控任務的警示訂閱渠道發送警示資訊。
因此,在配置品質規則時:
如果設定強規則,紅色異常警示會阻塞下遊任務節點,其他異常警示不阻塞。
如果設定弱規則,紅色異常警示不阻塞下遊任務節點,其他異常警示不阻塞。
具體步驟如下:
在規則管理頁簽,選中品質監控視角下已建立的品質監控(本樣本為
ads_user_info_quality_control
),然後單擊建立規則,進入建立規則頁面。在系統模板中,找到錶行數,7天波動率規則,單擊使用,然後修改監控範圍、和重要程度如下圖所示。
在系統模板中,找到錶行數大於0規則,單擊使用,然後修改重要程度為強規則。
單擊確定。
說明更多配置項介紹請參見配置規則:按表(單表)。
3、其他
測試回合品質監控及訂閱品質監控操作與配置ods_raw_log_d品質監控規則一致。
後續操作
資料加工完成後,您可以通過資料分析模組對資料進行可視化展示,詳情請參見資料視覺效果展現。