數(shù)據(jù)倉庫模型的設計_第1頁
數(shù)據(jù)倉庫模型的設計_第2頁
數(shù)據(jù)倉庫模型的設計_第3頁
數(shù)據(jù)倉庫模型的設計_第4頁
數(shù)據(jù)倉庫模型的設計_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、2.5數(shù)據(jù)倉庫模型的設計數(shù)據(jù)倉庫模型的設計大體上可以分為以下三個層面的設計151:.概念模型設計;.邏輯模型設計;.物理模型設計;下面就從這三個層面分別介紹數(shù)據(jù)倉庫模型的設計。2.5.1 概念模型設計進行概念模型設計所要完成的工作是:<1>界定系統(tǒng)邊界<2>確定主要的主題域及其內(nèi)容概念模型設計的成果是,在原有的數(shù)據(jù)庫的基礎上建立了一個較為 穩(wěn)固的概念模型。因為數(shù)據(jù)倉庫是對原有數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)進行集成 和重組而形成的數(shù)據(jù)集合,所以數(shù)據(jù)倉庫的概念模型設計,首先要對原 有數(shù)據(jù)庫系統(tǒng)加以分析理解,看在原有的數(shù)據(jù)庫系統(tǒng)中“有什么”、“怎樣 組織的”和“如何分布的”然后再來考慮應

2、當如何建立數(shù)據(jù)倉庫系統(tǒng)的 概念模型。一方面,通過原有的數(shù)據(jù)庫的設計文檔以及在數(shù)據(jù)字典中的 數(shù)據(jù)庫關系模式,可以對企業(yè)現(xiàn)有的數(shù)據(jù)庫中的內(nèi)容有一個完整而清晰 的認識;另一方面,數(shù)據(jù)倉庫的概念模型是面向企業(yè)全局建立的, 它為集 成來自各個面向應用的數(shù)據(jù)庫的數(shù)據(jù)提供了統(tǒng)一的概念視圖。概念模型的設計是在較高的抽象層次上的設計,因此建立概念模型 時不用考慮具體技術條件的限制。1 .界定系統(tǒng)的邊界數(shù)據(jù)倉庫是面向決策分析的數(shù)據(jù)庫,我們無法在數(shù)據(jù)倉庫設計的最 初就得到詳細而明確的需求,但是一些基本的方向性的需求還是擺在了 設計人員的面前:.要做的決策類型有哪些?.決策者感興趣的是什么問題?.這些問題需要什么樣的

3、信息?.要得到這些信息需要包含原有數(shù)據(jù)庫系統(tǒng)的哪些部分的數(shù)據(jù)?這樣,我們可以劃定一個當前的大致的系統(tǒng)邊界,集中精力進行最 需要的部分的開發(fā)。因而,從某種意義上講,界定系統(tǒng)邊界的工作也可 以看作是數(shù)據(jù)倉庫系統(tǒng)設計的需求分析,因為它將決策者的數(shù)據(jù)分析的需求用系統(tǒng)邊界的定義形式反映出來。2,確定主要的主題域在這一步中,要確定系統(tǒng)所包含的主題域,然后對每個主題域的內(nèi) 容進行較明確數(shù)據(jù)倉庫建模技術在電信行業(yè)中的應用的描述,描述的內(nèi)容包括:.主題域的公共碼鍵;.主題域之間的聯(lián)系:.充分代表主題的屬性組。2 .5.2邏輯模型設計邏輯建模是數(shù)據(jù)倉庫實施中的重要一環(huán),因為它能直接反映出業(yè)務 部門的需求,同時對系

4、統(tǒng)的物理實施有著重要的指導作用。在這一步里 進行的工作主要有:.分析主題域,確定當前要裝載的主題;.確定粒度層次劃分;.確定數(shù)據(jù)分割策略;.關系模式定義;.記錄系統(tǒng)定義邏輯模型設計的成果是,對每個當前要裝載的主題的邏輯實現(xiàn)進行 定義,并將相關內(nèi)容記錄在數(shù)據(jù)倉庫的元數(shù)據(jù)中,包括 :.適當?shù)牧6葎澐郑?合理的數(shù)據(jù)分割策略.適當?shù)谋韯澐郑?定義合適的數(shù)據(jù)來源等。1 .分析主題域在概念模型設計中,我們確定了幾個基本的主題域,但是,數(shù)據(jù)倉 庫的設計方法是一個逐步求精的過程,在進行設計時,一般是一次一個 主題或一次若干個主題地逐步完成的。所以,我們必須對概念模型設計 步驟中確定的幾個基本主題域進行分析,一

