DW資料倉儲的一些概念

arthurtangel發表於2012-03-21
Bill Inmon,資料倉儲之父
Building the Data Warehouse《建立資料倉儲》
資料倉儲是在企業管理和決策中面向主題的、整合的、與時間相關的、不可修改的資料集合。
主張建立資料倉儲時採用自上而下(DWDM)方式,以第3正規化進行資料倉儲模型設計。
建設資料倉儲時需要較長的時間。

後推出新的BI架構CIF(Corporation information factory),把Kimball的資料集市包括了進來。

1、“Building the Data Warehouse ”(《建立資料倉儲》)
2、“Corporation information factory”(《企業資訊工廠》)
3、“Govment information factory”《政府資訊工廠》
4、“The Data Model Resource Book: A Library of Logical Data and Data Warehouse Designs”(《資料倉儲建模》)
5、“Managing the Data Warehouse”(《資料倉儲管理》)
6、“Data Warehousing for E-Business”(《電子商務中的資料倉儲技術》)

Ralph Kimball,維度建模方法論
The DataWarehouse Toolkit《資料倉儲工具箱》
資料倉儲僅僅是構成它的資料集市的聯合,可以通過一系列維數相同的資料集市遞增地構建資料倉儲。
主張建立資料倉儲時採用自下而上(DMDW)方式,力推資料集市建設,以維度建模方法論進行資料倉儲模型設計。
建設資料倉儲時較快。

資料倉儲維度建模方法強調由業務出發,根據實際的資料分析需求,設計維度模型的事實表和維表,在整個資料倉儲中建立統一一致的維度。
《維度建模完全指南》中講述了四步法設計進行維度模型的設計:
1,選取業務處理
2,定義事實表的粒度
3,選定維度
4,確定事實

《維度建模完全指南》
《資料倉儲生命週期工具箱(The Data Warehouse Lifecycle Toolkit)》
《資料倉儲工具箱(The Data Warehouse Toolkit)》

資料倉儲(Data Warehouse)是一個面向主題的(Subject Oriented)、整合的(Integrate)、相對穩定的(Non-Volatile)、反映歷史變化(Time Variant)的資料集合,用於支援管理決策。

決策支援系統(decision support system ,簡稱dss):http://baike.baidu.com/view/8048.htm
是輔助決策者通過資料、模型和知識,以人機互動方式進行半結構化或非結構化決策的計算機應用系統。它是管理資訊系統(mis)向更高一級發展而產生的先進資訊管理系統。它為決策者提供分析問題、建立模型、模擬決策過程和方案的環境,呼叫各種資訊資源和分析工具,幫助決策者提高決策水平和質量。


ods,運算元據儲存(operational data storage),主要作用是源系統與DW之間的隔層,轉移部分業務的明細查詢。存放當前或接近當前的資料,可修改更新。
edw,企業資料倉儲(enterprise data warehouse),儲存歷史資料,一般不可修改。ODS和DW的區別主要體現資料的可變性、當前性、穩定性、彙總度上。
dm,資料集市(data mart)
etl,多資料來源的抽取,轉換,加截(抽取:增量,全量,轉換:垃級資料清理,資料型別一致等標準化、合法化工作,載入:truncate and insert,update and insert,append,keep history change拉鍊)
高內聚低耦合:http://baike.baidu.com/view/3082578.htm
高內聚低耦合,是軟體工程中的概念,是判斷設計好壞的標準,主要是物件導向的設計,主要是看類的內聚性是否高,耦合度是否低。
內聚就是一個模組內各個元素彼此結合的緊密程度,高內聚就是一個模組內各個元素彼此結合的緊密程度高。
所謂高內聚是指一個軟體模組是由相關性很強的程式碼組成,只負責一項任務,也就是常說的單一責任原則。
耦合:一個軟體結構內不同模組之間互連程度的度量(耦合性也叫塊間聯絡。指軟體系統結構中各模組間相互聯絡緊密程度的一種度量。模組之間聯絡越緊密,其耦合性就越強,模組的獨立性則越差,模組間耦合的高低取決於模組間介面的複雜性,呼叫的方式以及傳遞的資訊。) 對於低耦合,粗淺的理解是:
  一個完整的系統,模組與模組之間,儘可能的使其獨立存在。
  也就是說,讓每個模組,儘可能的獨立完成某個特定的子功能。
  模組與模組之間的介面,儘量的少而簡單。
  如果某兩個模組間的關係比較複雜的話,最好首先考慮進一步的模組劃分。
  這樣有利於修改和組合。[1]



ETL隨筆(一,二,三,四),alidw.cn,ETL隨筆(一)http://www.cnblogs.com/sanpoye/archive/2012/03/19/2405892.html

ETL模型設計:
http://www.alidw.com/?p=309

星型模型:星形模式通過使用一個包含主題的事實表和多個包含事實的非正規化描述的維度表來支援各種決策查詢。星形模型可以採用關係型資料庫結構,模型的核心是事實表,圍繞事實表的是維度表。通過事實表將各種不同的維度表連線起來,各個維度表都連線到中央事實表。維度表中的物件通過事實表與另一維度表中的物件相關聯這樣就能建立各個維度表物件之間的聯絡。每一個維度表通過一個主鍵與事實表進行連線。

