數據質量為您提供多種內置監控模板。本文為您介紹數據質量的校檢邏輯及內置模板規則。
計算說明
計算波動率:您可以根據波動率計算公式(波動率=(樣本-基準值)/基準值
)計算結果。
樣本
當天采集的具體的樣本的值。例如對于SQL任務表行數,1天波動檢測,則樣本是當天分區的表行數。
基準值
歷史樣本的對比值:
如果規則是SQL任務表行數,相比7天前的波動率,則基準值是7天前那一天分區產生的表行數。即今天的采樣結果與7天前那一天分區的結果比較波動率。
如果規則是SQL任務表行數的7天平均值波動檢測,則基準值是前7天的表行數的平均值。即(7天內每天表行數之和)/7。
校檢邏輯
數據質量支持與固定值比較、波動值比較和動態閾值三種校檢方式。
校檢方式 | 校檢邏輯 |
與固定值比較 |
|
波動值比較 | 波動率支持比較上升、下降、絕對值三種類型,以波動率絕對值為例:
|
動態閾值 | 您無需手動設置閾值,系統會自動根據算法模型實時檢測指標的正確性。如果超出合理的波動范圍,便進行報警。 |
內置模板規則說明
您可以通過內置規則模板快速為單表或一批表批量創建數據質量規則。詳情請參見:配置規則:按表(單表)、配置規則:按模板(批量)。
模板分類 | 模板名稱 | 描述 |
表行數 | 表行數,固定值 | 表行數。 |
表行數大于0 | 判斷表行數是否大于0。 | |
表行數,1天差值 | 表的行數,相比1天前的差額。 說明 基準值為昨天分區的表行數,比較當天采集的表行數,對比差值。 | |
表行數,上周期差值 | 基準值為上一周期產生的分區的表行數,比較當天采集的表行數,對比差值。 | |
表行數,1,7,30天,本月1號,波動率 | 表行數,與1天前的樣本、7天前的樣本、30天前的樣本和本月1號采集樣本(表行數),進行比較,對比波動率,再與閾值進行比較,只要有一個不符合規則即可觸發報警。 | |
表行數,1,7,30天波動率 | 同1天、1周和1個月前采集的表行數進行比較,對比波動率。 說明 表的行數,分別與昨天的樣本、7天前的樣本和30天前的樣本來進行數據比對,計算波動率,再與閾值進行比較,只要其中有一個波動率超過閾值就會報警。 | |
表行數,1天波動率 | 基準值為昨天的樣本(表行數),比較當天采集的表行數,對比波動率。再與閾值進行比較,只要有一個不符合規則即可觸發報警。 | |
表行數,30天波動率 | 基準值為30天前的樣本(表行數),比較當天采集的表行數,對比波動率,再與閾值進行比較,只要有一個不符合規則即可觸發報警。 | |
表行數,7天波動率 | 基準值為7天前樣本(表行數),比較當天采集的表行數,對比波動率。再與閾值進行比較,只要有一個不符合規則即可觸發報警。 | |
表行數,動態閾值 | 開啟智能動態閾值后,無需手動配置波動閾值或期望值,系統會根據智能算法,自動判斷合理閾值。若發現數據異常,會即時觸發告警或阻塞。 | |
表行數,30天平均值波動率 | 該模板用于監控表行數的波動情況,基準值是最近30天的表行數的平均值。即(30天內每天表行數之和)/30。 | |
表行數,7天平均值波動率 | 該模板用于監控表行數的波動情況,基準值是最近7天的表行數的平均值。即(7天內每天表行數之和)/7。 | |
表行數,上周期波動率 | 基準值為上一周期產生的分區的表行數,比較當天采集的表行數,對比波動率。 | |
表行數,自定義范圍 | 自定義設置表行數的對比方式和比較閾值范圍。 | |
條件匹配率 | 條件匹配占比,自定義范圍 | 自定義設置過濾條件的匹配率的對比方式和比較閾值范圍。 |
表大小 | 表大小,固定值。 | 表的空間大?。ㄗ止潱?。 |
表大小,相比1天前的差值(字節) | 表的空間大小,相較于1天前的差值(字節)。 | |
表大小,上周期差值。 | 相比上一周期表大小的差值(字節)。 | |
表大小,1天波動率 | 該模板用于監控表大小的波動情況,樣本對比值是與昨天的額度樣本進行比較,計算波動率,再與閾值進行比較,只要有一個不符合規則即可觸發報警。 例如,填寫橙色閾值為5%,紅色閾值為10%。當波動率大于5%且小于等于10%時,會進行橙色報警。當波動率大于10%時,會進行紅色報警。 | |
表大小,30天波動率 | 該模板用于監控表大小的波動情況,樣本對比值是與30天前的額度樣本進行比較,計算波動率,再與閾值進行比較,只要有一個不符合規則即可觸發報警。 | |
表大小,7天波動率 | 該模板用于監控表大小的波動情況,樣本對比值是與7天前的額度樣本進行比較,計算波動率,再與閾值進行比較,只要有一個不符合規則即可觸發報警。 | |
表大小,動態閾值 | 開啟智能動態閾值后,無需手動配置波動閾值或期望值,系統會根據智能算法,自動判斷合理閾值。若發現數據異常,會即時觸發告警或阻塞。 | |
空值行數 | 空值個數,固定值 | 取該字段的空值數與固定值進行比較。 說明 是否為空值,是通過轉換為SQL的 |
空值記錄數為0 | 判斷空值記錄數是否為0。 | |
空值行數/總行數 | 空值個數/總行數,固定值 | 空值的個數與行總數的比率與一個固定值進行比較。 說明 該固定值是一個小數。 |
重復值行數 | 重復值個數,固定值 | 總行數減去重復后的個數,即字段重復值的個數。重復值個數與固定值進行比較。 |
字段重復值為0 | 判斷字段重復值是否為0。 | |
多字段唯一值 | 多字段重復值為0 | 判斷多字段重復值是否為0。 |
重復值個數/總行數 | 重復值個數/總行數,固定值 | 重復值個數與總行數的比率與一個固定值進行比較。 |
唯一值數 | 唯一值個數,固定值 | 去重后的count數與一個期望數字進行比較,即固定值校驗。 |
唯一值個數,1、7、30天波動率 | 去重后的count數與1天、1周和1個月前的樣本(字段為一值個數)比較進行比較,即固定值校檢。 | |
唯一值個數,動態閾值 | 開啟智能動態閾值后,無需手動配置波動閾值或期望值,系統會根據智能算法,自動判斷合理閾值。若發現數據異常,會即時觸發告警或阻塞。 | |
唯一值數/總行數 | 唯一值個數/總行數,固定值 | 唯一值個數與總行數的比率與一個固定值進行比較。 |
最小值 | 最小值,1、7、30天波動率 | 取該字段的最小值,同1天、7天和1個月前的樣本(字段平均值)進行比較,計算波動率。再與閾值進行比較,只要有一個不符合規則即可觸發報警。 |
最小值,動態閾值。 | 開啟智能動態閾值后,無需手動配置波動閾值或期望值,系統會根據智能算法,自動判斷合理閾值。若發現數據異常,會即時觸發告警或阻塞。 | |
最小值,1天波動率 | 取該字段的最小值,與前1天進行比較,計算出波動率后,再與閾值進行比較。 | |
最小值,上周期的波動率 | 取該字段的最小值,與上一周期進行比較,計算出波動率后,再與閾值進行比較,只要有一個不符合規則即可觸發報警。 | |
字段最小值,自定義范圍 | 自定義設置字段最小值的對比方式和比較閾值范圍。 | |
最大值 | 最大值,1、7、30天波動率 | 取該字段的最大值,同1天、7天和1個月前的樣本(字段平均值)進行比較,計算波動率。再與閾值進行比較,只要有一個不符合規則即可觸發報警。 |
最大值,動態閾值 | 開啟智能動態閾值后,無需手動配置波動閾值或期望值,系統會根據智能算法,自動判斷合理閾值。若發現數據異常,會即時觸發告警或阻塞。 | |
最大值,1天波動率 | 取該字段的最大值,與前1天進行比較,計算出波動率后,再與閾值進行比較。 | |
最大值,上周期的波動率 | 取該字段的最大值,與上一周期進行比較,計算出波動率后,再與閾值進行比較,只要有一個不符合規則即可觸發報警。 | |
字段最大值,自定義范圍 | 自定義設置字段最大值的對比方式和比較閾值范圍。 | |
平均值 | 平均值,1、7、30天波動率 | 取該字段的平均值,與1天、7天和1個月前的樣本(字段平均值)進行比較,計算波動率。再與閾值進行比較,只要有一個不符合規則即可觸發報警。 說明 該字段的平均值,分別與昨天該字段平均值,7天前該字段平均值,30天前該字段平均值進行比較。 |
平均值動態閾值 | 開啟智能動態閾值后,無需手動配置波動閾值或期望值,系統會根據智能算法,自動判斷合理閾值。若發現數據異常,會即時觸發告警或阻塞。 | |
平均值,1天波動率 | 取該字段的平均值,與前1天進行比較,計算出波動率后,再與閾值進行比較。 | |
字段均值,自定義范圍 | 自定義設置字段平均值的對比方式和比較閾值范圍。 | |
匯總值 | 匯總值,1、7、30天波動率 | 取該字段的sum值,同1天、7天和1個月前的樣本(字段平均值)進行比較,計算波動率。再與閾值進行比較,只要有一個不符合規則即可觸發報警。 |
匯總值,動態閾值 | 開啟智能動態閾值后,無需手動配置波動閾值或期望值,系統會根據智能算法,自動判斷合理閾值。若發現數據異常,會即時觸發告警或阻塞。 | |
匯總值,1天波動率 | 取該字段的sum值,與前1天進行比較,計算出波動率后,再與閾值進行比較。 | |
匯總值,上周期的波動率 | 取該字段的sum值,與上一周期進行比較,計算出波動率后,再與閾值進行比較,只要有一個不符合規則即可觸發報警。 | |
字段匯總值,自定義范圍 | 自定義設置字段匯總值的對比方式和比較閾值范圍。 | |
離散值 | 離散值(狀態值),固定值 | group by之后的分組,每組count數,與固定值進行比較。 |
離散值(分組個數),固定值 | group by之后的分組數,與固定值進行比較。 | |
離散值(分組個數),動態閾值 | 開啟智能動態閾值后,無需手動配置波動閾值或期望值,系統會根據智能算法,自動判斷合理閾值。若發現數據異常,會即時觸發告警或阻塞。 | |
離散值(狀態值),動態閾值 | 開啟智能動態閾值后,無需手動配置波動閾值或期望值,系統會根據智能算法,自動判斷合理閾值。若發現數據異常,會即時觸發告警或阻塞。 | |
離散值(分組個數),1天波動率 | group by之后的分組數,與1天前樣本進行比較,計算波動率。 | |
離散值(分組個數及狀態值),1、7、30天波動率 | group by之后的分組數和分組后每組count數,與1天前的樣本、7天前的樣本、30天前的樣本(離散值)進行比較,計算波動率。 |
EMR表不支持配置表大小類校驗規則。
附錄一:上一周期口徑說明
上一周期任務可以通過排除掉相同業務日期的校驗,按業務日期倒序排列,若業務日期相同,則再按運行時間進行倒序排列,取第一個執行的任務作為基準,詳情請參見下表:
調度類型 | 業務日期 | 基準對比方式 | 常見問題 |
正常日調度場景 | 歷史業務日期:
| 當業務日期為2024-06-06的調度任務開始校驗時,取2024-06-05的校驗作為基準進行比較。 | 補歷史數據場景: 背景: 2024-06-01至2024-06-05日正常執行,但在2024-06-05日調度實例執行后,對該業務日期為2024-07-01日的實例進行了補數據,當業務日期2024-06-06調度任務開始校驗時,基準對比日期為哪一天? 結論: 業務日期2024-06-06調度任務會取業務日期2024-07-01的校驗作為基準進行對比。由于2024-07-01業務日期較大,因此,正常的日調度任務直至2024-07-02的調度實例執行完成前,都會以2024-07-01為基準。 |
正常小時調度場景 | 歷史業務日期:
任務按小時調度,每日執行3次。 | 當業務日期2024-06-04的小時調度任務開始校驗時,取業務日期2024-06-03的最后一次校驗作為基準進行對比。 | 小時調度場景: 背景: 2024-06-01至2024-06-03每日三個小時調度與業務日期2024-06-04的第1個調度正常執行,那么在業務日期2024-06-04的第2調度實例開始校驗時,基準對比的日期為哪一天? 結論: 業務日期2024-06-04的第2個調度任務實例開始校驗時,會排除掉當天(2024-06-04)的第1次校驗,取業務日期2024-06-03的最后一次校驗作為基準進行對比。 |
附錄二:小時任務N天前樣本值口徑說明
小時任務取N天前樣本時,會先按照第N天運行時間(非定時時間)倒序排列,默認獲取運行時間倒序排列后的第一個實例的結果數據作為樣本值與當前結果進行比較,詳情請參見下表:
調度類型 | 業務日期 | 波動率對比方式 | 常見問題 |
正常小時調度場景 | 歷史業務日期:
任務按小時調度,每日執行3次。 | 若對比的是7日波動率,當運行日期為2024-06-08的小時調度任務開始校驗時,取運行日期為2024-06-01日最后一次的樣本值。 | 小時調度場景: 背景: 2024-06-01至2024-06-08每日三個小時調度,那么在運行日期2024-06-08的第2個調度實例開始校驗時,7日波動率對比的是哪一天的哪一個調度結果作為樣本值? 結論: 運行日期2024-06-08日第2個調度任務實例開始校驗時,取任務日期2024-06-01日最后一次校驗作為樣本值進行7日波動率的對比。 |