日日碰狠狠躁久久躁96avv-97久久超碰国产精品最新-婷婷丁香五月天在线播放,狠狠色噜噜色狠狠狠综合久久 ,爱做久久久久久,高h喷水荡肉爽文np肉色学校

睿治

智能數據治理平臺

睿治作為國內功能最全的數據治理產品之一,入選IDC企業數據治理實施部署指南。同時,在IDC發布的《中國數據治理市場份額》報告中,連續四年蟬聯數據治理解決方案市場份額第一。

詳解如何在數倉中管理元數據

時間:2022-02-18來源:梔子瀏覽數:234

? ? ? ?元數據管理是企業數據治理的基礎,是數據倉庫建設的關鍵。作為一名數據人,首要任務就是理解元數據管理。

? ? ? ?本篇文章將為大家梳理元數據的概念,介紹元數據管理在數據倉庫的地位、場景及實踐工具。

? ? ? ?01什么是元數據管理

? ? ? ?1、什么是元數據?

? ? ? ?元數據(Metadata),又稱中介數據、中繼數據,為描述數據的數據(data about data)。抽象的描述:一組用于描述數據的數據組,該數據組的一切信息都描述了該數據的某方面特征,則該數據組即可被稱為元數據。舉幾個簡單例子: 如果一本書是一個“數據",那么它的書名、封面、出版社、作者、總頁碼就是它的“元數據”。 如果一個電影是一個“數據”,那么它的總時長、制作人、總導演、演員列表就是它的“元數據”。 如果數據庫中某個表是一個”數據”,那么它的列名、列類型、列長度、表注釋就是它的"元數據"。 只要有一類"事物",就可以定義它的“元數據”。大多數時候,元數據可以根據代表意義的不同分為業務元數據和技術元數據。

? ? ? ?2、什么是數據倉庫?

? ? ? ?數據倉庫 ,由數據倉庫之父比爾·恩門(Bill Inmon)于 1990 年提出,主要功能仍是將組織透過資訊系統之聯機事務處理(OLTP)經年累月所累積的大量資料,透過數據倉庫理論所特有的資料儲存架構,做有系統的分析整理,以利各種分析方法如聯機分析處理、數據挖掘(Data Mining)之進行,并進而支持如決策支持系統(DSS)、主管資訊系統(EIS)之創建,幫助決策者能快速有效的自大量資料中,分析出有價值的資訊,以利決策擬定及快速回應外在環境變動,幫助建構商業智能BI)。

? ? ? ?3、什么是數據倉庫的元數據管理?

? ? ? ?數倉中的元數據,主要記錄各主題的定義、不同層級間的映射關系、監控數據倉庫的數據狀態及 ETL 的任務運行狀態。一般會通過元數據資料庫來統一地存儲和管理元數據,其主要目的是使數據倉庫的設計、部署、操作和管理能達成協同和一致。元數據是數據倉庫管理系統的重要組成部分,元數據管理是企業級數據倉庫中的關鍵組件,貫穿數據倉庫構建的整個過程,直接影響著數據倉庫的構建、使用和維護。

? ? ? ?02為什么數倉要進行元數據管理

? ? ? ?1、建設數據倉庫所必須?

? ? ? ?數據倉庫是由外部數據、業務數據以及文檔資料通過某些 ETL 工具得到的,如果沒有一個明確、清晰的規則,根本不可能實現這個過程。

? ? ? ?2、幫助快速理解數倉系統?

? ? ? ?一方面,數據倉庫本質上是一個部門甚至一個公司的重要項目,開發時間冗長。中間不可避免的會產生人員流動,如果沒有清楚的元數據,那會對整個系統乃至整個項目造成重大影響;另一方面,數據倉庫做為整個部門、公司的分析數據出口,并不僅僅對數據人員服務。DM 層對業務人員, DIM 對其他開發人員都是不可避免的。如果有清楚的元數據來說明數倉系統,就會節約雙方大量的溝通時間。

? ? ? ?3、高效精準溝通

