天天看點

數倉系列之中繼資料及其管理

中繼資料

本文偏理論,收集整理自網絡,記錄學習用,不代表一家之言。

概述

數倉系列之中繼資料及其管理

定義

中繼資料(Metadata)是關于資料的資料。在資料倉庫系統中,中繼資料可以幫助資料倉庫管理者和資料倉庫的開發人員非常友善地找到他們所關心的資料;中繼資料是描述資料倉庫内資料的結構和建立方法的資料,可将其按用途的不同分為兩類:技術中繼資料(Technical)和業務中繼資料(Business)。

技術中繼資料是存儲關于資料倉庫系統技術細節的資料,是用于開發和管理資料倉庫使用的資料,它主要包括以下資訊:

  • 資料倉庫結構的描述,包括倉庫模式、視圖、維、層次結構和導出資料的定義,以及資料集市的位置和内容;
  • 業務系統、資料倉庫和資料集市的體系結構和模式
  • 彙總用的算法,包括度量和維定義算法,資料粒度、主題領域、聚集、彙總、預定義的查詢與報告;
  • 由操作環境到資料倉庫環境的映射,包括源資料和它們的内容、資料分割、資料提取、清理、轉換規則和資料重新整理規則、安全(使用者授權和存取控制)。

業務中繼資料從業務角度描述資料倉庫中的資料,提供介于使用者和實際系統之間的語義層,使得不懂計算機技術的業務人員也能夠讀懂資料倉庫中的資料。主要包括以下資訊:使用者的業務術語所表達的資料模型、對象名和屬性名;通路資料的原則和資料的來源;系統所提供的分析方法以及公式和報表的資訊;具體包括以下資訊:

  • 企業概念模型:這是業務中繼資料所應提供的重要的資訊,它表示企業資料模型的高層資訊、整個企業的業務概念和互相關系。以這個企業模型為基礎,不懂資料庫技術和SQL語句的業務人員對資料倉庫中的資料也能做到心中有數。
  • 多元資料模型:這是企業概念模型的重要組成部分,它告訴業務分析人員在資料集市當中有哪些維、維的類别、資料立方體以及資料集市中的聚合規則。資料立方體表示某主題領域業務事實表和維表的多元組織形式。
  • 業務概念模型和實體資料之間的依賴:以上提到的業務中繼資料隻是表示出資料的業務視圖,這些業務視圖與實際的資料倉庫或資料庫、多元資料庫中的表、字段、維、層次等之間的對應關系也應該在中繼資料知識庫中有所展現。

作用

與其說資料倉庫是軟體開發項目,還不如說是系統內建項目,因為它的主要工作是把所需的資料倉庫工具內建在一起,完成資料的抽取、轉換和加載,OLAP分析和資料挖掘等。如下圖所示,它的典型結構由操作環境層、資料倉庫層和業務層等組成。

圖!!!!!!!!

其中,第一層(操作環境層)是指整個企業内有關業務的OLTP系統和一些外部資料源;第二層是通過把第一層的相關資料抽取到一個中心區而組成的資料倉庫層;第三層是為了完成對業務資料的分析而由各種工具組成的業務層。圖中左邊的部分是中繼資料管理,它起到了承上啟下的作用,具體展現在以下幾個方面:

  1. 中繼資料是進行資料內建所必需的

    資料倉庫最大的特點就是它的內建性。這一特點不僅展現在它所包含的資料上,還展現在實施資料倉庫項目的過程當中。一方面,從各個資料源中抽取的資料要按照一定的模式存入資料倉庫中,這些資料源與資料倉庫中資料的對應關系及轉換規則都要存儲在中繼資料知識庫中;另一方面,在資料倉庫項目實施過程中,直接建立資料倉庫往往費時、費力,是以在實踐當中,人們可能會按照統一的資料模型,首先建設資料集市,然後在各個資料集市的基礎上再建設資料倉庫。不過,當資料集市數量增多時很容易形成“蜘蛛網”現象,而中繼資料管理是解決“蜘蛛網”的關鍵。如果在建立資料集市的過程中,注意了中繼資料管理,在內建到資料倉庫中時就會比較順利;相反,如果在建設資料集市的過程中忽視了中繼資料管理,那麼最後的內建過程就會很困難,甚至不可能實作。

  2. 中繼資料定義的語義層可以幫助使用者了解資料倉庫中的資料

    最終使用者不可能象資料倉庫系統管理者或開發人員那樣熟悉資料庫技術,是以迫切需要有一個“翻譯”,能夠使他們清晰地了解資料倉庫中資料的含意。中繼資料可以實作業務模型與資料模型之間的映射,因而可以把資料以使用者需要的方式“翻譯”出來,進而幫助最終使用者了解和使用資料。

  3. 中繼資料是保證資料品質的關鍵

    資料倉庫或資料集市建立好以後,使用者在使用的時候,常常會産生對資料的懷疑。這些懷疑往往是由于底層的資料對于使用者來說是不“透明”的,使用者很自然地對結果産生懷疑。而借助中繼資料管理系統,最終的使用者對各個資料的來龍去脈以及資料抽取和轉換的規則都會很友善地得到,這樣他們自然會對資料具有信心;當然也可便捷地發現資料所存在的品質問題。甚至國外有學者還在中繼資料模型的基礎上引入品質維,從更高的角度上來解決這一問題。

  4. 中繼資料可以支援需求變化

    随着資訊技術的發展和企業職能的變化,企業的需求也在不斷地改變。如何構造一個随着需求改變而平滑變化的軟體系統,是軟體工程領域中的一個重要問題。傳統的資訊系統往往是通過文檔來适應需求變化,但是僅僅依靠文檔還是遠遠不夠的。成功的中繼資料管理系統可以把整個業務的工作流、資料流和資訊流有效地管理起來,使得系統不依賴特定的開發人員,進而提高系統的可擴充性。

