數(shù)據(jù)治理平臺思路

1. 何為數(shù)據(jù)治理

數(shù)據(jù)治理是為了讓數(shù)據(jù)在形式上和質(zhì)量上更好地達成某一數(shù)據(jù)應(yīng)用目標而進行的數(shù)據(jù)集成褂微、數(shù)據(jù)整理都办、數(shù)據(jù)分析美侦、數(shù)據(jù)修繕系谐、數(shù)據(jù)發(fā)布巾陕,數(shù)據(jù)應(yīng)用的過程。

2. 為什么需要數(shù)據(jù)治理

數(shù)據(jù)治理平臺通常不是源端的數(shù)據(jù)生產(chǎn)者纪他。政府和大企業(yè)通常有非常多的信息系統(tǒng)鄙煤,這些信息系統(tǒng)往往有不同的廠家,在不同的時期建設(shè)茶袒,數(shù)據(jù)的存儲方式和形式一般由廠家根據(jù)業(yè)務(wù)需要自行設(shè)計梯刚。數(shù)據(jù)模型在整體層面上缺少統(tǒng)一規(guī)范的頂層設(shè)計。當(dāng)有的業(yè)務(wù)需要跨系統(tǒng)進行數(shù)據(jù)整合應(yīng)用時薪寓,往往都需要相應(yīng)的項目承包商亡资,自行處理,而這過程中通常會出現(xiàn)各種各樣的問題向叉。例如:
a. 編碼方式不統(tǒng)一锥腻,同一對象在不同的系統(tǒng)有不同的編碼。
b. 命名不統(tǒng)一植康,雖然人通過語義和層級結(jié)構(gòu)理解旷太,可以知道是同一個對象,但因為字符順序和字符上有些許差異销睁,不能用字符串equals比較供璧。
c. 字段缺失。對某一業(yè)務(wù)來說是必需的冻记,但在源系統(tǒng)里面睡毒,它可能只是一個非必填的邊緣字段,有的對象設(shè)置了冗栗,有的對象沒有設(shè)置演顾。
d. 字段值單位和設(shè)值不規(guī)范供搀。例如在源系統(tǒng)中,有些字段可能只是為了展示钠至,所以只要用一個字符串葛虐,人能看的懂,中文名稱或西文字符單位都可能出現(xiàn)棉钧,中間有空格等等屿脐。但是在用在計算的時候,單位和格式就不得不統(tǒng)一
e. 不同來源的數(shù)據(jù)連接不能很好對齊宪卿。就像需要連接兩根光纜似的的诵,有的光纖能連上,有的連不上佑钾,有的又似乎能找到對應(yīng)的連上西疤,但又不是很確定。
f. 不同來源的同一對象休溶,同樣含義的字段代赁,取值不一致。

數(shù)據(jù)治理就是源系統(tǒng)和個性化業(yè)務(wù)系統(tǒng)之間的中間層邮偎,基于底層不同的源系統(tǒng)管跺,為上層多個業(yè)務(wù)系統(tǒng)提供形式統(tǒng)一义黎、質(zhì)量更好且完備的數(shù)據(jù)禾进。如下圖所示:


數(shù)據(jù)治理平臺定位

從數(shù)據(jù)治理平臺的這個定位來看,其實數(shù)據(jù)治理平臺應(yīng)該盡量和數(shù)據(jù)倉庫廉涕、數(shù)據(jù)集市泻云、數(shù)據(jù)中臺等設(shè)計統(tǒng)一協(xié)調(diào)起來,避免重復(fù)設(shè)計狐蜕,冗余開發(fā)宠纯。

