上一次我們講了,數(shù)據(jù)怎么進(jìn)行快速的接入,這次我們講在接入及后續(xù)的數(shù)據(jù)處理中質(zhì)量怎么控制
如何更加合理、高效的監(jiān)控每類作業(yè)的運(yùn)行狀態(tài),并將原本分散、孤島式的監(jiān)控日志信息通過規(guī)則引擎集中共享、關(guān)聯(lián)、處理;洞察關(guān)鍵信息,形成事前預(yù)判、事中監(jiān)控、事后跟蹤的質(zhì)量管理閉環(huán)流程;沉淀故障問題,搭建解決方案的知識庫體系。在數(shù)據(jù)質(zhì)量監(jiān)管平臺的規(guī)劃建設(shè)中,面臨如下挑戰(zhàn):
- 缺乏統(tǒng)一監(jiān)控視圖,離線和實時作業(yè)監(jiān)控分散,影響性、關(guān)聯(lián)性不足。
- 數(shù)據(jù)質(zhì)量的衡量標(biāo)準(zhǔn)缺失,數(shù)據(jù)校驗滯后,數(shù)據(jù)口徑不統(tǒng)一。
- 問題故障處理流程未閉環(huán),點(diǎn)式解決現(xiàn)象常在;缺乏統(tǒng)一歸檔,沒有形成體系的知識庫。
- 數(shù)據(jù)模型質(zhì)量監(jiān)控缺失,模型重復(fù),基礎(chǔ)模型與應(yīng)用模型的關(guān)聯(lián)度不足,形成信息孤島。
- 數(shù)據(jù)存儲資源增長過快,不能監(jiān)控細(xì)粒度資源內(nèi)容。
圍繞完整性、準(zhǔn)確性、一致性、及時性監(jiān)控分析數(shù)據(jù)質(zhì)量問題、提升企業(yè)數(shù)據(jù)質(zhì)量。 從數(shù)據(jù)接入、數(shù)據(jù)加工、數(shù)據(jù)導(dǎo)出、指標(biāo)、數(shù)據(jù)應(yīng)用實現(xiàn)全鏈路血緣跟蹤、提前預(yù)判數(shù)據(jù)是否能夠準(zhǔn)時產(chǎn)出、了解任務(wù)失敗后影響分析以及快速地修復(fù)。做到事前控制,事中處理,事后追蹤。
事前(規(guī)則豐富多樣):
- 定義數(shù)據(jù)監(jiān)控規(guī)則
- 模板規(guī)則(字段規(guī)則,單表規(guī)則,多表規(guī)則)
- 自定規(guī)則(SQL),暫不實現(xiàn)
事中(數(shù)據(jù)流程監(jiān)控):
- 監(jiān)控和控制數(shù)據(jù)生成過程
- 稽核規(guī)則和ETL無縫對接
- 定時檢查
- 數(shù)據(jù)清洗
事后(數(shù)據(jù)質(zhì)量溯源):
- 郵件釘釘?shù)燃皶r預(yù)警
- 問題追蹤處理、故障review
- 稽核報告查詢
- 表打分及歷史趨勢查詢
數(shù)據(jù)質(zhì)量規(guī)則管理
數(shù)據(jù)質(zhì)量關(guān)鍵流程步驟:
- 質(zhì)量需求:發(fā)現(xiàn)數(shù)據(jù)問題;信息提報、收集需求;檢核規(guī)則的需求等。
- 提煉規(guī)則:梳理規(guī)則指標(biāo)、確定有效指標(biāo)、檢核指標(biāo)準(zhǔn)確度和衡量標(biāo)準(zhǔn)。
- 規(guī)則庫構(gòu)建:檢核對象配置、調(diào)度配置、規(guī)則配置、檢核范圍確認(rèn)、檢核標(biāo)準(zhǔn)確定等。
- 執(zhí)行檢核:調(diào)度配置、調(diào)度執(zhí)行、檢核代碼。
- 問題檢核:檢核問題展示、分類、質(zhì)量分析、質(zhì)量嚴(yán)重等級分類等。
- 分析報告:數(shù)據(jù)質(zhì)量報告、質(zhì)量問題趨勢分析,影響度分析,解決方案達(dá)成共識。
- 落實處理:方案落實執(zhí)行、跟蹤管理、解決方案Review及標(biāo)準(zhǔn)化提煉。
- 知識庫體系形成:知識經(jīng)驗總結(jié)、標(biāo)準(zhǔn)方案沉淀、知識庫體系建設(shè)。
- 可以對指定好的規(guī)則進(jìn)行單次執(zhí)行試運(yùn)行,以調(diào)試規(guī)則的正確性
數(shù)據(jù)質(zhì)量檢驗標(biāo)準(zhǔn):
- 完整性:主要包括實體缺失、屬性缺失、記錄缺失和字段值缺失四個方面;
- 準(zhǔn)確性:一個數(shù)據(jù)值與設(shè)定為準(zhǔn)確的值之間的一致程度,或與可接受程度之間的差異;
- 合理性:主要包括格式、類型、值域和業(yè)務(wù)規(guī)則的合理有效;
- 一致性:系統(tǒng)之間的數(shù)據(jù)差異和相互矛盾的一致性,業(yè)務(wù)指標(biāo)統(tǒng)一定義,數(shù)據(jù)邏輯加工結(jié)果一致性;
- 及時性:數(shù)據(jù)倉庫ETL、應(yīng)用展現(xiàn)的及時和快速性,Jobs運(yùn)行耗時、運(yùn)行質(zhì)量、依賴運(yùn)行及時性。
第一階段要完成的工作:
首先完成業(yè)務(wù)數(shù)據(jù)庫的數(shù)據(jù)接入數(shù)據(jù)質(zhì)量,從源頭上保障接入數(shù)據(jù)的質(zhì)量問題。在這一階段其實我們是在做接入的ETL,基于技術(shù)規(guī)則和業(yè)務(wù)規(guī)則進(jìn)行對數(shù)據(jù)進(jìn)行數(shù)據(jù)清洗,轉(zhuǎn)換加工,對于不符合數(shù)據(jù)規(guī)則的數(shù)據(jù)進(jìn)行過濾處理,統(tǒng)一記錄以便于后續(xù)的手動處理這也數(shù)據(jù)和反饋給業(yè)務(wù)系統(tǒng)進(jìn)行處理。
- 根據(jù)業(yè)務(wù)實際情況,抽象定義各個業(yè)務(wù)的質(zhì)量規(guī)則庫,可以按照業(yè)務(wù)主題管理
- 定義通用的數(shù)據(jù)處理規(guī)則模板,比如:日期格式,是否是數(shù)字,字符串長度是否超長等
- 通過接入的業(yè)務(wù)元數(shù)據(jù),對表和字段進(jìn)行數(shù)據(jù)規(guī)則定義,通用規(guī)則可以從規(guī)則庫進(jìn)行選擇
- 通過統(tǒng)一的規(guī)則處理引擎SDK,嵌入到Flink 實時流處理引擎中對數(shù)據(jù)進(jìn)行規(guī)則判斷
- 符合規(guī)則的數(shù)據(jù)入數(shù)倉,不符合規(guī)則的數(shù)據(jù),推送到異常數(shù)據(jù)隊列(異常數(shù)據(jù),來知道來源,異常類型,時間,嚴(yán)重等級等)
- 在異常數(shù)據(jù)UI界面展示異常數(shù)據(jù),并可以對異常數(shù)據(jù)進(jìn)行手動處理,重新推送到數(shù)倉(kafka-flink job處理)
- 數(shù)據(jù)質(zhì)量看板(參照原型)
- 每日數(shù)據(jù)質(zhì)量報告生成
數(shù)據(jù)質(zhì)量管理流程

數(shù)據(jù)質(zhì)量看板
提供統(tǒng)一的數(shù)據(jù)質(zhì)量看板,快速了解每天數(shù)據(jù)質(zhì)量問題及趨勢。并能及時進(jìn)行追蹤處理

數(shù)據(jù)質(zhì)量規(guī)則定義及管理
提供規(guī)則的可視化定義,試跑,發(fā)布,異常數(shù)據(jù)處理,規(guī)則模板管理等

規(guī)則定義

數(shù)據(jù)接入任務(wù)監(jiān)控

異常數(shù)據(jù)監(jiān)控

任務(wù)流程監(jiān)控
這里我們是集成海豚調(diào)度,所有的任務(wù)都是在這里定義和運(yùn)行,做到統(tǒng)一監(jiān)控

對于數(shù)倉內(nèi)部的數(shù)據(jù)質(zhì)量,目前只是做了任務(wù)作業(yè)監(jiān)控及預(yù)警,及時發(fā)現(xiàn)和定位問題,然后有數(shù)據(jù)開發(fā)及分析人員介入進(jìn)行手動處理和解決問題。