全部產品
Search
文件中心

DataWorks:配置資料品質監控

更新時間:Jun 26, 2024

本文為您介紹如何通過資料品質實現表資料監控。

前提條件

在進行本實驗前,請確保已完成同步資料加工資料

  • 已通過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的波動,以便及時瞭解應用動態。

進入規則配置頁面

  1. 進入資料品質頁面。

    登入DataWorks控制台,切換至目標地區後,單擊左側導覽列的資料建模與開發 > 資料品質,在下拉框中選擇對應工作空間後單擊進入資料品質

  2. 進入表規則配置頁面。

    在資料品質左側導覽列,單擊規則配置 > 按表配置,根據如下參數定位目標表。

    • 資料來源:MaxCompute

    • 資料庫:您當前的生產專案(workshop2024_01)。

    • 表:本案例需要分別為ods_raw_log_dods_user_info_dads_user_info_1d表設定監控規則。

  3. 在搜尋結果中找到目標表,單擊操作列的監控配置,進入該表的品質詳情頁面。具體配置參考下文操作。

配置品質監控規則

配置ods_raw_log_d品質監控規則

ods_raw_log_d用於接收從OSS同步過來的使用者網站訪問記錄,基於該表的業務屬性,我們為其配置錶行數非0校正,並通過關聯品質監控的方式觸發該表資料品質規則校正。

1、配置品質監控

品質監控通過監控目標表的指定資料範圍(分區)檢驗資料是否符合預期。

此步驟中,您需要配置品質監控的資料範圍dt=$[yyyymmdd-1],品質監控運行時匹配此分區的資料,從而判斷其是否符合預期。

即在ods_raw_log_d表的調度任務每次運行時觸發品質監控,使用品質監控關聯的品質規則校正對應資料範圍內的資料,判斷其是否符合資料品質校正規則。

具體步驟如下:

  1. 品質監控頁簽,單擊建立品質監控

  2. 配置品質監控相關資訊。

    image

    關鍵參數:

    參數

    配置樣本

    資料範圍

    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節點的下遊任務執行。

具體步驟如下:

  1. 規則管理頁簽,選中品質監控視角下已建立的品質監控(本樣本為raw_log_number_of_table_rows_not_0),然後單擊建立規則,進入建立規則頁面。

    image

  2. 系統模板中,找到錶行數大於0規則,單擊使用,然後修改重要程度強規則

    說明

    本案例規則定義為,即當監控到ods_raw_log_d錶行數為0時,觸發警示,並且阻塞下遊任務執行。

    image

  3. 單擊確定

    說明

    更多配置項介紹請參見配置規則:按表(單表)

3、測試回合品質監控

測試回合可以驗證品質監控中的校正規則配置是否合理性,為確保品質規則的配置無誤且符合預期,您可在規則建立完成後,測試回合品質監控。

image

  1. 單擊測試回合,進入測試回合對話方塊。

  2. 測試回合對話方塊中,選擇調度時間,單擊測試回合

  3. 測試回合完成後,可根據介面指引,單擊查看詳情,查看測試結果。

    image

4、訂閱品質監控

資料品質為您提供監控警示功能,通過訂閱品質監控,及時接收品質校正異常並處理,保障資料安全、穩定、按時產出。

image

訂閱管理設定完成後,在左側導覽列,單擊品質營運 > 品質監控,選中我的訂閱,查看和修改已訂閱的任務。

配置ods_user_info_d品質監控規則

ods_user_info_d用於接收從RDS MySQL同步過來的使用者基本資料,基於該表的業務屬性,我們為其配置錶行數非0業務主鍵唯一性校正,並通過關聯品質監控的方式觸發該表資料品質規則校正。

1、配置品質監控

品質監控通過監控目標表的指定資料範圍(分區)檢驗資料是否符合預期。

此步驟中,您需要配置品質監控的資料範圍dt=$[yyyymmdd-1],品質監控運行時匹配此分區的資料,從而判斷其是否符合預期。

即在ods_user_info_d表的調度任務每次運行時觸發品質監控,使用品質監控關聯的品質規則校正對應資料範圍內的資料,判斷其是否符合資料品質校正規則。

具體步驟如下:

  1. 品質監控頁簽,單擊建立品質監控

  2. 配置品質監控相關資訊。

    image

    關鍵參數:

    參數

    配置樣本

    資料範圍

    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節點下遊任務執行。

具體步驟如下:

  1. 規則管理頁簽,選中品質監控視角下已建立的品質監控(本樣本為user_info_quality_control),然後單擊建立規則,進入建立規則頁面。

    image

  2. 系統模板中,找到錶行數大於0規則,單擊使用,然後修改重要程度強規則

    說明

    本案例規則定義為,即當監控到ods_user_info_d錶行數為0時,觸發警示,並且阻塞下遊任務執行。

    image

  3. 系統模板中,找到唯一值個數,固定值規則,單擊使用,然後修改規則範圍監控閾值重要程度如下圖所示

    image

  4. 單擊確定

    說明

    更多配置項介紹請參見配置規則:按表(單表)

3、其他

測試回合品質監控訂閱品質監控操作與配置ods_raw_log_d品質監控規則一致。

配置ads_user_info_1d品質監控規則

ads_user_info_1d為最終結果表。根據該表業務屬性,我們進行錶行數波動監測,以及針對業務主鍵唯一值校正,以此觀察每日UV的波動,及時瞭解線上流量波動,並通過關聯品質監控的方式觸發該表資料品質規則校正。

1、配置分區運算式

品質監控通過監控目標表的指定資料範圍(分區)檢驗資料是否符合預期。

此步驟中,您需要配置品質監控的資料範圍dt=$[yyyymmdd-1],品質監控運行時匹配此分區的資料,從而判斷其是否符合預期。

即在ads_user_info_1d表的調度任務每次運行時觸發品質監控,使用品質監控關聯的品質規則校正對應資料範圍內的資料,判斷其是否符合資料品質校正規則。

具體步驟如下:

  1. 品質監控頁簽,單擊建立品質監控

  2. 配置品質監控相關資訊。

    image

    關鍵參數:

    參數

    配置樣本

    資料範圍

    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%時觸發紅色異常警示。

說明

品質監控中配置了處置策略

  • 強規則·紅色異常,處理策略為阻塞。表示當檢測到資料品質問題後,將識別觸發該表品質檢測的生產調度節點,並將該節點設定為失敗,下遊節點將不執行,以此阻塞生產鏈路,以避免問題資料汙染擴散。

  • 其他異常,處理策略為警示,當檢測到資料品質問題後,將對該品質監控任務的警示訂閱渠道發送警示資訊。

因此,在配置品質規則時:

  • 如果設定強規則,紅色異常警示會阻塞下遊任務節點,其他異常警示不阻塞。

  • 如果設定弱規則,紅色異常警示不阻塞下遊任務節點,其他異常警示不阻塞。

具體步驟如下:

  1. 規則管理頁簽,選中品質監控視角下已建立的品質監控(本樣本為ads_user_info_quality_control),然後單擊建立規則,進入建立規則頁面。

    image

  2. 系統模板中,找到錶行數,7天波動率規則,單擊使用,然後修改監控範圍、和重要程度如下圖所示

    image

  3. 系統模板中,找到錶行數大於0規則,單擊使用,然後修改重要程度強規則

    image

  4. 單擊確定

    說明

    更多配置項介紹請參見配置規則:按表(單表)

3、其他

測試回合品質監控訂閱品質監控操作與配置ods_raw_log_d品質監控規則一致。

後續操作

資料加工完成後,您可以通過資料分析模組對資料進行可視化展示,詳情請參見資料視覺效果展現