這樣可以避免各個上層業(yè)務(wù)系統(tǒng)獨自對接底層系統(tǒng)。這樣至少具有以下好處:
a. 各個業(yè)務(wù)系統(tǒng)廠家不用自己找各個源系統(tǒng)廠家對接层释,減少尋找業(yè)務(wù)人員溝通的時間成本婆瓜。
b. 各個業(yè)務(wù)系統(tǒng)廠家只需要對接數(shù)據(jù)治理平臺,減少了對接和數(shù)據(jù)獲取的工作量和難度贡羔。
c. 由數(shù)據(jù)指令平臺統(tǒng)一處理廉白,極大減少了各個廠家各自整合數(shù)據(jù)、規(guī)范化數(shù)據(jù)乖寒、處理異常數(shù)據(jù)的工作量猴蹂,可以更快推進業(yè)務(wù)系統(tǒng)開發(fā)落地。
d. 由數(shù)據(jù)治理平臺提供統(tǒng)一形式的楣嘁,處理過后的數(shù)據(jù)磅轻,數(shù)據(jù)的一致性將會更好珍逸。統(tǒng)計計算結(jié)果在各個業(yè)務(wù)系統(tǒng)中的數(shù)據(jù)一致性將會更好。

3. 數(shù)據(jù)治理的架構(gòu)和過程

數(shù)據(jù)治理架構(gòu)和過程

首先數(shù)據(jù)治理的關(guān)鍵是要有統(tǒng)一的模式設(shè)計聋溜,能覆蓋將要接入到數(shù)據(jù)平臺的各類型數(shù)據(jù)谆膳,并且能合理地描述各類對象之間的關(guān)聯(lián)關(guān)系。模式設(shè)計的基本原則是:從領(lǐng)域內(nèi)的事物本質(zhì)出發(fā)撮躁,以兼容業(yè)務(wù)需要為考量摹量,回顧底層數(shù)據(jù)對模式的支撐性。這種支撐性指的是當(dāng)前能拿到的各類型數(shù)據(jù)馒胆,是否能轉(zhuǎn)換成當(dāng)前設(shè)計的模式形式以及轉(zhuǎn)換過來的結(jié)果質(zhì)量如何缨称。避免造就一個理想化模型,以致數(shù)據(jù)無法填充祝迂,業(yè)務(wù)需求無法滿足睦尽。

數(shù)據(jù)治理的主要過程是:
整合-->分析-->修繕-->發(fā)布。(分析和修繕的過程可能需要循環(huán)進行)

為了支撐起這個過程型雳,需要有“Raw數(shù)據(jù)倉庫”当凡、“Formal數(shù)據(jù)倉庫”、和“Pending數(shù)據(jù)倉庫”三個數(shù)據(jù)倉庫纠俭。這三種數(shù)據(jù)倉庫都受統(tǒng)一模式的約束沿量,符合模式的設(shè)計要求。它們的底層數(shù)據(jù)庫技術(shù)可以不一致冤荆。一個倉庫也可有有多種類型數(shù)據(jù)庫共同組成朴则。一般有以下幾種類型的數(shù)據(jù)庫可選擇(不同類型數(shù)據(jù)庫有不同的特性,結(jié)合開發(fā)技術(shù)钓简、數(shù)據(jù)寫入和查詢要求選擇):

  1. OLAP型數(shù)據(jù)乌妒。例如Hive、MaxCompute等外邓。
  2. 傳統(tǒng)關(guān)系型數(shù)據(jù)庫:例如MySQL撤蚊、PostgreSQL,DM(達夢)等
  3. 時序數(shù)據(jù)庫损话。例如 TDengine侦啸,InfluxDB等

Raw數(shù)據(jù)倉庫,存儲的是通過數(shù)據(jù)集成任務(wù)整合丧枪、經(jīng)過初發(fā)規(guī)范化和修繕的的符合統(tǒng)一模式的生數(shù)據(jù)光涂。
Formal數(shù)據(jù)倉庫,存儲的是經(jīng)過數(shù)據(jù)分析確定符合輸出條件的數(shù)據(jù)豪诲。
Pending數(shù)據(jù)倉庫顶捷,存儲的是經(jīng)過數(shù)據(jù)分析,發(fā)現(xiàn)不符合輸出條件屎篱,待決的數(shù)據(jù)服赎。

