- 產品
- 產品解決方案
- 行業解決方案
- 案例
- 數據資產入表
- 賦能中心
- 伙伴
- 關于
時間:2022-11-15來源:景天瀏覽數:340次
在數據開發和數倉建設過程中,數據治理落地和提升數據質量的重要性逐漸凸顯,文章從貨拉拉的數據治理實踐出發,分享貨拉拉在數據治理體系構建、數據質量平臺建設、元數據平臺建設方面的實踐,值得了解和學習。
導讀:在數據開發和數倉建設過程中,數據治理落地和提升數據質量的重要性逐漸凸顯,本文將從貨拉拉的數據治理實踐出發,分享貨拉拉在數據治理體系構建、數據質量平臺建設、元數據平臺建設方面的實踐。
分享嘉賓|陳元&張放 貨拉拉
編輯整理|沈奕辰
首先和大家分享下數據治理的背景和現狀。
我們在做數據開發或數倉建設過程中,會遇到大量問題,有些會導致成本和數據質量問題,有些會影響數據鏈路穩定性。比如數據表沒有生命周期或無效的任務空跑,會造成成本浪費;又比如數據字典不規范、缺乏監控規范,以及數據問題不能及時發現,會造成數據質量問題,甚至導致鏈路穩定性。

基于以上背景,我們在以下四個環節做了相應工作:

組織保障:明確成員角色,明確職責分工;我們成立了存儲治理小組、計算治理小組,以及穩定性保障小組。?
制度建設:制定標準流程,保證落實執行;如我們制定了大數據接入規范、數據開發規范、數據模型規范,這些都是需要長期推廣和落地的過程。?
項目落地:開展專項治理動作,比如存儲治理、計算治理等;實踐證明專項治理的效果比較明顯,但問題是比較耗時耗力;不是長效機制,是一種運動式的治理,需要把能力產品化,讓數據責任方自助式治理,驅動自主治理。?
平臺支撐:研發支撐系統,提質增效。 今天我的分享主要是圍繞平臺支撐這個環節開展,其他三個環節,是接下來由其他老師帶來。

貨拉拉數據治理產品體系,由數據質量管理平臺、元數據管理平臺以及數據安全管理平臺這三個平臺支撐。
元數據管理平臺包含數據地圖、數據血緣分析、數據模型管理、成本管控、數據資產管理。 數據地圖主要提供找數據和幫助用戶理解數據的能力。
數據血緣分析主要是在數據鏈路出現問題的時候,幫助排查定位問題。 數據模型管理,提供規范落地能力:把所有正式表的建表收歸到數據模型管理平臺。這樣的好處是,如數據安全等級、數據生命周期都會有設置,防止數據出現無序增長的趨勢。?
成本管控平臺,它的作用是度量當前數據資源有哪些,資源消耗是怎樣的,每天花了多少錢。 輔助治理措施:冷數據歸檔、數據生命周期管理能力。?
成本運營機制:可以讓用戶自驅地做成本運營,不用做保姆式的人治。 數據資產管理:主要提供數據目錄管理、數據標準管理,供評估數據資產;?
數據質量管理:提供全鏈路的數據質量監控,有問題可以及時發現和處理,防止問題進一步擴散,可以及時止損。

數據開發過程中會遇到很多問題,如: 表未按時產出 上游數據錯誤,污染下游,導致鏈路異常 埋點數據丟失,無監控造成數據丟失無法發現 報表數據異常,造成決策錯誤?

產生數據質量問題的原因,歸結為四個方面:?
業務端:業務源系統變更,或業務端數據輸入不規范,會導致數據生產以及數據接入出現異常。
技術端:數據開發過程中出現的 Bug,或任務參數配置錯誤,導致任務運行失敗。?
基礎設施:計算資源不足,或網絡帶寬不足,磁盤被打滿,也會影響數據產出。?
管理端:缺乏質量意思,缺乏有效質量問題處理機制,質量問題會越來越嚴重。?
分為事前、事中、事后三個部分:

事前:制定機制、標準流程和質量檢查規則,預防質量問題。?
事中:數據質量平臺搭建,可以監控全鏈路數據質量。?
事后:發現質量問題要及時修復,并考核數據鏈路質量,驅動數據鏈路負責人做數據質量提升。?
貨拉拉數據質量平臺是一站式數據質量管理平臺,用戶基本上不用編寫代碼,就可以完成質量規則配置,完成質量檢測,支持自助生成質量報告。

