2023年對(duì)數(shù)據(jù)倉庫進(jìn)行數(shù)據(jù)建模_第1頁
2023年對(duì)數(shù)據(jù)倉庫進(jìn)行數(shù)據(jù)建模_第2頁
2023年對(duì)數(shù)據(jù)倉庫進(jìn)行數(shù)據(jù)建模_第3頁
2023年對(duì)數(shù)據(jù)倉庫進(jìn)行數(shù)據(jù)建模_第4頁
2023年對(duì)數(shù)據(jù)倉庫進(jìn)行數(shù)據(jù)建模_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

對(duì)數(shù)據(jù)倉庫進(jìn)行數(shù)據(jù)建模-----IBM

2007-11-1615:00

OLTP與數(shù)據(jù)倉庫一有何差異?

在日常生活中,我們要使用大量的應(yīng)用程序來生成新的數(shù)據(jù)、變更數(shù)據(jù)、刪除數(shù)

據(jù),當(dāng)然在大多數(shù)的情況下我們還要查閱和分析數(shù)據(jù)。就來想象一個(gè)收發(fā)email

的簡(jiǎn)單應(yīng)用程序吧。我們已經(jīng)存儲(chǔ)了地址信息,可能還存儲(chǔ)了一些文檔。我們可

以決定是否存儲(chǔ)已經(jīng)發(fā)送過的郵件,但是也可能隔一段時(shí)間后將其刪除,或者刪

除已經(jīng)發(fā)送過的所有郵件。那么我們?cè)撊绾翁幚硪欢螘r(shí)間以前刪除或者修改過的

地址呢?我們?cè)僖膊粫?huì)看到它們了。

Email程序大部分都屬于不是很復(fù)雜的數(shù)據(jù)庫,但是完全可以將其看作一個(gè)在單

用戶環(huán)境下的OLTP(在線事務(wù)處理系統(tǒng))簡(jiǎn)單示例。它使用了所有的所謂訪問

數(shù)據(jù)的操作CRUD(創(chuàng)建、讀取、更新、刪除)。當(dāng)數(shù)據(jù)存儲(chǔ)達(dá)到一定量的時(shí)候,

規(guī)模就會(huì)幾乎保持不變,因?yàn)榭梢詮拇鎯?chǔ)中刪除過期數(shù)據(jù)。

數(shù)據(jù)倉庫就完全是一種不同種類的應(yīng)用程序。它并不是用來運(yùn)行當(dāng)前的操作,例

如發(fā)送郵件。它是用來分析數(shù)據(jù)并且從現(xiàn)有數(shù)據(jù)中發(fā)現(xiàn)新的價(jià)值,主要是用來預(yù)

測(cè)未來的情況。數(shù)據(jù)倉庫并不是解決所有問題的通用結(jié)構(gòu)。它必須集中于某一問

題領(lǐng)域,例如航空服務(wù)、顧客收益等。

數(shù)據(jù)倉庫也有有趣的一面,那就是數(shù)據(jù)庫本身是穩(wěn)定增長(zhǎng)的。數(shù)據(jù)沒有被刪除,

也不發(fā)生變更。我們不需要將冗余數(shù)據(jù)置于數(shù)據(jù)庫之外(因?yàn)榧尤雮}庫中的數(shù)據(jù)

經(jīng)過了數(shù)據(jù)凈化的過程,該過程檢查了數(shù)據(jù)的正確性)來減少復(fù)雜性同時(shí)增強(qiáng)讀

取操作的性能。

為了能夠?qū)?shù)據(jù)倉庫中的數(shù)據(jù)進(jìn)行分析,數(shù)據(jù)存儲(chǔ)于一個(gè)多維結(jié)構(gòu)中,叫做星型

模式。如果將星型模式擴(kuò)展,就會(huì)得到雪花模式。本白皮書將會(huì)闡述如何使用

IBMRationalRose進(jìn)行星型模式建模和雪花模式建模。