數(shù)據(jù)分析引擎基于統(tǒng)一模式上定義的約束葵蒂,對數(shù)據(jù)進行分析。每條約束都有以下信息:

  1. id
  2. 名稱
  3. 范圍(scope)重虑。有三種形式:
    a. 類名践付。表示約束針對的不是單個屬性,而是多屬性缺厉。如果約束不成立永高,將描述為某個對象不滿足某個約束要求。
    b. 類名.屬性名提针。表示約束針對的是單個屬性命爬。如果約束不成立,將描述為某個對象的某個屬性不滿足要求辐脖。
    c.空饲宛。表示約束是針對多類型的對象綜合判定∈燃郏可以認為它是全局性的艇抠,避免這種約束綁定在多個類上,造成多次重復(fù)分析久锥。
  4. 數(shù)據(jù)集(數(shù)據(jù)查詢方式)
  5. 數(shù)據(jù)判定條件家淤。
  6. 順序(order)。缺省都是1瑟由,順序小的先開始分析絮重;順序相同的,可以并行错妖,無所謂先后绿鸣。
  7. 是否是強約束。如果是強約束暂氯,當(dāng)強約束不成立時,即時對象數(shù)據(jù)質(zhì)量閥決定放行亮蛔,這個對象會輸出痴施,但這個屬性不會輸出。不會輸出的意思是究流,當(dāng)目標數(shù)據(jù)庫存在這個對象時辣吃,不會去更新這個屬性,如果原先對象不存在芬探,則新建對象此字段會留空神得。

數(shù)據(jù)分析引擎根據(jù)全局的、類上的偷仿、屬性上定義的約束進行分析規(guī)則進行分析哩簿。判定約束條件在各個對象上是否成立宵蕉。

Raw數(shù)據(jù)倉庫的數(shù)據(jù)是否可以流轉(zhuǎn)到Formal數(shù)據(jù)倉庫,首先需要經(jīng)過數(shù)據(jù)分析节榜,得到結(jié)果后由數(shù)據(jù)對象質(zhì)量閥來判定羡玛。數(shù)據(jù)質(zhì)量閥是一條規(guī)則鏈,由判定規(guī)則組成宗苍,最后是一個最終缺省判定稼稿。每條規(guī)則有一個判定目標(拒絕或允許),第1條成立的規(guī)則讳窟,它的判定目標是拒絕還是允許让歼,就是數(shù)據(jù)質(zhì)量閥對這個對象的判定。當(dāng)所有規(guī)則都不成立的時候丽啡,最終缺省判定將作為對象數(shù)據(jù)質(zhì)量閥的最終判定是越。一般都是允許。得到允許的對象將流轉(zhuǎn)到Formal數(shù)據(jù)倉庫碌上,得到拒絕判定的對象將流轉(zhuǎn)到Pending數(shù)據(jù)倉庫倚评。對象質(zhì)量閥的判定依據(jù)是約束條件的執(zhí)行結(jié)果。例如“A.約束1 && A.約束2”

數(shù)據(jù)在進入Formal數(shù)據(jù)倉庫的時候會經(jīng)過一個攔截器馏予。攔截器主要是為了獲得Formal倉庫的增天梧、刪、改操作霞丧,以在HBase數(shù)據(jù)版本倉庫寫入對象的新版本數(shù)據(jù)呢岗。屬性變化了,才記錄蛹尝。如果用Formal倉庫存儲數(shù)據(jù)后豫,則可以考慮使用BinLog機制獲得數(shù)據(jù)的增、刪突那、改操作挫酿。

之所以要使用HBase數(shù)據(jù)庫作為對象版本記錄數(shù)據(jù)庫,是為了使用HBase的字段值多版本記錄的特性愕难。