5、并選擇首先要實施的主題 域。選擇第一個主題域所要考慮的是它要足夠大,以便使得該主題域能 建設成為一個可應用的系統(tǒng);它還要足夠小,以便于開發(fā)和較快地實施。 如果所選擇的主題域很大并且很復雜, 我們甚至可以針對它的一個有意 義的子集來進行開發(fā)。在每一次的反饋過程中,都要進行主題域的分析。乙粒度層次劃分數(shù)據(jù)倉庫邏輯設計中要解決的一個重要問題是決定數(shù)據(jù)倉庫的粒 度劃分層次,粒度層次劃分適當與否直接影響到數(shù)據(jù)倉庫中的數(shù)據(jù)量和 所適合的查詢類型。確定數(shù)據(jù)倉庫的粒度劃分,可以使用在粒度劃分一 節(jié)中介紹的方法,通過估算數(shù)據(jù)行數(shù)和所需的 DASD數(shù),來確定是采用 單一粒度還是多重粒度,以及粒度劃分的層次。3 .

6、確定數(shù)據(jù)分割策略在這一步里,要選擇適當?shù)臄?shù)據(jù)分割的標準,一般要考慮以下幾方 面因素:數(shù)據(jù)量而非記錄行數(shù) 卜數(shù)據(jù)分析處理的實際情況、簡單易行 以及粒度劃分策略等。數(shù)據(jù)量的大小是決定是否進行數(shù)據(jù)分割和如何分 割的主要因素;數(shù)據(jù)分析處理的要求是選擇數(shù)據(jù)分割標準的一個主要依 據(jù),因為數(shù)據(jù)分割是跟數(shù)據(jù)分析處理的對象緊密聯(lián)系的;我們還要考慮到 所選擇的數(shù)據(jù)分割標準應是自然的、易于實施的:同時也要考慮數(shù)據(jù)分割 的標準與粒度劃分層次是適應的。4 .關系模式定義數(shù)據(jù)倉庫的每個主題都是由多個表來實現(xiàn)的,這些表之間依靠主題的公共碼鍵聯(lián)系在一起,形成一個完整的主題。在概念模型設計時,我 們就確定了數(shù)據(jù)倉庫的基本主題,

7、并對每個主題的公共碼鍵、基本內(nèi)容 等做了描述在這一步里,我們將要對選定的當前實施的主題進行模式劃分,形成多個表,并確定各個表的關系模式。用關系型數(shù)據(jù)庫來實現(xiàn)數(shù)據(jù)倉庫信息模型時,目前較常用的兩種建 模方法是所謂的第三范式(3NF,即Third Normal Form)和星型模式 Star-Schem司,我們將重點討論兩種方法的特點和它們在數(shù)據(jù)倉庫系統(tǒng) 中的適用場合。4.1 什么是第三范式范式是數(shù)據(jù)庫邏輯模型設計的基本理論,一個關系模型可以從第一 范式到第五范式進行無損分解,這個過程也稱為規(guī)范化(Normalize)。在 數(shù)據(jù)倉庫的模型設計中目前一般采用第三范式,它有非常嚴格的數(shù)學定義。如果從其表

8、達的含義來看,一個符合第三范式的關系必須具有以下 三個條件:1 .每個屬性的值唯一,不具有多義性;2 .每個非主屬性必須完全依賴于整個主鍵,而非主鍵的一部分;3 .每個非主屬性不能依賴于其他關系中的屬性,團為這樣的話,這 種屬性應該歸到其他關系中去。我們可以看到,第三范式的定義基本上是圍繞主鍵與非主屬性之間 的關系而作出的。如果只滿足第一個條件,則稱為第一范式;如果滿足前 面兩個條件,則稱為第二范式,依此類推。因此,各級范式是向下兼容 的。4.2 什么是星型模式星型模式是一種多維的數(shù)據(jù)關系,它由一個事實表(Fact Table)和一 組維表(Dimension Table)組成。每個維表都有一

9、個維作為主鍵, 所有這 些維則組合成事實表的主鍵,換言之,事實表主鍵的每個元素都是維表 的外鍵。事實表的非主屬性稱為事實(Fact),它們一般都是數(shù)值或其他 可以進行計算的數(shù)據(jù);而維大都是文字、時間等類型的數(shù)據(jù)。與星型模式類似還有一種業(yè)界提的比較多的設計方式是雪花模式, 它也是一種在關系數(shù)據(jù)庫中實現(xiàn)多維數(shù)據(jù)關系的方式,與星型模式相區(qū)別的是它的維表結(jié)構與星型模式不同。星型模式中同一維度的不同層次位于一張維表中,維表由唯一主鍵和事實表關連;雪花模式中同一維度中 的不同層次位于不同的層次表中,最低層次表與事實表關連,各個層次 再分別和比自己高一級的層次表關連。因為星型模式查詢效率要比雪花模式高的多,