? ? ? ?一方面,元數據中的管理元數據會記錄不同用戶、角色、部門的數據權限。如果有數據需要進行通知,則可以快速查詢系統進行群發郵件等方式進行溝通,從而避免了造成溝通環節的缺人和多人情況發生。另一方面,在與產品溝通業務或是與研發溝通接口時,可以根據業務元數據,確認彼此溝通的指標、維度含義。從而在根源上避免交流的歧義。進而提高溝通效率。

? ? ? ?4、保證數據質量

? ? ? ?理想的元數據做到了對數據倉庫結構的描述,倉庫模式試圖,維,度量,層次結構,到處數據庫的定義,以及數據集市的位置和內容。因此,我們可以很確定的判斷哪些數據是肯定準確無誤的、哪些數據是可能有問題的、哪些數據是肯定有問題的。簡單的說就是每一個字段都應該有它的取值范圍、業務定義等信息,元數據定義好了自然就可以應用到數據質量檢測、評估等方面,進而通過數據質量管理流程真正提高企業的數據質量。

? ? ? ?5、降低數據系統建設成本?

? ? ? ?假如元數據建設完備,所以取得信息會更準確快捷,使數據系統建設不返工或少返工,減少分析工作量,加強各方的統一理解以及溝通效率,進而使開發成本最小。

? ? ? ?6、快速分析變更影響?

? ? ? ?因元數據被集中維護并管理引用關系,當發生變更時,可以通過元數據管理系統以實時分析出其所影響的業務功能、應用系統、涉及人員、是否涉及監管等影響信息。

? ? ? ?7、為未來做好準備?

? ? ? ?大數據、人工智能、數據湖、數據中臺、商業智能等企業的戰略級應用系統能夠依賴良好的元數據管理而發揮出其應有的效果。

? ? ? ?03數倉中有哪些元數據

? ? ? ?元數據貫穿整個數據倉庫,根據情況可以分為三種:業務元數據、技術元數據和管理元數據。

? ? ? ?1、業務元數據?

? ? ? ?業務元數據主要描述 ”數據”背后的業務含義,從業務角度描述業務領域的相關概念、關系——包括業務術語和業務規則。 主題定義:每段 ETL、表背后的歸屬業務主題。 業務描述:每段代碼實現的具體業務邏輯。 標準指標:類似于 BI 中的語義層、數倉中的一致性事實;將分析中的指標進行規范化。 標準維度:同標準指標,對分析的各維度定義實現規范化、標準化。 業務元數據,在實際業務中,需要不斷的進行維護且與業務方進行溝通確認。

? ? ? ?2、技術元數據?

? ? ? ?指技術細節相關的概念、關系和規則,包括對數據結構、數據處理方面的描述。以及數據倉庫、ETL、前端展現等技術細節的信息。數據倉庫中的技術元數據一般包含以下 4 大系統:數據源元數據、ETL元數據、數據倉庫元數據、BI 元數據。數據源元數據例如:數據源的 IP、端口、數據庫類型;數據獲取的方式;數據存儲的結構;原數據各列的定義及 key 對應的值。ETL元數據根據 ETL 目的的不同,可以分為兩類:數據清洗元數據;數據處理元數據。 數據清洗元數據:數據清洗,主要目的是為了解決掉臟數據及規范數據格式。因此此處元數據主要為:各表各列的"正確"數據規則;默認數據類型的"正確"規則。 數據處理元數據:數據處理,例如常見的表輸入表輸出;非結構化數據結構化;特殊字段的拆分等。源數據到數倉、數據集市層的各類規則。比如內容、清理、數據刷新規則。

? ? ? ?數據倉庫元數據

? ? ? ?數據倉庫結構的描述,包括倉庫模式、視圖、維、層次結構及數據集市的位置和內容;

? ? ? ?業務系統、數據倉庫和數據集市的體系結構和模式等。

? ? ? ?BI 元數據