飛行服務(wù)數(shù)據(jù)集市的例子

為了更好地解釋如何對(duì)數(shù)據(jù)倉庫建模,本白皮書將使用一個(gè)簡(jiǎn)單數(shù)據(jù)集市的的例

子(即一個(gè)數(shù)據(jù)倉庫或者數(shù)據(jù)倉庫的一部分),來分析旅客乘坐航班Happy

FlyingandLanding(愉快飛行平安降落)的行為和滿意程度。

我們將存儲(chǔ)乘客信息和每個(gè)航班的的相關(guān)數(shù)據(jù)、選擇的菜單以及乘客對(duì)飛行的滿

意程度。

數(shù)據(jù)倉庫術(shù)語表

數(shù)據(jù)倉庫引入了新的術(shù)語,擴(kuò)展了數(shù)據(jù)建模的術(shù)語表。為使本文的闡述能夠完備,

下面我介紹一下最常用的術(shù)語。

數(shù)據(jù)倉庫

數(shù)據(jù)倉庫是一個(gè)支持管理決策的數(shù)據(jù)集合。數(shù)據(jù)是面向主題的、集成的、不易丟

失的并且是時(shí)間變量。

數(shù)據(jù)倉庫是所有操作環(huán)境和外部數(shù)據(jù)源的快照集合。它并不需要非常精確,因?yàn)?/p>

它必須在特定的時(shí)間基礎(chǔ)上從操作環(huán)境中提取出來。

數(shù)據(jù)集市

數(shù)據(jù)倉庫只限于單個(gè)主題的區(qū)域,例如顧客、部門、地點(diǎn)等。數(shù)據(jù)集市在從數(shù)據(jù)

倉庫獲取數(shù)據(jù)時(shí)可以依賴于數(shù)據(jù)倉庫,或者當(dāng)它們從操作系統(tǒng)中獲取數(shù)據(jù)時(shí)就不

依賴于數(shù)據(jù)倉庫。

事實(shí)

事實(shí)是數(shù)據(jù)倉庫中的信息單元,也是多維空間中的一個(gè)單元,受分析單元的限制。

事實(shí)存儲(chǔ)于一張表中(當(dāng)使用關(guān)系數(shù)據(jù)庫時(shí))或者是多維數(shù)據(jù)庫中的一個(gè)單元。

每個(gè)事實(shí)包括關(guān)于事實(shí)(收入、價(jià)值、滿意記錄等)的基本信息,并且與維度相

關(guān)。

在某些情況下,當(dāng)所有的必要信息都存儲(chǔ)于維度中時(shí),單純的事實(shí)出現(xiàn)就是對(duì)于

數(shù)據(jù)倉庫足夠的信息。我們稍后討論有關(guān)缺無事實(shí)的情況。

維度

維度是綁定由坐標(biāo)系定義的空間的坐標(biāo)系的軸線。數(shù)據(jù)倉庫中的坐標(biāo)系定義了數(shù)

據(jù)單元,其中包含事實(shí)。

坐標(biāo)系的一個(gè)例子就是帶有X維度和y維度的Cartesian(笛卡爾)坐標(biāo)系。

在數(shù)據(jù)倉庫中,時(shí)間總是維度之一。

數(shù)據(jù)挖掘

在數(shù)據(jù)倉庫的數(shù)據(jù)中發(fā)現(xiàn)新信息的過程被稱為數(shù)據(jù)挖掘,這些新信息不會(huì)從操作

系統(tǒng)中獲得。

分析空間

分析空間是數(shù)據(jù)倉庫中一定量的數(shù)據(jù),用于進(jìn)行數(shù)據(jù)挖掘以發(fā)現(xiàn)新信息同時(shí)支持

管理決策。

切片

一種用來在數(shù)據(jù)倉庫中將一個(gè)維度中的分析空間限制為數(shù)據(jù)子集的技術(shù)。

切塊