(1)平臺特點?
? 零代碼一站式質量監測。 支持表維度管理和主題維度管理:表維度是對單張表做質量規則配置,主題維度是對同一類別的表做相同類別的質量配置。 借助了元數據平臺中的數據血緣,完成整個數據鏈路的質量規則配置。 當質量規則配置完成后,會生成一個質量檢測任務,用戶可以手動觸發制定,也可以設置周期性調度執行,也可以去任務調度平臺觸發執行。因為一個任務對應一些輸出表,當輸出表落地后,會觸發這個表關聯的質檢規則執行。如果關聯的質檢規則是強規則,且強規則檢測未通過,會阻斷下游任務執行,就能阻止數據質量問題進一步擴散。 質檢完成后,會生成質量報告;對于質量檢測不通過的,會觸發告警。嚴重的會觸發熔斷。?
(2)數據質量平臺架構設計

? 從圖中看可以看出,后端的很多服務都是多實例部署的:比如 API 向前端提供接口服務;與數據庫所有交互的請求都會走網關服務;還有負責任務調度的服務。API 和網關服務都是無狀態的服務,用微服務架構部署的,是多實例部署,如果一個實例掛了,流量會打到另外一個實例上面去,保證穩定性、高可用。但 Scheduler 是有狀態的,因為它上面每時每刻都在運行一些任務,不能只是多實例部署就可以,而是需要主備架構。
我們用了 Zookeeper 做 Leader 選舉,當一個 Scheduler 掛掉之后,就會把另一個 Scheduler 拉起,把掛掉的 Scheduler 上的任務遷移到新起的 Scheduler 上。這樣能保證任務不會掛掉,不會影響到數據質量檢測。最開始計算引擎只用了 Hive,后來用了我們公司自主研發的混合引擎服務,自動會把符合條件的 SQL 錄用到 Presto 上去,Presto 是基于內存計算的分析引擎,速度比 Hive 快很多,下面會展示具體的提升效果。
圖中展示的效果比較明顯,圖中綠色折線表示混合引擎的執行效果,黃色的是 Hive 的執行效果。基本混合引擎可以保證 85% 的質量檢測任務都會在 20s 內完成。現在 80% 的質量檢測任務都會在 5s 內完成,98% 的質量檢測任務速度都會有 79% 的提升(之前 Hive 用 915s,現在混合引擎只需 192s),可以大大提升數據質量檢測效率,不會影響數據鏈路的產出時間。
(3)數據質量平臺規則體系包含完整性、準確性、一致性、及時性。在配置規則的時候,一張表可以應用多個模板,配相應規則。規則模板和規則的區別是,規則模板已經配了相應的閾值和調度時間,以及其他規則信息,只是還沒有和表關聯,為了提升規則配置效率。這部分還和元數據平臺做了聯動:所有建表操作,都會統一在元數據平臺完成,所以元數據平臺會輸入字段約束、值閾檢查一些信息給規則模板,這時候規則模板只要和表實例關聯,就可以完成規則配置,可以大大提升質量規則提升效率。之后有規劃將數據標準管理平臺的標準作為輸入,如數據長度、碼表、值閾等等信息,這樣可以進一步節省規則配置的時間。


首先任務開發平臺里的任務對應多個輸出表,當任務被調度執行的時候,會觸發質量規則的校驗。如果規則不通過,會觸發熔斷阻塞,下游任務不會執行,讓質量問題不會進一步擴散。
(5)數據質量平臺質量報告

上圖是質量報告截圖,支持多角度質量績效分評分,并且支持用戶自定義評分依據和權重。
(6)數據質量平臺監控告警監控告警是為了及時發現數據質量問題。

問題主要分為三類: 一般問題:只需要郵件通知 重要問題:郵件+飛書通知 嚴重問題:郵件+飛書+電話通知?
(6)數據質量平臺運行現狀

目前已經接入 1500 多張表,每個月都會發生 300 次以上數據質量問題數,今年以來熔斷阻塞了 14 次,有效保障了數據質量和鏈路穩定性。
(7)數據質量平臺未來規劃

其實現在整體數據質量水平不能直接度量和觀察,所以下一步我們要規劃整體的質量治理體系,支持自驅的數據質量治理;支持 OLAP 場景的質量檢測和實時場景的數據質量檢測。我的介紹就到這里,下面將由張放介紹元數據管理平臺,歡迎。
線上的老師同學下午好,接下來將由我為大家介紹貨拉拉的元數據管理平臺。大數據體系在發展到一定規模,就會面臨:怎樣找到需要的數據,如何梳理出上下游關系,數據治理靠什么來驅動,數據資產管理等問題;元數據管理平臺就是為了解決以上這些問題。今天從以下四方面展開元數據管理平臺介紹:平臺介紹、成本治理體系、數據血緣、未來規劃。1.? 平臺介紹