http://www.360doc.com/content/11/0221/20/3356862_94916326.shtml
星形模式是一種多維的資料關係,它由一個事實表(Fact Table)和一組維表(Dimension Table)組成。每個維表都有一個維作為主鍵,所有這些維的主鍵組合成事實表的主鍵。事實表的非主鍵屬性稱為事實(Fact),它們一般都是數值或其他可以進行計算的資料;而維大都是文字、時間等型別的資料,按這種方式組織好資料我們就可以按照不同的維(事實表主鍵的部分或全部)來對這些事實資料進行求和(summary)、求平均(average)、計數(count)、百分比(percent)的聚集計算,甚至可以做20~80分析。這樣就可以從不同的角度數字來分析業務主題的情況。)
在多維分析的商業智慧解決方案中,根據事實表和維度表的關係,又可將常見的模型分為星型模型和雪花型模型。在設計邏輯型資料的模型的時候,就應考慮資料是按照星型模型還是雪花型模型進行組織。
星型架構是一種非正規化的結構,多維資料集的每一個維度都直接與事實表相連線,不存在漸變維度,所以資料有一定的冗餘,如在地域維度表中,存在國家 A 省 B 的城市 C 以及國家 A 省 B 的城市 D 兩條記錄,那麼國家 A 和省 B 的資訊分別儲存了兩次,即存在冗餘。


雪花模型: 雪花模型是對星形模型的擴充套件,每一個維度都可以向外連線多個詳細類別表。在這種模式中,維度表除了具有星形模型中維度表的功能外,還連線對事實表進行詳細描述的詳細類別表,詳細類別表通過對事實表在有關維上的詳細描述達到了縮小事實表和提高查詢效率的目的。
雪花模型對星形模型的維度表進一步標準化,對星形模型中的維度表進行了規範化處理。雪花模型的維度表中儲存了正規化的資料,這種結構通過把多個較小的標準化表(而不是星形模型中的大的非標準化表)聯合在一起來改善查詢效能。由於採取了標準化及維的低粒度,雪花模型提高了資料倉儲應用的靈活性。
這些連線需要花費相當多的時間。一般來說,一個雪花形圖表要比一個星形圖表效率低。

http://www.360doc.com/content/11/0221/20/3356862_94916326.shtml
當有一個或多個維表沒有直接連線到事實表上,而是通過其他維表連線到事實表上時,其圖解就像多個雪花連線在一起,故稱雪花模型。雪花模型是對星型模型的擴充套件。它對星型模型的維表進一步層次化,原有的各維表可能被擴充套件為小的事實表,形成一些區域性的 " 層次 " 區域,這些被分解的表都連線到主維度表而不是事實表。如圖 2-3,將地域維表又分解為國家,省份,城市等維表。它的優點是 : 通過最大限度地減少資料儲存量以及聯合較小的維表來改善查詢效能。雪花型結構去除了資料冗餘。


星型模型因為資料的冗餘所以很多統計查詢不需要做外部的連線,因此一般情況下效率比雪花型模型要高。星型結構不用考慮很多正規化的因素,設計與實現都比較簡單。 雪花型模型由於去除了冗餘,有些統計就需要通過表的聯接才能產生,所以效率不一定有星型模型高。正規化也是一種比較複雜的過程,相應的資料庫結構設計、資料的 ETL、以及後期的維護都要複雜一些。因此在冗餘可以接受的前提下,實際運用中星型模型使用更多,也更有效率。




星座模式: 一個複雜的商業智慧應用往往會在資料倉儲中存放多個事實表,這時就會出現多個事實表共享某一個或多個維表的情況,這就是事實星座,也稱為星系模式(galaxy schema)。

資料集市:資料集市面向企業中的某個部門(或某個主題)是從資料倉儲中劃分出來的,這種劃分可以是邏輯上的,也可以是物理上的。
資料倉儲中存放了企業的整體資訊,而資料集市只存放了某個主題需要的資訊,其目的是減少資料處理量,使資訊的利用更加快捷和靈活。
資料倉儲由於是企業範圍的,能對多個相關的主題建模,所以在設計其資料構成時一般採用星系模式。


維度表:是多維資料集的結構性特性。它們是事實資料表中用來描述資料的分類的有組織層次結構(級別)。這些分類和級別分別描述了一些相似的成員集合,使用者將基於這些成員集合進行分析。
度量值:在多維資料集中,度量值是一組值,這些值基於多維資料集的事實資料表中的一列,而且通常為數字。此外,度量值是所分析的多維資料集的中心值。

歷史拉鍊表:歷史拉鍊表表是針對資料倉儲設計中表儲存資料的方式而定義的,顧名思義,所謂拉鍊,就是記錄歷史。記錄一個事物從開始,一直到當前狀態的所有變化的資訊。歷史拉鍊表的更新策略,注意開始時間,結束時間的變化。

當前表:這種表不需要儲存歷史變化的軌跡,只需要保證表中的記錄最全、當前狀態最新就可以了。


寬表:所謂寬表就是,基於某個實體分析物件而建立的一個邏輯資料體系,由實體的維度、描述資訊、以及基於這個實體一系列度量組成。它是一個邏輯的概念,在物理實現中不可能就針對一個實體物件建立一個大寬表。http://www.alidw.com/?p=1674


緩慢變化維:http://baike.baidu.com/view/4409615.htm,解決方法:http://www.docin.com/p-286735270.html
快速變化維:
漸變維度:指這個維的變化是多個關係的,一般是有層次關係的。非漸變維度則指該維度為一張關係表,層次關係也是在一張表體系。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/11990065/viewspace-719182/,如需轉載,請註明出處,否則將追究法律責任。

相關文章