一種用來在數(shù)據(jù)倉庫中將多個(gè)維度中的分析空間限制為數(shù)據(jù)子集的技術(shù)。

星型模式

一種使用關(guān)系數(shù)據(jù)庫實(shí)現(xiàn)多維分析空間的模式,稱為星型模式。

星型模式將在本白皮書中稍后進(jìn)行進(jìn)一步討論。

雪花模式

不管什么原因,當(dāng)星型模式的維度需要進(jìn)行規(guī)范化時(shí),星型模式就演進(jìn)為雪花模

式。

使用IBMRationalRose進(jìn)行星型模式建模

星型模式的基本形式必須實(shí)現(xiàn)多維空間(常常被稱為方塊),以使用關(guān)系數(shù)據(jù)庫

的基本功能。

首先,我們需要理解多維空間。

多維分析空間

幾何學(xué)中的方塊是指一個(gè)三維空間,其中每個(gè)維度的尺寸都相同。想象一個(gè)立方

體,每個(gè)維度都有三個(gè)單元,我們即得到相同結(jié)構(gòu)的33=27個(gè)單元。

圖1一個(gè)具有x、v、z維度的方塊

1

多維分析空間(或者數(shù)據(jù)倉庫方塊)與幾何空間中的方塊僅僅存在細(xì)節(jié)上的差異。

?維度不僅限于3維。不過,處理很多維度的立方體也不是件輕松的事情,

這會(huì)導(dǎo)致大多數(shù)的實(shí)現(xiàn)被限制于6或者7維。不要期盼使用圖形可以很

好地表示超過4的維度一如果您有幸能發(fā)現(xiàn)一種方法,別忘了告訴我一

下。

?維度并不具有相同的規(guī)模和單元。規(guī)模從幾個(gè)單元到幾百萬個(gè)單元,差別

巨大。單元可以是一天、一位顧客、部門等。

?單元,相當(dāng)于子方塊(1X1X1等),包含事實(shí)。

圖2一個(gè)三維數(shù)據(jù)立方體

數(shù)據(jù)立方體需要很大的內(nèi)存以存儲(chǔ)所有事實(shí)。無論是否包含事實(shí),都必須要預(yù)留

單元。

這就是為什么使用關(guān)系數(shù)據(jù)庫和星型模式的原因。使用它們能夠優(yōu)化存儲(chǔ)并且保

持?jǐn)?shù)據(jù)結(jié)構(gòu)的靈活性。

星型模式

星型模式的基本思想就是保持立方體的多維功能,同時(shí)也增加了小規(guī)模數(shù)據(jù)存儲(chǔ)

的靈活性。

圖3一個(gè)星型模式

在圖3中,星型模式使用事實(shí)Flight表示了一個(gè)4維方塊(Passenger、Menu、

FlightSchedulet和Time)?;旧?,事實(shí)必須指定一個(gè)維度,以將其放入立

方體的單元中。

我們的例子中的維度是:

?Passenger,描述了飛行航程中的每位乘客,由經(jīng)常飛行號(hào)(frequent

flyernumber)指定。不是經(jīng)常乘坐飛機(jī)的乘客不是數(shù)據(jù)倉庫的一部分。

?FlightSchedule,是指所有常規(guī)飛行的日程。

?Menu,是用于飛行的菜單。只有對(duì)菜單進(jìn)行基本的分類才會(huì)對(duì)數(shù)據(jù)挖掘有

重要意義。

?Time,是指飛行的時(shí)間。

事實(shí)Flight描述了乘客在唯一的Time的單程飛行上選擇Menu0

分析空間可以是完整的方塊,或者我們可以根據(jù)維度將分析空間分割成小片。

每個(gè)維度根據(jù)一個(gè)對(duì)象進(jìn)行描述,對(duì)象可以用類表示,這些類就是有關(guān)業(yè)務(wù)主題

的名稱。這一點(diǎn)對(duì)于成功建立數(shù)據(jù)倉庫來說是很重要的,因?yàn)閭}庫的用戶(經(jīng)理、

分析員、市場(chǎng))對(duì)于信息技術(shù)的術(shù)語并不是很熟悉。