中繼資料管理

現狀

中繼資料可以被稱為是資料倉庫系統的靈魂,中繼資料在整個資料倉庫生命周期中有着重要的地位,各個廠商的資料倉庫解決方案都提到關于對中繼資料的管理。但是對于中繼資料的管理,各個解決方案都沒有明确提出一個完整的管理模式;目前提供的僅僅是對局部中繼資料的管理。

中繼資料相關工具大緻可以分為五類:

  1. 資料抽取工具

    将業務系統中的資料抽取、轉換、內建到資料倉庫中,如中軟資料的ETL産品SEDWA、Pentaho的開源ETL産品Kettle等。

  2. 前端展現工具

    系統可以進行OLAP分析、報表和商業智能工具等,如Cognos的PowerPlay及帆軟的FineBI/FineReport,中軟資料的SoftEasyBI等。它們通過把關系表映射成與業務相關的事實表和次元表來支援多元業務,其中中軟資料的SoftEasyBI和自家ETL産品SEDWA可以全面支援微軟分析服務,包含SSAS服務和表格模型,進而對資料倉庫中的資料進行多元分析。這些工具都提供了業務中繼資料與技術中繼資料相對應的語義層。

  3. 模組化工具

    為非技術人員準備的業務模組化工具,這些工具可以提供更高層的與特定業務相關的語義。如CA的ERwin、Sysbase的PowerDesigner以及Rational Rose等。

  4. 中繼資料存儲工具

    中繼資料通常存儲在專用的資料庫中,該資料庫就如同一個“黑盒子”,外部無法知道這些工具所用到和産生的中繼資料是如何存儲的。中繼資料知識庫(Metadata Repository)工具,它們獨立于其它工具,為中繼資料提供一個集中的存儲空間。包括微軟的Repository,Ardent的MetaStage、Sybase的WCC和中軟資料的SEDWA等。

  5. 中繼資料管理工具
  1. IBM、CA等公司都提供的專門中繼資料管理工具,比如IBM收購Ascential得到的MetaStage,CA的DecisionBase都是如此;
  2. DAG的MetaCenter,開源産品Pentaho Metadata,它們不依托于某項BI産品,是一種第三方的中繼資料管理工具;
  3. 公司開發收費中繼資料管理平台:中軟資料SEDWA、普元MetaCube、石竹MetaOne等。

标準

數倉系列之中繼資料及其管理

近幾年,随着中繼資料聯盟MDC(Meta Data Coalition)的開放資訊模型OIM(Open Information Model)和OMG組織的公共倉庫模型CWM(Common Warehouse Model)标準的逐漸完善,以及MDC和OMG兩個組織的合并,為資料倉庫廠商提供了統一的标準,為中繼資料管理提供奠基石。

中繼資料管理主要有兩種方法:

  1. 對于相對簡單的環境,按照通用的中繼資料管理标準建立一個集中式的中繼資料知識庫
  2. 對于比較複雜的環境,分别建立各部分的中繼資料管理系統,形成分布式中繼資料知識庫,然後,通過建立标準的中繼資料交換格式,實作中繼資料的內建管理

目前OMG家的CWM(Common Warehouse MetaModel,公共倉庫元模型)标準已成為中繼資料管理界的統一标準。OMG是一個國際标準化組織,CORBA标準即出自該組織。CWM的主要目的是在異構環境下,幫助不同的資料倉庫工具、平台和中繼資料知識庫進行中繼資料交換。2001年3月,OMG頒布CWM 1.0标準。CWM模型既包括中繼資料存儲,也包括中繼資料交換,基于三個工業标準制定:

  1. UML:它對CWM模型進行模組化
  2. MOF(元對象設施)
  1. 它是 OMG 元模型和中繼資料的存儲标準,提供在異構環境下對中繼資料知識庫的通路接口
  2. 為構造模型和元模型提供可擴充的架構,并提供存取中繼資料的程式接口
  1. XMI(XML中繼資料交換):它可以使中繼資料以XML檔案流的方式進行交換。增強CWM的通用性

