1. 程式人生 > >聊一聊資料倉庫中的元資料管理系統

聊一聊資料倉庫中的元資料管理系統

原文地址

一、元資料的定義

按照傳統的定義,元資料(Metadata)是關於資料的資料。在資料倉庫系統中,元資料可以幫助資料倉庫管理員和資料倉庫的開發人員非常方便地找到他們所關心的資料;元資料是描述資料倉庫內資料的結構和建立方法的資料,可將其按用途的不同分為兩類:技術元資料(Technical Metadata)和業務元資料(Business Metadata)。

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

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

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

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

二、元資料的作用

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

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

1.元資料是進行資料整合所必需的

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

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

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

3.元資料是保證資料質量的關鍵

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

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

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

三、元資料管理現狀

由以上幾節我們瞭解到元資料幾乎可以被稱為是資料倉庫乃至商業智慧(BI)系統的“靈魂”,正是由於元資料在整個資料倉庫生命週期中有著重要的地位,各個廠商的資料倉庫解決方案都提到了關於對元資料的管理。但遺憾的是對於元資料的管理,各個解決方案都沒有明確提出一個完整的管理模式;它們提供的僅僅是對特定的區域性元資料的管理。當前市場上與元資料有關的主要工具見下圖:

如圖所示,與元資料相關的資料倉庫工具大致可分為四類:

1. 資料抽取工具;

把業務系統中的資料抽取、轉換、整合到資料倉庫中,如Ardent的DataStage、Pentaho的開源ETL產品Kettle、ETI的Extract等。這些工具僅提供了技術元資料,幾乎沒有提供對業務元資料的支援。

2. 前端展現工具:

包括OLAP分析、報表和商業智慧工具等,如Cognos的PowerPlay、Business Objects的BO,以及國內廠商帆軟的FineBI/FineReport等。它們通過把關係表對映成與業務相關的事實和維來支援多維業務檢視,進而對資料倉庫中的資料進行多維分析。這些工具都提供了業務元資料與技術元資料相對應的語義層。

3. 建模工具:

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

4. 元資料儲存工具:

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

5.元資料管理工具:

目前國內的元資料管理工具大概有三類。一是像IBM、CA等公司都提供的專門工具,比如IBM收購Ascential得到的MetaStage,CA的DecisionBase都是如此;二是像DAG的MetaCenter,開源產品Pentaho Metadata,它們不依託於某項BI產品,是一種第三方的元資料管理工具;三是像普元、石竹這樣的整合商也有自己的元資料管理工具:普元MetaCube、新炬網路元資料管理系統、石竹MetaOne等。
專門的元資料管理工具,對自家產品相容較好,一旦涉及跨系統管理,就不盡如人意了。從國內的實際應用來看,DAG的MetaCenter這一工具使用最多,目前所看到的在電信、金融領域建設的元資料管理專案基本上都是應用了這一產品。
我從網際網路上搜索了幾乎所有的元資料廠家:Pentaho開源的MetaData產品,支援原始碼下載試用,可以進行整合開發;普元MetaCube下載後,配置麻煩,目前為止還沒有調通;其他公司產品均不提供下載試用。

四、元資料管理標準

沒有規矩不成方圓。元資料管理之所以困難,一個很重要的原因就是缺乏統一的標準。在這種情況下,各公司的元資料管理解決方案各不相同。近幾年,隨著元資料聯盟MDC(Meta Data Coalition)的開放資訊模型OIM(Open Information Model)和OMG組織的公共倉庫模型CWM(Common Warehouse Model)標準的逐漸完善,以及MDC和OMG組織的合併,為資料倉庫廠商提供了統一的標準,從而為元資料管理鋪平了道路。
從元資料的發展歷史不難看出,元資料管理主要有兩種方法:

  • 對於相對簡單的環境,按照通用的元資料管理標準建立一個集中式的元資料知識庫。 
  • 對於比較複雜的環境,分別建立各部分的元資料管理系統,形成分散式元資料知識庫,然後,通過建立標準的元資料交換格式,實現元資料的整合管理。 

目前OMG家的CWM(Common Warehouse MetaModel)標準已成為元資料管理界的統一標準:
OMG是一個擁有500多會員的國際標準化組織,著名的CORBA標準即出自該組織。公共倉庫元模型(Common Warehouse Metamodel)的主要目的是在異構環境下,幫助不同的資料倉庫工具、平臺和元資料知識庫進行元資料交換。2001年3月,OMG頒佈了CWM 1.0標準。CWM模型既包括元資料儲存,也包括元資料交換,它是基於以下三個工業標準制定的:

  • UML:它對CWM模型進行建模。
  • MOF(元物件設施):它是OMG元模型和元資料的儲存標準,提供在異構環境下對元資料知識庫的訪問介面。
  • XMI(XML元資料交換):它可以使元資料以XML檔案流的方式進行交換。

原文地址