事實(shí)本身就是商業(yè)智能的另一個(gè)對(duì)象,仍然通過類進(jìn)行表示。

事實(shí)指每個(gè)維度。事實(shí)與維度的關(guān)聯(lián)常常是一對(duì)任意,這也就意味著每個(gè)事實(shí)都

與單個(gè)維度的一個(gè)單元準(zhǔn)確對(duì)應(yīng),而維度的每個(gè)單元(每個(gè)Passenger、Time

等)可以與任意數(shù)量的事實(shí)發(fā)生關(guān)聯(lián)(包括0個(gè)事實(shí))。

使用RationalRose將對(duì)象模型轉(zhuǎn)換為數(shù)據(jù)模型即完成了星型模式的實(shí)現(xiàn)。這

里我們可以看到轉(zhuǎn)換后的結(jié)果。

圖4使用RationalRose實(shí)現(xiàn)星型模式

在圖4中,沒有顯示自動(dòng)創(chuàng)建的主鍵和外鍵約束。

星型模式的維度是獨(dú)立的表。當(dāng)對(duì)象模型轉(zhuǎn)換為數(shù)據(jù)模型時(shí),RationalRose可

以生成維度的主鍵。

事實(shí)表指從維度表中使用鍵遷移的維度,當(dāng)生成數(shù)據(jù)模型時(shí)RationalRose可

以生成外鍵。

在星型模式中切片和切塊是對(duì)維度的限制(選擇)。這是一個(gè)運(yùn)行時(shí)問題,而不

是建模問題,但是模型必須分辨其需要。

雪花模式

基本的星型模式并不能滿足數(shù)據(jù)挖掘的所有需要。我們需要更復(fù)雜的維度,例如

時(shí)間。分析員希望根據(jù)周、月、季度等識(shí)別模式。

維度必須進(jìn)行規(guī)范化。我們不需要冗余的維度表,這只會(huì)使數(shù)據(jù)切片變得更加復(fù)

雜。這種過程中我們得到的模式被稱為雪花模式。

我們來看一個(gè)簡(jiǎn)單的雪花模式例子。我們將時(shí)間維度規(guī)范化為周、月和季度。

圖5規(guī)范化的Time維度

我們希望能夠使用附加的規(guī)范化維度將立方體切片:周、月和季度。在本例中,

我們假定季度是月的平行層次,這也就意味著我們不能將季度假定為若干月的聚

合。由于這個(gè)原因,我們將使用一張范化表(是對(duì)OLAP查詢的一項(xiàng)簡(jiǎn)單附加)

預(yù)先選擇時(shí)間維度。

最終雪花模式添加了規(guī)范化維度o

圖6帶有范化維度的Time和事實(shí)Flight的雪花模式

當(dāng)然,所有的維度都可以像時(shí)間例子那樣進(jìn)行規(guī)范化,這就導(dǎo)致了比較復(fù)雜的數(shù)

據(jù)集市模式的出現(xiàn)。

由RationalRose從雪花模式中開發(fā)的實(shí)現(xiàn)模式(數(shù)據(jù)模型)是完善的。

圖7帶有范化Time維度的雪花模式的數(shù)據(jù)模型

創(chuàng)建的約束在圖中也沒有顯示。

雪花模式中可以存在切片,不僅僅在基本的Time維度上,也可以在規(guī)范化的

Week>Month和Quarter維度上。

多對(duì)多關(guān)系

在一次飛行中,我們不僅僅只吃一頓飯。在長(zhǎng)途飛行中可能要多次用餐。在這種

情況下,我們認(rèn)為事實(shí)Flight和Menu維度不是一對(duì)多的關(guān)聯(lián)。我們必須使用

多對(duì)多關(guān)聯(lián)。不過,這種關(guān)聯(lián)不可能在星型模式中實(shí)現(xiàn)。