? ? ? ?匯總用的算法、包括各類度量和維度定義算法。數據粒度、主題領域、聚集、匯總、預定義的查詢與報告。

? ? ? ?3、管理元數據?

? ? ? ?管理領域相關,包括管理流程、人員組織、角色職責等。也有很多觀點建議將管理元數據拆分融入業務元數據和技術元數據中。

? ? ? ?04如何進行數倉元數據管理

? ? ? ?任何系統的元數據管理建設都是十分艱難的,數據倉庫更是如此;但另一方面,這個建設過程又是非常重要的。我們暫以 CWM 標準作為數據倉庫的元數據標準參考,在實際建設中進行借鑒,這樣看起來更專業。 CWM (CommonWarehouseMetamodel公共倉庫元模型)是 OMG 組織在數據倉庫系統中定義了一套完整的元模型體系結構,用于數據倉庫構建和應用的元數據建模。公共倉庫元模型指定的接口,可用于啟用交換倉庫之間元數據倉庫和業務智能工具、倉庫平臺、應用的元數據建模和倉庫元數據存儲在分布式異構環境 CWM 元模型由一系列子元模型構成。由于 CWM 制定時間是 2001 年,且過于細節深入,因此筆者認為其更適合作為開發參考而非開發標準。 由于元數據包含極廣,我們在建立元數據管理系統的時候,絕對不能盲目追求大而全、一步到位,要堅持目標驅動的原則,在實施的時候要采取增量式、漸進式的建設原則。具體的建設步驟如下: 在建設數據倉庫系統的初期,只需確定源系統的元數據構成和 數倉我們想要實現的元數據內容:比如,我們只想通過元數據來管理數據倉庫中數據的轉換過程,以及有關數據的抽取路線,以使數據倉庫開發和使用人員明白倉庫中數據的整個歷史過程。 確定源系統和元數據構成后,先將源系統的元數據整理并記錄,可以用文檔記錄;也可以存入關系型數據庫中。 隨著數據倉庫系統的建設,逐步將需要的元數據補充錄入——例如 DM 的語義層、ETL 的同步規則。 數據倉庫建設完成后,對元數據進行結構化、標準化儲存。 總之,建立元數據管理系統一定要堅持關注標準,又不被標準所束縛的原則,建立符合自身目標的元數據管理系統。

? ? ? ?05元數據的應用場景

? ? ? ?1、影響分析?

? ? ? ?在開發中,我們經常會遇到以下問題:如果我要改動某個表、ETL,會造成怎樣的影響? 如果沒有元數據,那我們可能需要遍歷所有的腳本、數據。才能得到想要的答案;而如果有成熟的元數據管理,那我們就可以直接得到答案,節省大量時間。

? ? ? ?2、血緣分析?

? ? ? ?血緣分析是一種技術手段,用于對數據處理過程的全面追蹤,從而找到某個數據對象為起點的所有相關元數據對象以及這些元數據對象之間的關系。元數據對象之間的關系特指表示這些元數據對象的數據流輸入輸出關系。在元數據管理系統成型后,我們便可以通過血緣分析來對數據倉庫中的數據健康、數據分布、集中度、數據熱度等進行分析。血緣分析是 data science 非常重要的應用,未來筆者會單獨展開介紹。?

? ? ? ?3、ETL 自動化管理?

? ? ? ?在數倉中,很大一部分 ETL 都是枯燥重復的步驟。例如源系統-ODS 層的:表輸入——表輸出。又比如 ODS-DW:SQL 輸入——數據清洗——數據處理——表輸出。以上的規則其實就屬于一部分元數據。 那理論上完全可以實現,寫好固定腳本,然后通過前端選擇——或 api 接口。進而對重復的 ETL 實現自動化管理,降低 ETL 開發的時間成本。?

? ? ? ?4、數據質量管理?

? ? ? ?數據清洗的邏輯,簡單的說可以分為不同的數據類型和指定的特殊處理列。我們只需指定不同數據類型的默認清洗規則,和部分特殊列的特殊處理邏輯,即可實現智能快捷的數據清洗。數據質量管理,屬于?數據治理?與?元數據管理?交集,更偏向數據治理方面。未來也會展開更詳細介紹。?