平臺的建設思路是:定規范、做治理、建能力、做運營。
系統架構圖左邊展示了元數據管理平臺的基礎設施、平臺/工具和業務系統;右邊的應用層,提供數據地圖、數據血緣、數據安全等能力,支撐上層的數據倉庫、成本管理、數據分析、數據服務、數據模型等應用場景,在整個數據治理體系中扮演了非常重要的角色。

這里也對大廠的元數據平臺進行了調研,列舉了他們在元數據基建以及核心應用場景的建設情況。總體來說,大廠元數據管理核心應用場景建設都比較完善。貨拉拉元數據管理平臺對標大廠,目前處于約 50% 的水平,還處在發展階段。
2. 成本治理體系
介紹完平臺總體框架,下面介紹本次分享的重要部分,成本治理體系。降本增效目前是行業趨勢,而建設成本治理體系是數據治理中非常必要的一環。下面將介紹基于元數據平臺,貨拉拉在這方面主要做了哪些工作。

(1)以存儲治理為例,在沒有治理的情況下,主要面臨以下問題: 表數量大 增長快速 冷數據占比多:約33%的數據90天內無訪問,但是這些冷數據存儲成本消耗和標準存儲是一樣的,造成很大的成本浪費?
(2)圍繞存儲和計算成本高的問題,建設了成本治理體系。

圖中是成本治理體系的
框架: 首先建立資源預算機制,通過預算預警和限制,從部門層面控制整體成本使用。 其次,落地數據資產度量體系。能夠清晰掌握各項資源消耗,并核算成部門和個人級別的成本明細,轉換成健康分,就能非常客觀地度量成本使用情況。 并且,配合有效的輔助治理措施,對離線存儲和計算任務進行技術優化。 有了數據資產度量和輔助治理體系,再推廣資產健康分紅黑榜,對個人和部門實施獎懲措施,促使用戶和業務部門主動參與到成本治理中,提升健康度,形成良性循環,最終達到成本目標。
(3)下面具體介紹成本度量和展示的實現思路:

從下至上: 最下面是數據源層,成本消耗主要來自于計算任務產出的表、報表、標簽等數據資產,它們分散在基礎設施各處。 要度量這些資產的成本數據,需要從各個平臺或引擎采集消耗的明細數據,以個人或部門維度統計分析。 經過平臺數倉層,加工成可量化展示的成本數據,并根據這些明細數據分析轉換成存儲和任務的健康分。用戶就可以非常直觀地知道自己名下哪些任務資源消耗大,哪些表占用存儲空間大;為推動任務優化和存儲治理提供非常有利的數據支撐。相比以往需要人工核算成本賬單,現在自動化統計運營的過程,更加精確高效,也節約了人工成本。?
(4)下面再介紹輔助治理的具體方案:

冷熱分層和歸檔?
上圖左邊的曲線,是通過綜合分析歸檔,以及歸檔后數據取回的花費,得到歸檔最近 90 天數據被訪問次數和收益占比的關系圖;通過該關系圖可給到分區的冷熱分層(即熱、溫、冷、冰)定義。冰數據占比 50%,熱數據僅 15%,分別采用不同的存儲策略,分階段地對冰、冷數據進行歸檔,降低存儲成本。以下是分層和歸檔的概要設計:

各平臺系統提交的 SQL 經過引擎執行,解析為具體的分區訪問記錄,統計出分區級別的熱度信息;采集文件系統的文件記錄,得到文件的熱度信息,join得到最終的分區熱度信息表,根據該信息進行后續的歸檔工作。在平臺層支持分區溫度展示,使用戶主動進行分區歸檔工作。
生命周期管理


這是目前存儲治理的收益情況,優化前存儲呈線性快速增長,優化后存儲8 個月零增長并持續下降,目前累計節省約 54% 的存儲成本。


從引擎組件、大數據開發平臺等,采集血緣信息和對應任務信息,經實時和離線解析,包括 SQL 解析和指標/報表血緣解析等,將解析出來的輸入輸出關系落到元數據系統中,供上層查詢,并提供影像分析等能力。
元數據的未來規劃,圍繞以下四方面建設:
