用得好的數(shù)據(jù)才是資產(chǎn),當(dāng)數(shù)據(jù)資產(chǎn)遇上知識圖譜

01?什么是E-R圖
E-R圖(Entity Relationship Diagram)也稱實(shí)體關(guān)系圖,是一種用來描述實(shí)體、屬性和關(guān)系的模型。我們常用矩形來表示現(xiàn)實(shí)中客觀存在且相互區(qū)別的實(shí)體,用橢圓來表示實(shí)體具有的某一特征,用菱形來表示實(shí)體和實(shí)體間一對一,一對多和多對多的關(guān)系。假如現(xiàn)在回到我們大學(xué)的數(shù)據(jù)庫課堂上,那么你一定不會對下面這個圖感到陌生。

E-R圖一般是用數(shù)據(jù)庫外鍵來存儲和維護(hù)這個關(guān)系。但是隨著業(yè)務(wù)規(guī)模增大和數(shù)據(jù)量增長后外鍵性能的降低,越來越多的應(yīng)用系統(tǒng)在設(shè)計時不再使用外鍵而通過業(yè)務(wù)代碼來保障業(yè)務(wù)之間的依賴關(guān)系,從而導(dǎo)致不易通過外鍵信息查看到數(shù)據(jù)中的邏輯關(guān)系。
02?我們看到的E-R居然不一樣
現(xiàn)在有一個數(shù)據(jù)庫叫DMS_META,打開一個我們常用的數(shù)據(jù)庫管理軟件可以查看一下對應(yīng)的E-R圖。如下圖所示,表在渲染的同時展示出了表與表之間的外鍵引用關(guān)系。

但當(dāng)我們打開DMS查看對應(yīng)E-R關(guān)系時,發(fā)現(xiàn)渲染出來的關(guān)系會更加豐富。跟之前的看到的E-R完全不一樣。

03?DMS增強(qiáng)E-R做了什么
DMS的E-R圖為什么會不一樣?DMS對DMS_META這個庫都做了哪些操作?增強(qiáng)了哪些能力?
3.1?傳統(tǒng)E-R能力
我們使用DMS的表結(jié)構(gòu)設(shè)計創(chuàng)建了4個會員表huiyuan_t1(簡稱t1表),huiyuan_t2(簡稱t2表),huiyuan_t3(簡稱t3表),huiyuan_t4(簡稱t4表),同時創(chuàng)建一個外鍵表huiyuan_fk(簡稱fk表),該表和t1表有外鍵引用關(guān)系。同時使用DMS的測試數(shù)據(jù)構(gòu)建能力為這些表插入對應(yīng)的測試數(shù)據(jù)。
待數(shù)據(jù)資產(chǎn)圖譜構(gòu)建完成后,回到DMS上查看對應(yīng)的增強(qiáng)E-R圖,可以查看到物理外鍵間的關(guān)聯(lián)關(guān)系。

同時也可以點(diǎn)擊“節(jié)點(diǎn)”和“邊”查看對應(yīng)的表詳情和關(guān)聯(lián)關(guān)系詳情。


3.2?列算子血緣解析E-R能力
列算子血緣解析E-R是基于DMS自研的列算子血緣解析器的能力構(gòu)建,DMS每天將通過SQL窗口和數(shù)據(jù)庫開發(fā)工單中的所有SQL進(jìn)行列算子血緣解析,并將經(jīng)過列算子血緣解析后的字段之間的關(guān)聯(lián)、依賴及影響關(guān)系納入增強(qiáng)E-R圖譜。
接下來我們在SQL窗口(也可以通過數(shù)據(jù)庫開發(fā)中的變更工單)上模擬一些真實(shí)場景的數(shù)據(jù)庫操作。分別使用t1表和t3表的user_id做一次關(guān)聯(lián)生成一個寬表huiyuan_join(簡稱join表),使用t4表做一次數(shù)據(jù)過濾生成一個新的新表huiyuan_depend(簡稱depend表),使用t2表和t3表進(jìn)行一定的過濾并關(guān)聯(lián)起來生成一張新表huiyuan_influ(簡稱influ表)。

通過以上3條SQL模擬了DMS上一般用戶的常見查詢操作。待數(shù)據(jù)資產(chǎn)圖譜構(gòu)建完成后,回到DMS上查看對應(yīng)的增強(qiáng)E-R圖,可以看到,除了傳統(tǒng)的物理外鍵外,字段關(guān)聯(lián)字段,字段依賴字段,字段影響字段的關(guān)聯(lián)關(guān)系也體現(xiàn)到了增強(qiáng)E-R圖中。

3.3 任務(wù)編排E-R能力
同樣的,通過DMS的任務(wù)編排進(jìn)功能行一個常見的ETL任務(wù)的開發(fā),創(chuàng)建一個huiyuan_df(簡稱df表),使用任務(wù)編排功能每天0點(diǎn)定時清理df的表,并從t2表抽取數(shù)據(jù)寫入到df表。

通過上述操作模擬了一個數(shù)據(jù)ETL任務(wù)開發(fā)的場景,并使用任務(wù)編排的調(diào)度血緣來構(gòu)建資產(chǎn)圖譜。待數(shù)據(jù)資產(chǎn)圖譜構(gòu)建完成后,回到DMS上查看對應(yīng)的增強(qiáng)E-R圖,可以看到,除了傳統(tǒng)的物理外鍵,列算子血緣關(guān)系外,任務(wù)編排的調(diào)度血緣的關(guān)系也體現(xiàn)到了增強(qiáng)E-R圖中。

3.4?智能探查E-R能力
智能探查(SchemaMatching)是DMS自研的數(shù)據(jù)識別算法引擎,該引擎可在已有的數(shù)據(jù)資產(chǎn)中識別元數(shù)據(jù)和內(nèi)容數(shù)據(jù)并自動挖掘數(shù)據(jù)內(nèi)潛在的關(guān)聯(lián)關(guān)系,并將挖掘到的關(guān)系將用于構(gòu)建增強(qiáng)E-R圖。
比如可以發(fā)現(xiàn)t1表的user_name和t2表的user_name從元數(shù)據(jù)和數(shù)據(jù)內(nèi)容識別上來看都是用戶的會員名,接下來我們將ShcemaMatching引擎挖掘后的結(jié)果進(jìn)行關(guān)聯(lián)。待數(shù)據(jù)資產(chǎn)圖譜構(gòu)建完成后,回到DMS上查看對應(yīng)的增強(qiáng)E-R圖,可以看到,除了傳統(tǒng)的物理外鍵,列算子血緣關(guān)系,調(diào)度血緣關(guān)系外,通過智能探查的關(guān)系也體現(xiàn)到了增強(qiáng)E-R圖中。

小彩蛋
細(xì)心的讀者可以看到DMS增強(qiáng)E-R圖中表的右上角有一些小圖標(biāo),標(biāo)識了該數(shù)據(jù)資產(chǎn)在DMS數(shù)據(jù)資產(chǎn)圖譜中的使用情況。增強(qiáng)E-R還隱藏了更多的圖標(biāo)和功能待您繼續(xù)發(fā)掘。
04?DMS增強(qiáng)E-R的技術(shù)能力
DMS的增強(qiáng)E-R與傳統(tǒng)E-R的構(gòu)建方案不同,除了具有傳統(tǒng)外鍵展示能力,在DMS一站式多云多源數(shù)據(jù)納管,統(tǒng)一Catalog采集,列算子血緣解析和數(shù)據(jù)資產(chǎn)圖譜構(gòu)建等能力支持下,可以幫助您挖掘出數(shù)據(jù)資產(chǎn)之間更多潛在的關(guān)聯(lián)關(guān)系。
4.1 多云多源的數(shù)據(jù)納管能力
在數(shù)據(jù)源納管能力上DMS一直主打的是"多云多源"的能力,除了納管在阿里云下TP/AP/NOSQL/大數(shù)據(jù)/文件日志等數(shù)據(jù)源形態(tài),也支持用戶在他云/自建下的各種主流數(shù)據(jù)源??梢院芎玫慕鉀Q企業(yè)數(shù)據(jù)孤島,一站式安全和穩(wěn)定地管理企業(yè)的所有的數(shù)據(jù)資產(chǎn)。

4.2 統(tǒng)一Catalog采集能力
DMS自研的統(tǒng)一元數(shù)據(jù)采集系統(tǒng)已經(jīng)穩(wěn)定的支持了阿里集團(tuán)內(nèi)部10多年的元數(shù)據(jù)采集工作,并作為集團(tuán)內(nèi)統(tǒng)一的元數(shù)據(jù)標(biāo)準(zhǔn)為集團(tuán)的數(shù)據(jù)管理和治理等業(yè)務(wù)提供數(shù)據(jù)支撐和服務(wù),可以快速穩(wěn)定地對“多云多源”的元數(shù)據(jù)進(jìn)行采集,并將各種數(shù)據(jù)源的實(shí)例/庫/表/列進(jìn)行統(tǒng)一的構(gòu)建和管理。

4.3?列算子血緣解析能力
列算子血緣解析器是DMS自研的集多引擎SQL解析,元數(shù)據(jù)自動獲取,字段血緣解析,字段加工算子解析于一體的解析器,具有解析字段關(guān)聯(lián)字段,字段依賴字段,字段影響字段,表關(guān)聯(lián)表,表依賴表,表影響表,字段影響表,表影響字段等能力?;谒梢詫τ脩羧縎QL中的數(shù)據(jù)加工邏輯進(jìn)行快速的解構(gòu)并給出結(jié)構(gòu)化的解析結(jié)果以及直觀的可視化視圖。


4.4?數(shù)據(jù)資產(chǎn)知識圖譜能力
DMS基于元數(shù)據(jù)自動挖掘和阿里云Tair for Graph的能力構(gòu)建了百億級別的節(jié)點(diǎn)和關(guān)系的數(shù)據(jù)資產(chǎn)知識圖譜,并結(jié)合多種數(shù)據(jù)資產(chǎn)業(yè)務(wù)應(yīng)用場景,提供對應(yīng)的查詢和服務(wù)能力,比如,通過查看敏感數(shù)據(jù)的傳遞方式,可以避免敏感信息二次加工后泄露;通過查看數(shù)據(jù)之間的依賴關(guān)系,可盡早發(fā)現(xiàn)數(shù)據(jù)變更的風(fēng)險;通過查看數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系,可輔助構(gòu)建數(shù)倉寬表;通過查看數(shù)據(jù)之間的加工關(guān)系,可查看數(shù)據(jù)的加工鏈路;通過查看數(shù)據(jù)之間的引用關(guān)系,可識別數(shù)據(jù)庫中的冷、熱資產(chǎn)。