? ? ? ?5、數據安全管理?

? ? ? ?在阿里推崇的數據中臺中,一切數據接口指標,都會從數據倉庫中出口。因此理論上,我們只需在此處的元數據中對管理元數據的權限進行配置,即可實現全公司的數據安全管理。

? ? ? ?06常見的元數據管理工具

? ? ? ?1、Apache Atlas

? ? ? ?Apache Atlas 是 Apache 基金會的孵化項目,是 Hadoop 生態圈的數據治理和元數據框架。Atlas 是一套核心基礎治理服務的集合,有很好的伸縮性和可擴展性,能夠滿足企業對 Hadoop 生態系統的多樣性需求,并能和企業的數據生態系統集成。它為 Hadoop 集群提供了包括數據分類、集中策略引擎、數據血緣、安全和生命周期管理在內的元數據治理核心能力。?

? ? ? ?但 atlas 的缺點是:只能對 hadoop 的元數據進行管理(雖然也是連的 Mysql ),對傳統數據庫的支持力度非常小;同時血緣分析也只支持特定的數據庫。

? ? ? ?2、Wherehows?

? ? ? ?Wherehows 定位于元數據倉庫,元數據存儲于 mysql 中,它從不同的源系統中采集元數據,并進行標準化和建模,從而作為元數據倉庫完成血緣分析。由 linkedin 開源。支持 Docker 部署。

? ? ? ?優勢: 支持元數據歷史版本及對比分析。 一站式的元數據分析管理系統。 劣勢: 支持的源系統比較少 開源版本僅支持 Azkaban 調度任務的血緣分析。其他調度任務僅能獲得元數據信息,而沒有血緣信息。 血緣分析較粗,不支持列級血緣。如 HDFS 僅能顯示數據文件之間的血緣。 Web UI 僅提供查詢能力,相關配置需要調用 API 接口。 缺乏用戶、權限管理能力。 這個工具最大的問題是開發不完善,準確的說,筆者還未看到有人安裝成功過。 3、其他 元數據管理系統的建設,對整個公司都有著非常高的需求,因此其他系統會很難找。而收費的例如 informatica 等產品,又很難拿到實際 demo 來測試。07總結與展望元數據管理系統,是對一家公司數據更高的考驗,想要搭建成功,至少滿足以下條件: 整個公司數據的集成——數據倉庫的搭建 整個公司業務流程的完善——"業務中臺"的實現 整個公司技術開發的統一——"技術中臺"的實現 如果說數據倉庫是數據的集成,那元數據管理系統就是整個公司業務、技術、管理的統一。從這個角度來看,元數據管理系統的定位是高于數據倉庫的。阿里所推崇的數據中臺,理念上比較接近 數據倉庫+元數據管理。 但換個角度,任何業務、技術、數據的規范過程,短時間內都會對實際工作造成負面的影響。不是所有人都能理解規范化所帶來的優點,這里也需要一定權衡和反復的溝通。 用 ETL 的開發舉一個例子。 全部用 SQL 解決——開發很快,結果也很少出錯。但未來可能要讀一個上千行的 SQL。 全部用 python 解決——開發、維護的代碼門檻較高,且性能相比 SQL 相差何止百倍。 python 來調度 SQL ——筆者較為推崇的方法,將處理邏輯變為 python 的函數、類,但底層邏輯使用 SQL 實現。從而達到一個相對平衡的角度。 因此,筆者認為,無論是數據人員還是 IT 開發、測試甚至產品項目業務,都應有元數據的概念,記錄有價值的元數據,利己利人。如果最終決定進行元數據管理系統的建設,也會節約大量時間。


(部分內容來源網絡,如有侵權請聯系刪除)
立即申請數據分析/數據治理產品免費試用 我要試用
customer

在線咨詢

在線咨詢

點擊進入在線咨詢