一.數據質量基本概念
二.影響因素
在此附上數據的生命週期圖,包括各環節的數據流轉和數據處理。
三.評估維度
- 完整性
數據完整性問題包括:模型設計不完整,例如:唯一性約束不完整、參照不完整;數據條目不完整,例如:數據記錄丟失或不可用;數據屬性不完整,例如:數據屬性空值。不完整的數據所能借鑑的價值就會大大降低,也是數據質量問題最爲基礎和常見的一類問題。- 一致性
多源數據的數據模型不一致,例如:命名不一致、數據結構不一致、約束規則不一致。數據實體不一致,例如:數據編碼不一致、命名及含義不一致、分類層次不一致、生命週期不一致……。相同的數據有多個副本的情況下的數據不一致、數據內容衝突的問題。- 準確性
準確性也叫可靠性,是用於分析和識別哪些是不準確的或無效的數據,不可靠的數據可能會導致嚴重的問題,會造成有缺陷的方法和糟糕的決策。- 唯一性
用於識別和度量重複數據、冗餘數據。重複數據是導致業務無法協同、流程無法追溯的重要因素,也是數據治理需要解決的最基本的數據問題。- 關聯性
數據關聯性問題是指存在數據關聯的數據關係缺失或錯誤,例如:函數關係、相關係數、主外鍵關係、索引關係等。存在數據關聯性問題,會直接影響數據分析的結果,進而影響管理決策。- 真實性
數據必須真實準確的反映客觀的實體存在或真實的業務,真實可靠的原始統計數據是企業統計工作的靈魂,是一切管理工作的基礎,是經營者進行正確經營決策必不可少的第一手資料。- 及時性
數據的及時性(In-time)是指能否在需要的時候獲到數據,數據的及時性與企業的數據處理速度及效率有直接的關係,是影響業務處理和管理效率的關鍵指標。
需要新增的規則:(待優化)
四.稽覈計算方式
規則分類 |
規則名稱 |
規則編碼 |
規則解釋 |
唯一性 |
hasUniqueKey |
1 |
驗證用戶指定的字段是否具有唯一性等 |
一致性 |
consistent_dict |
2 |
驗證用戶指定的字段枚舉值是否合乎要求等 |
完整性 |
integrity_notNull |
3 |
驗證表中必須出現的字段非空等 |
準確性 |
accuracy_length |
4 |
驗證長度是否符合規定等 |
1.主鍵唯一性計算
字段A的唯一性百分比 = count(distinct 字段A)/count(字段A)
2.非空完整性計算
字段A的完整性百分比 = sum(case when 字段A is not null then 1 else 0 end )/count(字段A)
3.字典一致性計算
枚舉類型的數據都會維護在一張標準表中 然後和目標表進行比對字段A的 有效性百分比= sum(字段A in (維護的標準表) then 1 else 0 end )/count(字段A)
4.長度準確性計算
字段A的長度有效性百分比 = sum(case when length(字段A)<=設置數值 then 1 else 0 end )/count(字段A)
五.如何提升數據質量
1.事前定義數據的監控規則
提煉規則:梳理對應指標、確定對象(多表、單表、字段)、通過影響程度確定資產等級、質量規則制定
2.事中監控和控制數據生產過程
質量監控和工作流無縫對接
支持定時調度
強弱規則控制ETL流程
對髒數據進行清洗
3.事後分析和問題跟蹤
郵件短信報警並及時跟蹤處理
稽覈報告查詢
數據質量報告的概覽、歷史趨勢、異常查詢、數據質量表覆蓋率
異常評估、嚴重程度、影響範圍、問題分類
六.開發技術
pyspark hive datax mysql
七.開發流程
八.核心表核心字段梳理
九.數據質量報表產出
報表產出需要新增:(待優化)
十.重大問題告警
十一.質量報告及訂閱
十.總結
數據質量管理貫穿數據生命週期的全過程,覆蓋質量評估、數據監控、數據探查、數據清洗、數據診斷等方面。數據源在不斷增多,數據量在不斷加大,新需求推動的新技術也不斷誕生,這些都對大數據下的數據質量管理帶來了困難和挑戰。因此,數據質量管理要形成完善的體系,建立持續改進的流程和良性機制,持續監控各系統數據質量波動情況及數據質量規則分析,適時升級數據質量監控的手段和方法,確保持續掌握系統數據質量狀況,最終達到數據質量的平穩狀態,爲業務系統提供良好的數據保障。