手動和自動數(shù)據(jù)修繕工具可以利用Pending庫中的數(shù)據(jù)和對象版本庫中的數(shù)據(jù)早龟,修繕數(shù)據(jù)。修繕之后猫缭,寫入到Formal倉庫葱弟。數(shù)據(jù)分析引擎也會分析formal倉庫中的數(shù)據(jù),當(dāng)質(zhì)量不滿足對象質(zhì)量閥要求時會將它從Formal數(shù)據(jù)倉庫流轉(zhuǎn)到Pending數(shù)據(jù)倉庫猜丹。經(jīng)過修繕之后再寫入Formal倉庫芝加。

Formal數(shù)據(jù)倉庫的數(shù)據(jù),通過數(shù)據(jù)服務(wù)對外發(fā)布射窒。

4. 如何解決自動同步和手動修繕數(shù)據(jù)的被覆蓋的問題

當(dāng)數(shù)據(jù)不符合對象質(zhì)量閥的要求藏杖,被輸出到了pending倉庫将塑,人工修正以后,寫入到了Formal倉庫制市。下次數(shù)據(jù)同步分析抬旺,如果數(shù)據(jù)符合對象質(zhì)量閥要求了,那這個人工修繕后的數(shù)據(jù)是該被覆蓋祥楣,還是被保留开财?

這其實應(yīng)該取決于修繕數(shù)據(jù)的人。他可以有兩種選擇:

  1. 如果他覺得他修繕的數(shù)據(jù)是標準的最終答案误褪,那么可以鎖定對象或?qū)傩栽瘅ⅲ辉试S被覆蓋;
  2. 如果它覺得源端只要改成符合他的某種檢查規(guī)則兽间,那么就采用源端的历葛。

這兩種選擇其實都可以用約束來表示。鎖定一個id為123的對象的屬性嘀略,可以定義一條針對某個對象的單屬性強約束恤溶,它的判定目標是拒絕,:

id == '123'

第2種選擇就是一般的強約束帜羊。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末咒程,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子讼育,更是在濱河造成了極大的恐慌帐姻,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件奶段,死亡現(xiàn)場離奇詭異饥瓷,居然都是意外死亡,警方通過查閱死者的電腦和手機痹籍,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進店門呢铆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人词裤,你說我怎么就攤上這事刺洒。” “怎么了吼砂?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長鼎文。 經(jīng)常有香客問我渔肩,道長,這世上最難降的妖魔是什么拇惋? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任周偎,我火速辦了婚禮抹剩,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蓉坎。我一直安慰自己澳眷,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布蛉艾。 她就那樣靜靜地躺著钳踊,像睡著了一般。 火紅的嫁衣襯著肌膚如雪勿侯。 梳的紋絲不亂的頭發(fā)上拓瞪,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天,我揣著相機與錄音助琐,去河邊找鬼祭埂。 笑死,一個胖子當(dāng)著我的面吹牛兵钮,可吹牛的內(nèi)容都是我干的蛆橡。 我是一名探鬼主播,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼掘譬,長吁一口氣:“原來是場噩夢啊……” “哼泰演!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起屁药,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤粥血,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后酿箭,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體复亏,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年缭嫡,在試婚紗的時候發(fā)現(xiàn)自己被綠了缔御。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡妇蛀,死狀恐怖耕突,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情评架,我是刑警寧澤眷茁,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站纵诞,受9級特大地震影響上祈,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一登刺、第九天 我趴在偏房一處隱蔽的房頂上張望籽腕。 院中可真熱鬧,春花似錦纸俭、人聲如沸皇耗。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽郎楼。三九已至,卻和暖如春女轿,著一層夾襖步出監(jiān)牢的瞬間箭启,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工蛉迹, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留傅寡,地道東北人。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓北救,卻偏偏與公主長得像荐操,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子珍策,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,086評論 2 355

推薦閱讀更多精彩內(nèi)容