雪花模式的一種特殊形式是使用一種必要的數(shù)據(jù)結(jié)構(gòu)以滿足這項(xiàng)要求。

首先,我們將模型變更為事實(shí)和維度間的多對(duì)多關(guān)聯(lián)。使用RationalRose,這

只是關(guān)聯(lián)基數(shù)的變更。

圖8Menu的多對(duì)多維度的星型模式

我們無法在關(guān)系數(shù)據(jù)庫中實(shí)現(xiàn)多對(duì)多關(guān)聯(lián)。實(shí)現(xiàn)多對(duì)多關(guān)聯(lián)需要使用另一種雪花

模式。

在下圖中,我們關(guān)注一下已經(jīng)開發(fā)的雪花模式的一部分,該部分處理多對(duì)多維度。

圖9雪花模式解決了Menu的多維度

RationalRose生成了附加的維度表FlightMenu,它是指Menu維度和Flight

事實(shí)。

確定關(guān)系用于解決多對(duì)多關(guān)聯(lián)。

對(duì)于雪花模式的架構(gòu)師來說,最重要的一點(diǎn)就是識(shí)別多對(duì)多關(guān)系。簡(jiǎn)單對(duì)象視圖

可能會(huì)使設(shè)計(jì)員理解概念,而生成的數(shù)據(jù)視圖有助于進(jìn)一步深入有關(guān)實(shí)現(xiàn)的問

題。

層次

數(shù)據(jù)挖掘可以從隱藏在操作系統(tǒng)表面下的數(shù)據(jù)中發(fā)現(xiàn)信息。我們想了解的一個(gè)問

題就是選定菜單與乘客統(tǒng)計(jì)資料之間的依賴關(guān)系。

乘客統(tǒng)計(jì)資料數(shù)據(jù)可以在Passenger維度的層次上構(gòu)建。乘客可以根據(jù)郵政編

碼分組,然后再按國(guó)家進(jìn)行分組。

圖10乘客的層次

層次通過使用聚合來指定。聚合定義了所包括的內(nèi)容。Country包含了ZIP編

碼,ZIP編碼包含了多名Passenger信息。

最終通過使用外鍵實(shí)現(xiàn)了聚合。

圖11雪花模式實(shí)現(xiàn)了Passenger維度的聚合

生成的約束仍然沒有在圖中表示出來。

使用聚合,維度可以在任何定義的級(jí)別上使用。分析空間可以通過Passenger.

ZIPCode或者Country進(jìn)行切片。

一致的維度

隨著數(shù)據(jù)倉庫架構(gòu)師不斷地添加細(xì)節(jié)內(nèi)容,雪花模式變得越來越復(fù)雜。因此設(shè)計(jì)

過程必須在到達(dá)某種程度后停止以保持?jǐn)?shù)據(jù)倉庫運(yùn)行良好。

星型或者雪花模式仍然僅僅關(guān)注于一個(gè)事實(shí)一在本例中就是Flight.,那么復(fù)雜

關(guān)系又是什么情況呢?

對(duì)于每個(gè)事實(shí)我們都必須設(shè)計(jì)其各自的模式。如果我們想要進(jìn)行復(fù)雜查詢的話,

它們就必須具有共同的維度一我們稱其為一致的維度。

讓我們使用Pilot作為一個(gè)維度,PilotFlight作為一個(gè)事實(shí)來定義第二個(gè)星

型模式。我們還要使用附加的FlightSchedule維度和Time維度。

圖12Pilot星型模式

第二個(gè)模式可以單獨(dú)使用或者與Passenger模式結(jié)合使用,從而根據(jù)使用一致

維度的飛行員維度來查詢Passenger的滿意程度。

圖13一致維度Time和FlightSchedule

即使在使用一致維度的數(shù)據(jù)倉庫的簡(jiǎn)單結(jié)構(gòu)中,Pilot與

溫馨提示

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

評(píng)論

0/150

提交評(píng)論