10、所以比較多的是采用 星型模式設計多維數(shù)據(jù)關系。4. 3第三范式和星型模式在數(shù)據(jù)倉庫中的應用大多數(shù)人在設計中央數(shù)據(jù)倉庫的邏輯模型時,都按照第三范式來設 計;而在進行物理實施時,則由于數(shù)據(jù)庫引擎的限制,不得不對邏輯模型 進行不規(guī)范處理(De-Normalize),以提高系統(tǒng)的響應速度,這當然是以 增加系統(tǒng)的復雜度、維護工作量、磁盤使用比率(指原始數(shù)據(jù)與磁盤大小 的比率)并降低系統(tǒng)執(zhí)行動態(tài)查詢能力為代價的。根據(jù)數(shù)據(jù)倉庫的測試標 準TPC-D規(guī)范,在數(shù)據(jù)倉庫系統(tǒng)中,對數(shù)據(jù)庫引擎最大的挑戰(zhàn)主要是這 樣幾種操作 多表連接、表的累計、數(shù)據(jù)排序、大量數(shù)據(jù)的掃描。下面列 出了一些DBMS在實際系統(tǒng)中針對這些困難

11、所采用的折衷處理辦法 :1、如何避免多表連接:在設計模型時對表進行合并,即所謂的預連 接(Pre-Join)。當數(shù)據(jù)規(guī)模小時,也可以采用星型模式,這樣能提高系 統(tǒng)速度,但增加了數(shù)據(jù)冗余量。2、如何避免表的累計:在模型中增加有關小計數(shù)據(jù)(Summarized Data)的項。這樣也增加了數(shù)據(jù)冗余,而且如果某項問題不在預建的累計項內(nèi),需臨時調(diào)整。3、如何避免數(shù)據(jù)排序:對數(shù)據(jù)事先排序。但隨著數(shù)據(jù)倉庫系統(tǒng)的運 行,不斷有新的數(shù)據(jù)加入,數(shù)據(jù)庫管理員的工作將大大增加。大量的時 間將用于對系統(tǒng)的整理,系統(tǒng)的可用性隨之降低。4、如何避免大表掃描:通過使用大量的索引,可以避免對大量數(shù)據(jù) 進行掃描。但這也將增加系

12、統(tǒng)的復雜程度,降低系統(tǒng)進行動態(tài)查詢的能 力。這些措施大都屬于不規(guī)范處理。根據(jù)上面的討論,當把規(guī)范的系統(tǒng) 邏輯模型進行物理實施時,由于數(shù)據(jù)庫引擎的限制,常常需要進行不規(guī) 范處理。舉例來說,當系統(tǒng)數(shù)據(jù)量很小,比如只有幾個 GB時,進行多 表連接之類復雜查詢的響應時間是可以忍受的。但是設想一下加果數(shù)據(jù) 量擴展到很大,到幾百GB,甚至上TB,一個表中的記錄往往有幾百萬、 幾千萬,甚至更多,這時進行多表連接這樣的復雜查詢,響應時間長得 不可忍受。這時就有必要把幾個表合并,盡量減少表的連接操作。當然, 不規(guī)范處理的程度取決于數(shù)據(jù)庫引擎的并行處理能力。數(shù)據(jù)倉庫建設者 在選擇數(shù)據(jù)庫引擎時,除了參考一些相關的基

13、準測試結(jié)果外,最好是能 根據(jù)自己的實際情況設計測試方案, 從幾個數(shù)據(jù)庫系統(tǒng)中選擇最適合自 己企業(yè)決策要求的一種。不規(guī)范化處理雖然是提高系統(tǒng)性能的一種有效手段,但是由于中央 數(shù)據(jù)倉庫的數(shù)據(jù)模型反映了整個企業(yè)的業(yè)務運行規(guī)律,在這里進行不規(guī)范處理容易影響整個系統(tǒng),不利于今后的擴展。而且不規(guī)范處理產(chǎn)生的 數(shù)據(jù)冗余將使整個系統(tǒng)的數(shù)據(jù)量迅速增加,這將增加DBA的工作量和系 統(tǒng)投資。因此,當系統(tǒng)性能下降而進行不規(guī)范處理時,比較好的辦法是 選擇問題較集中的部門數(shù)據(jù)集市實施這種措施。 這樣既能有效地改善系 統(tǒng)性能漢不至于影響整個系統(tǒng)。在國外一些成功的大型企業(yè)級數(shù)據(jù)倉 庫案例中,基本上都是采用這種方法。那么,在中

14、央數(shù)據(jù)倉庫中是否可以采用星型模式來進行模型設計呢 我們知道,星型模式中有一個事實表和一組維表,我們可以把事實看成 是各個維交叉點上的值。例如,一個汽車廠在研究其銷售情況時可以考 察汽車的型號、顏色、代理商等多種因素,這些因素就是維,而銷售量 就是事實。這種多維模型能迅速給出基于各個維的報表,這些維必須事 先確定。星型模式之所以速度快,在于針對各個維作了大量的預處理,如按 照維進行預先的統(tǒng)計、分類、排序等。在上面的例子中,就是按照汽車 的型號、顏色、代理商進行預先的銷售量統(tǒng)計。因此,在星型模式設計 的數(shù)據(jù)倉庫中,作報表的速度雖然很快,但由于存在大量的預處理,其 建模過程相對來說就比較慢。當業(yè)務問

15、題發(fā)生變化,原來的維不能滿足 要求時,需要增加新的維。由于事實表的主鍵由所有維表的主鍵組成, 這種維的變動將是非常復雜、非常耗時的。星型模式另一個顯著的缺點 是數(shù)據(jù)的冗余量很大。綜合這些討論,不難得出結(jié)論,星型模式比較適 合于預先定義好的問題加需要產(chǎn)生大量報表的場合 ;而不適合于動態(tài)查 詢多、系統(tǒng)可擴展能力要求高或者數(shù)據(jù)量很大的場合。因此,星型模式 在一些要求大量報表的部門數(shù)據(jù)集市中有較多的應用。4. 4兩種模式的比較上面討論了數(shù)據(jù)倉庫邏輯模型設計中常用的兩種方法.在數(shù)據(jù)倉庫的應用環(huán)境中,主要有兩種負載:一種是回答重復性的問題;另一種是回 答交互性的問題。動態(tài)查詢具有較明顯的交互性特征,即在一

16、個問題答 案的基礎上進行進一步的探索,這種交互過程常稱為數(shù)據(jù)挖掘(DataMining)或者知識探索(Knowledge Discovery)。對于以第一種負載為主 的部門數(shù)據(jù)集市,當數(shù)據(jù)量不大、報表較固定時可以采用星型模式;對于 中央數(shù)據(jù)倉庫,考慮到系統(tǒng)的可擴展能力、投資成本和易于管理等多種因素,最好采用第三范式?;蛘哒f對于數(shù)據(jù)倉庫中當前詳細級別的數(shù)據(jù) 和輕度綜合的數(shù)據(jù)可以采用第三范式的方式設計,對于高度綜合的數(shù)據(jù)可以采用星型模式設計。2.5.3物理模型設計這一步所做的工作是確定數(shù)據(jù)的存儲結(jié)構,確定索引策略,確定數(shù) 據(jù)存放位置,確定存儲分配。確定數(shù)據(jù)倉庫實現(xiàn)的物理模型,要求設計人員必須做到以

17、下幾方面: 要全面了解所選用的數(shù)據(jù)庫管理系統(tǒng),特別是存儲結(jié)構和存取方法。了解數(shù)據(jù)環(huán)境、數(shù)據(jù)的使用頻度、使用方式、數(shù)據(jù)規(guī)模以及響應時 間要求等,這些是對時間和空間效率進行平衡和優(yōu)化的重要依據(jù)。.了解外部存儲設備的特性,如分塊原則,塊大小的規(guī)定,設備的 I/o特性等。1 .確定數(shù)據(jù)的存儲結(jié)構一個數(shù)據(jù)庫管理系統(tǒng)往往都提供多種存儲結(jié)構供設計人員選用,不 同的存儲結(jié)構有不同的實現(xiàn)方式,各有各的適用范圍和優(yōu)缺點,設計人 員在選擇合適的存儲結(jié)構時應該權衡三個方面的主要因素:存取時間、存 儲空間利用率和維護代價。2 .確定索引策略數(shù)據(jù)倉庫的數(shù)據(jù)量很大,因而需要對數(shù)據(jù)的存取路徑進行仔細的設 計和選擇。由于數(shù)據(jù)倉庫的數(shù)據(jù)都是不常更新的,因而可以設計多種多 樣的索引結(jié)構來提高數(shù)據(jù)存取效率。在數(shù)據(jù)倉庫中,設計人員可以考慮對各個數(shù)據(jù)存儲建立專用的、復 雜的索引,以獲得最高的存取效率,因為在數(shù)據(jù)倉庫中的數(shù)據(jù)是不常更 新的,也就是說每個數(shù)據(jù)存儲是穩(wěn)定的,因而雖然建立專用的、復雜的 索引有一定的代價,但一旦建立就幾乎不需維護索引的代價。3 .確定數(shù)據(jù)存放位置我們說過,同一個主題的數(shù)據(jù)并不要求存放在相同的介質(zhì)上。在物 理設計時,我們常常要按數(shù)據(jù)的重要程度、使用頻率以及對響應時間的 要求進行分類,并將不同類的數(shù)據(jù)分

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論