資料的前世今生:走進元資料分析

資料的前世今生:走進元資料分析

轉載本文請註明出處:微信公眾號EAWorld

01

前言

伴隨中國企業數字化轉型大提速,2020年5月13日下午,國家發展改革委官網釋出“數字化轉型夥伴行動”倡議,正式把數字化轉型提到國家政策層面。發展數字化轉型就避免不了要和資料打交道,資料治理的核心是元資料管理。元資料驅動數字化轉型成為趨勢,而隨著業務系統體量逐漸擴大,對元資料管理、分析提出了新的挑戰。及時性、可靠性、視覺化等等方面提出了新的要求。

02

元資料分析做什麼

首先需要探討的是什麼的問題。元資料分析實踐需要做什麼?

元資料分析可以做的事情有很多,比如:

1.統計分析

,針對整合而來的元資料,提供跨系統、跨BI工具的統計資料。例如:A系統下的表數目統計資訊;在一段時間內的表變更情況統計資訊;表的使用情況統計等等

2.特徵分析

,針對整合而來的元資料,進行特徵抽取。例如:表的特徵資訊可以包括總欄位數、主鍵欄位數、數值型欄位數等等

3.血統分析

,針對整合而來的元資料,進行溯源分析,進行以資料流向為主線的血緣追溯。

4.影響分析

,針對整合而來的元資料,資料變化會對下游資料產生哪些影響,影響有多大。

03

為什麼需要做元資料分析

透過元資料分析幫助我們識別元資料價值,提升企業資料可信度,為企業的資料融合提供質量保證,幫助業務部門和IT支撐部門實現資訊共享、提升工作效率。

04

普元的元資料分析實踐

①普元在XX物流公司的實踐

實踐背景:

公司的資料整合依託於PowerCenter;

資料服務提供依靠大量的儲存過程以及檢視完成其複雜的業務資訊需求;

現實問題:

對資料服務的維護需要同時維護成百上千的PC模型檔案以及儲存過程。當資料服務出現變更需求或者出現數據 質量問題維護的同時需要人工查閱檔案,重新梳理資料流轉過程,極大的影響了辦公效率以及辦公質量。

解決方案:

實現對PowerCenter、以及儲存過程、檢視元資料採集

實現PowerCenter、以及儲存過程、檢視元資料的自動關聯,形成血緣脈絡

普元元資料系統支援常見的關係型資料庫(Mysql、Oracle、SqlServer以及國產資料庫 達夢、金倉、OceanBase),非關係型資料庫、報表檔案、ETL檔案等元資料採集。透過不同的採集介面卡將處於不同業務層次、不同環境下的資料進行抽取轉化,形成符合CWM元模型規範的元資料集合。打破原有各IT系統,BI工具集資料模型、ETL工具資料模型等元資料各自隔離的現狀。

資料間的依賴關係表現形式透過我們長期的實踐,歸納為兩種SQL以及Mapping對映。

資料的前世今生:走進元資料分析

在實現資料融合、資料轉換的過程中,我們可以透過書寫儲存過程或者一系列的查詢語句,也可以藉助ETL、BI等工具實現資料端到端的傳輸和展現。我們的資料流向、依賴關係就存在於這個過程中。

儲存過程不用多說自然是查詢語句的一種,而在ETL、BI工具中我們看似沒有或者很少有查詢語句的出現,其實揭開它們的面紗,也只是將各種查詢語句用另外一種形式做了一種包裝,我們在這裡就把他認定為是一種mapping對映,只不過這種對映對使用者或者技術人員來看是更加通俗易懂的。這種對映關係顯著的標明瞭源端、目標端的資料對映詳情。從模型檔案中抽取出這些對映關係就形成了對ETL、BI資料模型的依賴分析,這個在我們的實踐過程中是較為簡單的。而查詢語句的依賴關係轉化在我們的實踐過程中向我們提出了挑戰。

下面就說說我們在儲存過程的依賴分析中遇到了哪些問題。

1.查詢語句結構複雜

a。資料欄位依賴於不同階段的查詢結果,比如遊標查詢與更新操作的結合使用

b。多級子查詢巢狀查詢,語義追溯問題

c。各種函式的混合使用,比如DECODE函式、CASE函式帶來的分支選擇,要進行非關聯欄位過濾,提高依賴關係的準確性

等等

2.查詢語句語義模糊

,比如select * 的巢狀使用;多表巢狀查詢時,欄位別名交叉使用;涉及UNION查詢時,欄位所屬指示不明的問題

3.資料庫版本引入新的關鍵字、函式等

4.查詢語句上下文關聯問題

,比如儲存過程是由一系列單條語句組合而成,具有上下文關聯關係

針對以上問題我們做了如下努力解決問題:

1.詞法、語法分析能力提升

資料庫的迭代發展引入了新的關鍵字、方法、符號。我們完善了基於JavaCC和Antlr開發的詞法分析器,以及語法直譯器,提升詞法、語法分析能力。

2.重構現有的分析模型

採取分而治之的思想,將複雜的查詢語句以select查詢為基礎單元構建基於語法樹的解釋分析模型。