OMG中繼資料知識庫體系結構

數倉系列之中繼資料及其管理

CWM為資料倉庫和BI工具之間共享中繼資料,制定一整套關于文法和語義的規範,主要包含以下四個方面的規範:

  • 元模型(Metamodel):描述資料倉庫系統的模型
  • XML:CWM元模型的XML表示
  • DTD:DW/BI共享中繼資料的交換格式
  • IDL:DW/BI共享中繼資料的應用程式通路接口(API)

功能

  1. 資料地圖

    資料地圖展現是以拓撲圖的形式對資料系統的各類資料實體、資料處理過程中繼資料進行分層次的圖形化展現,并通過不同層次的圖形展現粒度控制,滿足開發、運維或者業務上不同應用場景的圖形查詢和輔助分析需要

  2. 中繼資料分析
  1. 血緣分析

    血緣(血統)分析是指從某一實體出發,往回追溯其處理過程,直到資料系統的資料源接口。對于不同類型的實體,其涉及的轉換過程可能有不同類型,如:對于底層倉庫實體,涉及的是ETL處理過程;而對于倉庫彙總表,可能既涉及ETL處理過程,又涉及倉庫彙總處理過程;而對于名額,則除了上面的處理過程,還涉及名額生成的處理過程。資料源接口實體由源系統提供,作為資料系統的資料輸入,其它的資料實體都經過一個或多個不同類型的處理過程。血緣分析正是提供了這樣一種功能,可以讓使用者根據需要了解不同的處理過程,每個處理過程具體做什麼,需要什麼樣的輸入,又産生什麼樣的輸出。

  2. 影響分析

    影響分析是指從某一實體出發,尋找依賴該實體的處理過程實體或其他實體。如果需要可以采用遞歸方式尋找所有的依賴過程實體或其他實體。該功能支援當某些實體發生變化或者需要修改時,評估實體影響範圍。

  3. 實體關聯分析

    實體關聯分析是從某一實體關聯的其它實體和其參與的處理過程兩個角度來檢視具體資料的使用情況,形成一張實體和所參與處理過程的網絡,進而進一步了解該實體的重要程度。可以用來支撐需求變更影響評估的應用。

  4. 實體差異分析

    實體差異分析是對中繼資料的不同實體進行檢查,用圖形和表格的形式展現它們之間的差異,包括名字、屬性及資料血緣和對系統其他部分影響的差異等,在資料系統中存在許多類似的實體。這些實體(如資料表)可能隻有名字上或者是在屬性中存在微小的差異,甚至有部分屬性名字都相同,但處于不同的應用中。由于各種原因,這些微小的差異直接影響了資料統計結果,資料系統需要清楚了解這些差異。本功能有助于進一步統一統計口徑,評估近似實體的差異

  5. 名額一緻性分析

    名額一緻性分析是指用圖形化的方式來分析比較兩個名額的資料流圖是否一緻,進而了解名額計算過程是否一緻。該功能是名額血緣分析的一種具體應用。名額一緻性分析可以幫助使用者清楚地了解到将要比較的兩個名額在經營分析資料流圖中各階段所涉及的資料對象和轉換關系是否一緻,幫助使用者更好地了解名額的來龍去脈,清楚了解分布在不同部門且名稱相同的名額之間的差異,進而提高使用者對名額值的信任。

  1. 輔助應用優化

    中繼資料對資料系統的資料、資料加工過程以及資料間的關系提供了準确的描述,利用血緣分析、影響分析和實體關聯分析等中繼資料分析功能,可以識别與系統應用相關的技術資源,結合應用生命周期管理過程,輔助進行資料系統的應用優化

  2. 輔助安全管理

    企業資料平台所存儲的資料和提供的各類分析應用,涉及到公司經營方面的各類敏感資訊。是以在資料系統建設過程中,須采用全面的安全管理機制和措施來保障系統的資料安全。

    資料系統安全管理子產品負責資料系統的資料敏感度、客戶隐私資訊和各環節審計日志記錄管理,對資料系統的資料通路和功能使用進行有效監控。為實作資料系統對敏感資料和客戶隐私資訊的通路控制,進一步實作權限細化,安全管理子產品應以中繼資料為依據,由中繼資料管理子產品提供敏感資料定義和客戶隐私資訊定義,輔助安全管理子產品完成相關安全管控操作。

  3. 基于中繼資料的開發管理

    資料系統項目開發的主要環節包括:需求分析、設計、開發、測試和上線。開發管理應用可以提供相應的功能,對以上各環節的工作流程、相關資源、規則限制、輸入輸出資訊等提供管理和支援。

工具

Apache Atlas

強大的中繼資料管理工具。

預設情況下,Apache Atlas使用​​​JanusGraph​​作為圖形存儲庫,并且是目前唯一可用的圖形存儲庫實作。

安裝參考​​Apache Atlas - 強大的中繼資料管理工具​​

LinkedIn wherehows

參考

繼續閱讀