3.標註法和反向查詢法理唸的結合使用

在分析模型中我們採用標註的概念記錄資料流轉的層級順序,在完成全部查詢語句的結構分析時,反向遞迴查詢所關聯的資料來源頭。

資料的前世今生:走進元資料分析

基於企業資料整體的依賴關係,我們藉助eCharts、GoJs等前端技術,將資料的流轉方式進行視覺化展示,摸清資料的來龍去脈。

這裡我們列舉一個最簡單鏈路關係圖,如圖所示,資料共享層的表employee的資料來源於上游資產系統中的as_employee以及as_employee1,而employee的資料又透過一定的業務轉換到達下游系統報表系統的rep_employee以及風控系統中的rks_employee表中。

資料的前世今生:走進元資料分析

以表為分析入口,進行全鏈分析展示,展示效果如圖

資料的前世今生:走進元資料分析

在轉換關係連線上雙擊下鑽可以檢視具體的轉換過程,可以看到轉化過程經歷了源表的欄位選擇、透過記錄的合併和選擇最終到達目標表中。

資料的前世今生:走進元資料分析

在表級層次上展開還可以看到相關的欄位的轉換關係。

資料的前世今生:走進元資料分析

除了從表的維度去查看錶結構的鏈路圖,我們還可以直接查詢相關欄位,獲取欄位的轉換關係。

資料的前世今生:走進元資料分析

以關注物件為節點我們向上尋親,檢視資料的血緣關係。血統分析讓我們對企業資料來源可追溯,提升資料資訊可信度,為企業資料的合規性提供驗證手段。

資料的前世今生:走進元資料分析

向下延伸,檢視資料的影響範圍。影響分析提供基於資料流影響分析能力,快速識別元資料價值,掌握元資料變更可能造成的影響,為評估變更變化風險提供有效幫助,幫助使用者高效準確的對資料資產進行清理、維護和使用。

資料的前世今生:走進元資料分析

以上場景分析是建立在企業各系統之間元資料是有關聯的,如果一個企業中各個系統之間的元資料互相孤立,無法直接獲取資料之間的關係怎麼辦呢?這就要說說我們的另一個探索方案

②普元在XX航空公司的實踐

實踐背景:

企業希望打通公司各部門業務壁壘,實現資料互通,統一管理,提升辦公效率

現實問題:

公司各部門相互較為獨立,但業務上卻不完全獨立。各部門對重疊的業務需求資料各自維護,發生資料變動的同時需要多部門協調聯動修改。

解決方案:

彙總業務元資料,梳理資料特徵,探索資料之間關係

我們針對這種場景提供基於元資料相似度分析的探查能力,從元資料特徵出發,梳理資料特徵、制定分析因子、分析規則,探查元資料之間存在的潛在關係,從而幫助企業打破資料孤島現象。

資料的前世今生:走進元資料分析

結合企業業務範圍,梳理元資料特徵,根據資料特徵描述資料含義,制定貼合業務的元資料相似度分析因子。我們提供了可擴充套件開發的介面,實現對相似度分析因子的計算邏輯,透過將一定的分析因子以不同的權重進行組合形成相似度分析規則,進一步將規則應用於對應的業務系統元資料,由元資料探索引擎實現元資料相似度的自動探查。

元資料探查、相似度分析系統架構

資料的前世今生:走進元資料分析

元資料探查、相似度分析流程:

資料的前世今生:走進元資料分析

元資料探查、相似度結果檢視:

資料的前世今生:走進元資料分析

系統間表對比探索,根據表元資料特徵(表名稱、表描述、欄位總數、主鍵數、總欄位描述、總欄位名稱等),透過選擇的因子分析推斷各系統間相似的元資料表。

元資料探索能力為業務系統之間的資料關係進行初步的摸索,為使用者梳理、維護和使用資料資產提供新的思路和依據。

05

元資料統計分析

除了有目標性的資料分析外我們可以站在宏觀的角度來觀察整個企業的資料狀態情況。

我們以業務系統為切入點進行元資料的統計分析。對各個系統的元資料體量進行彙總分析,形成各個業務系統中的元資料分佈圖;

資料的前世今生:走進元資料分析

系統中的元資料不會是一成不變的,我們透過定時排程採集更新元資料的方式實現元資料的實時管理,將元資料的變更情況進行統計分析得出元資料的變更趨勢,透過變更趨勢能看出相關係統的成熟度以及穩定性。

資料的前世今生:走進元資料分析

資料的前世今生:走進元資料分析

根據系統中的表的使用情況,對錶的使用情況做topN統計分析,透過圖表可以看出系統中的熱點資料。

資料的前世今生:走進元資料分析

元資料是資料治理的基石,在元資料統一管理的前提下,元資料分析為我們理解元資料提供了一劑靈湯妙藥,有了它,我們能夠快速的尋找資料聯絡,從資料中探索價值,並將資料價值得以最大程度的發揮,為企業的數字化轉型、提升數字產能打下堅實的基礎。

資料的前世今生:走進元資料分析

關於作者

阿良,普元研發中心資深工程師,負責關於服務監控、日誌監控等元件開發、負責普元資料類產品設計和研發。