第四章聯(lián)機(jī)分析處理_第1頁(yè)
第四章聯(lián)機(jī)分析處理_第2頁(yè)
第四章聯(lián)機(jī)分析處理_第3頁(yè)
第四章聯(lián)機(jī)分析處理_第4頁(yè)
第四章聯(lián)機(jī)分析處理_第5頁(yè)
已閱讀5頁(yè),還剩137頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第四章在線分析處理OLAP1聯(lián)機(jī)分析處理(OLAP)4.1從OLTP到OLAP4.2OLAP的特征及衡量標(biāo)準(zhǔn)4.3OLAP實(shí)施4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)4.6兩種技術(shù)間的比較2聯(lián)機(jī)分析處理(OLAP)決策支持中的典型問(wèn)題:

東部地區(qū)和西部地區(qū)今年6月份和去年6月份在銷(xiāo)售總額上的對(duì)比情況,并且銷(xiāo)售額按10萬(wàn)-20萬(wàn)、20萬(wàn)-30萬(wàn)、30萬(wàn)-40萬(wàn),以及40萬(wàn)以上分組特點(diǎn):多角度多層次訪問(wèn)大量數(shù)據(jù)快速回答3

4.1從OLTP到OLAP

4.1.1OLAP的出現(xiàn)4.1.2什么是OLAP4.1.3OLTP和OLAP的關(guān)系及比較4

4.1.1OLAP的出現(xiàn)1970年,E.F.Codd博士提出了關(guān)系數(shù)據(jù)模型,1979年Oracle發(fā)布了關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)OLTP推動(dòng)了業(yè)務(wù)處理自動(dòng)化,積累了大量的數(shù)據(jù)51993年,E.F.Codd提出了OLAP的概念,利用專(zhuān)門(mén)的數(shù)據(jù)綜合引擎和直觀的數(shù)據(jù)訪問(wèn)界面,使得系統(tǒng)能在很短的時(shí)間內(nèi)響應(yīng)用戶(hù)的復(fù)雜查詢(xún)Arborsoft發(fā)布了OLAP軟件

4.1.1OLAP的出現(xiàn)6

4.1從OLTP到OLAP

4.1.1OLAP的出現(xiàn)4.1.2什么是OLAP4.1.3OLTP和OLAP的關(guān)系及比較7

4.1.2什么是OLAPOLAP(聯(lián)機(jī)分析處理)是針對(duì)特定問(wèn)題的聯(lián)機(jī)數(shù)據(jù)訪問(wèn)和分析——通過(guò)對(duì)信息(這些信息已經(jīng)從原始的數(shù)據(jù)進(jìn)行了轉(zhuǎn)換,以反映用戶(hù)所能理解的企業(yè)的真實(shí)的“維”)的很多種可能的觀察形式進(jìn)行快速、穩(wěn)定一致和交互性的存取,使管理決策人員對(duì)數(shù)據(jù)進(jìn)行深入觀察8

基本概念

變量變量是數(shù)據(jù)的實(shí)際意義,即描述數(shù)據(jù)"是什么"例如:“人數(shù)”、“單價(jià)”、"銷(xiāo)售量"等都是變量數(shù)據(jù)"10000"沒(méi)有意義/意義未定變量是一個(gè)數(shù)值度量指標(biāo)數(shù)據(jù)"10000"是變量的一個(gè)值9

維維是人們觀察數(shù)據(jù)的特定角度時(shí)間維、地理維

維的層次人們觀察數(shù)據(jù)的某個(gè)特定角度(即某個(gè)維)還可以存在細(xì)節(jié)程度不同的多個(gè)描述方面,我們稱(chēng)這多個(gè)描述方面為維的層次。時(shí)間維:日期、月份、季度、年等是時(shí)間維的層次地理維:城市、地區(qū)、國(guó)家等是地理維層次

基本概念(續(xù))10

維成員維的一個(gè)取值稱(chēng)為該維的一個(gè)維成員如果一個(gè)維是多層次的,那么該維的維成員是在不同維層次的取值的組合時(shí)間維具有日期、月份、年這三個(gè)層次分別在日期、月份、年上各取一個(gè)值組合起來(lái)——時(shí)間維的一個(gè)維成員—"2000年11月11日""2000年10月"、"3月8日"、"1999年"

維成員是一個(gè)數(shù)據(jù)項(xiàng)在某維中位置的描述如:銷(xiāo)售數(shù)據(jù),"2000年5月8日"的銷(xiāo)售數(shù)據(jù)基本概念(續(xù))11

多維數(shù)組

一個(gè)多維數(shù)組可以這樣來(lái)表示:(維1,維2,···,維n,變量)。如日用品銷(xiāo)售數(shù)據(jù)的多維數(shù)組:(地區(qū),時(shí)間,銷(xiāo)售渠道,銷(xiāo)售額)(地區(qū),時(shí)間,銷(xiāo)售渠道,產(chǎn)品,銷(xiāo)售額)

基本概念(續(xù))12

銷(xiāo)售額(萬(wàn)元)銷(xiāo)售渠道

北京

地區(qū)

零售

批發(fā)

1234時(shí)間(月)圖6-1按銷(xiāo)售渠道、時(shí)間和地區(qū)組織日用品銷(xiāo)售數(shù)據(jù)

基本概念(續(xù))13

數(shù)據(jù)單元(單元格)多維數(shù)組的取值稱(chēng)為數(shù)據(jù)單元(維1維成員,維2維成員

,···,維n維成員,變量的值)數(shù)據(jù)單元:(北京,1997年1月,批發(fā),10000)

基本概念(續(xù))14

多維分析是指對(duì)以多維形式組織起來(lái)的數(shù)據(jù)采取切片、切塊、旋轉(zhuǎn)等各種分析動(dòng)作,以求剖析數(shù)據(jù),使最終用戶(hù)能從多個(gè)角度、多側(cè)面地觀察數(shù)據(jù)庫(kù)中的數(shù)據(jù),從而深入地了解包含在數(shù)據(jù)中的信息、內(nèi)涵

多維分析的基本分析動(dòng)作15

切片(Slice)

定義1:在多維數(shù)組的某一維上選定一維成員的動(dòng)作稱(chēng)為切片,即在多維數(shù)組(維1,維2,···,維n,變量)中選一維:維i,并取其一維成員(設(shè)為"維成員vi"),所得的多維數(shù)組的子集(維1,···,維成員vi,···,維n,變量)稱(chēng)為在維i上的一個(gè)切片。

多維分析的基本分析動(dòng)作16

例如:(地區(qū),時(shí)間,產(chǎn)品,銷(xiāo)售額)在時(shí)間維上選定一個(gè)維成員(設(shè)為"1997年1月")在時(shí)間維上的一個(gè)切片這樣切片的數(shù)目取決于時(shí)間維上維成員的個(gè)數(shù)。

按照定義1,一次切片一定使原來(lái)維數(shù)減1,所以所得的切片并不一定是二維的"平面"

多維分析的基本分析動(dòng)作17

定義2:選定多維數(shù)組的一個(gè)二維子集的動(dòng)作叫作切片,多維數(shù)組(維1,維2,···,維n,變量)在維i和維j取某一區(qū)間或任意維成員,而將其余的維都取定一個(gè)維成員,則得到的就是多維數(shù)組在維i和維j上一個(gè)二維子集,我們稱(chēng)這個(gè)二維子集為多維數(shù)組在維i和維j上的一個(gè)切片,表示為(維i,維j,變量)。

多維分析的基本分析動(dòng)作18

1997年1月產(chǎn)品銷(xiāo)售情況時(shí)間維地區(qū)維產(chǎn)品維產(chǎn)品維地區(qū)維產(chǎn)品銷(xiāo)售情況選定兩個(gè)維:產(chǎn)品維和地區(qū)維數(shù)據(jù)切片

圖6-2切片

選定時(shí)間維的維成員"1997年1月"多維分析的基本分析動(dòng)作19

按照定義2,不管原來(lái)的維數(shù)有多少,數(shù)據(jù)切片的結(jié)果一定是一個(gè)二維的"平面"

從定義1可以得出:

維是觀察數(shù)據(jù)的角度,那么切片的作用或結(jié)果就是舍棄一些觀察角度,使人們能在幾個(gè)維上集中觀察數(shù)據(jù)

對(duì)于維數(shù)較多的多維數(shù)據(jù)空間,數(shù)據(jù)切片是十分有意義的多維分析的基本分析動(dòng)作20

切片的這兩個(gè)定義聯(lián)系:對(duì)于一個(gè)n維數(shù)組,按定義1進(jìn)行的n-2切片的結(jié)果,就必定對(duì)應(yīng)于按定義2進(jìn)行的某一次切片的結(jié)果。

多維分析的基本分析動(dòng)作21

切塊(Dice)定義1:在多維數(shù)組的某一維上選定某一區(qū)間的維成員的動(dòng)作稱(chēng)為切塊,即限制多維數(shù)組的某一維的取值區(qū)間。顯然,當(dāng)這一區(qū)間只取一個(gè)維成員時(shí),即得到一個(gè)切片(定義1)。多維分析的基本分析動(dòng)作22

定義2:選定多維數(shù)組的一個(gè)三維子集的動(dòng)作稱(chēng)為切塊。即選定多維數(shù)組(維1,維2,···,維n,變量)中的三個(gè)維:維i、維j和維r,在這三個(gè)維上取某一區(qū)間或任意的維成員,而將其余的維都取定一個(gè)維成員,則得到的就是多維數(shù)組在維i、維j和維r上一個(gè)三維子集,我們稱(chēng)這個(gè)三維子集為多維數(shù)組在維i、維j和維r上的一個(gè)切塊,表示為(維i,維j,維r,變量)切塊與切片的作用與目的是相似的切塊由多個(gè)切片疊合起來(lái)多維分析的基本分析動(dòng)作23

切塊由多個(gè)切片疊合起來(lái)如果將時(shí)間維上的取值設(shè)定為一個(gè)區(qū)間(例如?。?997年1月至1997年10月"),就得到一個(gè)數(shù)據(jù)切塊它由1997年1月至1997年10月的十個(gè)切片疊合而成

旋轉(zhuǎn)行和列交換多維分析的基本分析動(dòng)作24

時(shí)間維產(chǎn)品維產(chǎn)品維時(shí)間維行列交換(a)將某行維換向列維地區(qū)

北京

上海

地區(qū)

北京

上海

時(shí)間

產(chǎn)品

銷(xiāo)售量

銷(xiāo)售量

時(shí)間

第一季度

第二季度.......

產(chǎn)品

第一季度

第二季度

(b):

:多維分析的基本分析動(dòng)作25

圖6-3:旋轉(zhuǎn)地區(qū)維時(shí)間維產(chǎn)品維產(chǎn)品維時(shí)間維地區(qū)維旋轉(zhuǎn)以改變頁(yè)面顯示

(c)OLAP的多維數(shù)據(jù)的位置:1.作為數(shù)據(jù)倉(cāng)庫(kù)的一部分2.作為數(shù)據(jù)倉(cāng)庫(kù)工具層的一部分多維分析的基本分析動(dòng)作26

4.1從OLTP到OLAP

4.1.1OLAP的出現(xiàn)4.1.2什么是OLAP4.1.3OLTP和OLAP的關(guān)系及比較27

4.1.3OLTP和OLAP的關(guān)系及比較

OLTP數(shù)據(jù)

OLAP數(shù)據(jù)

原始數(shù)據(jù)

導(dǎo)出數(shù)據(jù)

細(xì)節(jié)性數(shù)據(jù)

綜合性或提煉性數(shù)據(jù)

當(dāng)前值數(shù)據(jù)

歷史數(shù)據(jù)

可更新

不可更新但周期性刷新

一次處理的數(shù)據(jù)量小

一次處理的數(shù)據(jù)量大面向應(yīng)用,事務(wù)驅(qū)動(dòng)

面向分析,分析驅(qū)動(dòng)

面向操作人員,支持日常操作

面向決策人員,支持管理需要28聯(lián)機(jī)分析處理(OLAP)4.1從OLTP到OLAP4.2OLAP的特征及衡量標(biāo)準(zhǔn)4.3OLAP實(shí)施4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)4.6兩種技術(shù)間的比較29

4.2OLAP的特征及衡量標(biāo)準(zhǔn)

1993年,E.F.Codd提出《

ProvidingOLAP(On_LineAnalyticalProcessing)toUser-Analysts》E.F.Codd曾提出:

關(guān)系數(shù)據(jù)庫(kù)十二條準(zhǔn)則分布式數(shù)據(jù)庫(kù)十二條準(zhǔn)則

30

4.2OLAP的特征及衡量標(biāo)準(zhǔn)

十二條準(zhǔn)則意義:OLAP產(chǎn)品的識(shí)別衡量標(biāo)準(zhǔn)發(fā)展方向314.2OLAP的特征及衡量標(biāo)準(zhǔn)Codd

認(rèn)為關(guān)系數(shù)據(jù)庫(kù)從一開(kāi)始就未打算提供強(qiáng)大的數(shù)據(jù)合成、分析能力(或者說(shuō)多維數(shù)據(jù)分析的能力),這些功能總是由各類(lèi)前端工具來(lái)完成,它們與關(guān)系數(shù)據(jù)庫(kù)相輔相成,因此RDBMS仍然是當(dāng)今最適合企業(yè)數(shù)據(jù)管理的技術(shù)。Codd所指的這些前端工具即指OLAP類(lèi)產(chǎn)品。32九十年代初期E.F.Codd提出了OLAP的概念、特征,同時(shí)給出了OLAP產(chǎn)品評(píng)價(jià)的12條基本準(zhǔn)則。至今OLAP的概念已經(jīng)在商業(yè)數(shù)據(jù)庫(kù)領(lǐng)域得以廣范使用,OLAP的特征也得到了驗(yàn)證和確認(rèn)。作為一個(gè)原則——OLAP產(chǎn)品應(yīng)能支持OLAP所具有的特征,已經(jīng)得到廣泛任可。從實(shí)踐中來(lái)看,這12條準(zhǔn)則可以作為評(píng)價(jià)和購(gòu)買(mǎi)OLAP產(chǎn)品的標(biāo)準(zhǔn),并對(duì)其中的一些實(shí)現(xiàn)作了進(jìn)一步的論述。4.2OLAP的特征及衡量標(biāo)準(zhǔn)33

4.2OLAP的特征及衡量標(biāo)準(zhǔn)

準(zhǔn)則1O(jiān)LAP模型必須提供多維概念視圖從用戶(hù)分析員的角度來(lái)看,整個(gè)企業(yè)的視圖本質(zhì)上是多維的,因此OLAP的概念模型也應(yīng)是多維的。企業(yè)決策分析的目的不同,決定了分析和衡量企業(yè)的數(shù)據(jù)總是從不同的角度來(lái)進(jìn)行的,所以企業(yè)數(shù)據(jù)空間本身就是多維的。

344.2OLAP的特征及衡量標(biāo)準(zhǔn)354.2OLAP的特征及衡量標(biāo)準(zhǔn)這種多維模型可以使最終分析以比單一維模型更簡(jiǎn)單、直觀的方式操縱多維數(shù)據(jù)。例如:通過(guò)對(duì)多維數(shù)據(jù)模型進(jìn)行“切片和切塊”和維旋轉(zhuǎn)就可以輕松地完成傳統(tǒng)的操作方法必須用極大的時(shí)間和代價(jià)才能完成的工作。36

4.2OLAP的特征及衡量標(biāo)準(zhǔn)

準(zhǔn)則2透明性準(zhǔn)則

讓技術(shù)、

后臺(tái)的數(shù)據(jù)存儲(chǔ)庫(kù)、計(jì)算體系結(jié)構(gòu)和元數(shù)據(jù)的不同本質(zhì)對(duì)全部用戶(hù)透明;

這種透明度支持真正的開(kāi)放系統(tǒng)方法,有助于通過(guò)一些用戶(hù)熟悉的前臺(tái)工具來(lái)提高用戶(hù)的工作效率和生產(chǎn)率。37

4.2OLAP的特征及衡量標(biāo)準(zhǔn)

準(zhǔn)則3存取能力準(zhǔn)則存取分析多種數(shù)據(jù)源:關(guān)系數(shù)據(jù)庫(kù)非關(guān)系數(shù)據(jù)庫(kù)外部存儲(chǔ)的數(shù)據(jù)要求OLAP:

將概念視圖映射到異質(zhì)的數(shù)據(jù)存儲(chǔ)上能訪問(wèn)數(shù)據(jù)并執(zhí)行所需轉(zhuǎn)換提供單一、完整、連續(xù)的用戶(hù)視圖38

4.2OLAP的特征及衡量標(biāo)準(zhǔn)

準(zhǔn)則4穩(wěn)定的報(bào)表性能

數(shù)據(jù)維數(shù)和數(shù)據(jù)的綜合層次增加,最終分析員的報(bào)表能力和響應(yīng)速度不降低

這對(duì)維護(hù)OLAP產(chǎn)品的易用性和低復(fù)雜性至關(guān)重要

39

4.2OLAP的特征及衡量標(biāo)準(zhǔn)

準(zhǔn)則5客戶(hù)/服務(wù)器體系結(jié)構(gòu)數(shù)據(jù)倉(cāng)庫(kù)服務(wù)器OLAP服務(wù)器前端的展現(xiàn)工具實(shí)現(xiàn)與基層運(yùn)營(yíng)的數(shù)據(jù)庫(kù)系統(tǒng)的連接完成數(shù)據(jù)一致和數(shù)據(jù)共享工作具有強(qiáng)大的處理能力,負(fù)責(zé)數(shù)據(jù)的存儲(chǔ)與管理。直接面向用戶(hù),側(cè)重于實(shí)現(xiàn)簡(jiǎn)單的應(yīng)用邏輯和用戶(hù)界面。40

4.2OLAP的特征及衡量標(biāo)準(zhǔn)

準(zhǔn)則5,與透明性準(zhǔn)則(準(zhǔn)則2),存取能力準(zhǔn)則(準(zhǔn)則3)是相互吻合的準(zhǔn)則6維的等同性準(zhǔn)則每一數(shù)據(jù)維在數(shù)據(jù)結(jié)構(gòu)和操作能力上是等同的維上的操作是公共的是準(zhǔn)則1的補(bǔ)充,是對(duì)維的基本結(jié)構(gòu)和維上的操作的要求

41

4.2OLAP的特征及衡量標(biāo)準(zhǔn)

準(zhǔn)則7動(dòng)態(tài)的稀疏矩陣處理準(zhǔn)則(最重要的準(zhǔn)則之一)

可以創(chuàng)建和加載一個(gè)特定的分析模型,用來(lái)優(yōu)化稀疏矩陣處理,并使物理視圖適應(yīng)這個(gè)模型。

當(dāng)系統(tǒng)遇到一個(gè)稀疏矩陣時(shí),他必須能夠動(dòng)態(tài)地演繹出該矩陣的分布,調(diào)整存儲(chǔ)器的結(jié)構(gòu)和通過(guò)訪問(wèn)來(lái)取得并維持一致的性能。42

4.2OLAP的特征及衡量標(biāo)準(zhǔn)

準(zhǔn)則8多用戶(hù)支持能力準(zhǔn)則OLAP工具必須提供并發(fā)訪問(wèn)、數(shù)據(jù)完整性及安全性機(jī)制工作組的形式來(lái)使用OLAP工具多個(gè)用戶(hù)交換各自的想法和分析結(jié)果準(zhǔn)則9非受限的跨維操作對(duì)準(zhǔn)則1的補(bǔ)充多維數(shù)據(jù)之間存在固有的層次關(guān)系OLAP工具能推導(dǎo)出相關(guān)的計(jì)算或提供計(jì)算完備的語(yǔ)言來(lái)定義各類(lèi)計(jì)算公式。

43

OLAP的特征及衡量標(biāo)準(zhǔn)

準(zhǔn)則10

直觀的數(shù)據(jù)操縱要求數(shù)據(jù)操縱直觀易懂。綜合路徑重定位、向上綜合、向下挖掘等操作都能通過(guò)直觀、方便的點(diǎn)拉操作完成準(zhǔn)則11

靈活的報(bào)表生成報(bào)表必須從各種可能的方面顯示出從數(shù)據(jù)模型中綜合出的數(shù)據(jù)和信息,充分反映數(shù)據(jù)分析模型的多維特征。如下表:44

4.2OLAP的特征及衡量標(biāo)準(zhǔn)

北京地區(qū)上海地區(qū)銷(xiāo)售量純利潤(rùn)成本銷(xiāo)售量純利潤(rùn)成本第一季度工作站126700520841200440Pc機(jī)15194003502312700200軟件1365690012020075300100計(jì)算機(jī)配件455231006701270697001200第二季度工作站531600200211600100Pc機(jī)2012400100127390200軟件213870001005421900100計(jì)算機(jī)配件5684360054026024500250維1維2維3表6-2、

多維報(bào)表示例

45表6-2為一個(gè)四維(包括統(tǒng)計(jì)指標(biāo)自身)報(bào)表,分析人員可以根據(jù)需要對(duì)各維進(jìn)行旋轉(zhuǎn),匯總以及合并操作(如將季度維合并,變?yōu)槿S報(bào)表等)46

OLAP的特征及衡量標(biāo)準(zhǔn)

準(zhǔn)則12不限制維與聚集層次

OLAP工具的維數(shù)應(yīng)不小于15維綜合路徑聚集層次不受限47

OLAP的特征及衡量標(biāo)準(zhǔn)

透明性準(zhǔn)則存取能力準(zhǔn)則動(dòng)態(tài)稀疏矩陣處理準(zhǔn)則穩(wěn)定的報(bào)表性能客戶(hù)機(jī)/服務(wù)器體系結(jié)構(gòu)多用戶(hù)支持能力準(zhǔn)則48

OLAP的特征及衡量標(biāo)準(zhǔn)

多維概念模型準(zhǔn)則維的等同準(zhǔn)則非受限的跨維操作非受限的維與維的層次直觀的數(shù)據(jù)處理靈活的報(bào)表生成49

4.2.2其他廠商對(duì)Codd的十二條準(zhǔn)則的看法

Codd十二條準(zhǔn)則引起了不小的爭(zhēng)論

Codd是Arbor軟件公司的顧問(wèn),因此不少軟件供應(yīng)商覺(jué)得Codd的準(zhǔn)則偏向Arbor公司的OLAP產(chǎn)品Essbase,這樣有些公司,如Gartner集團(tuán)提出了9條更為簡(jiǎn)化的準(zhǔn)則。后來(lái)IRI軟件公司又加上了3條補(bǔ)充準(zhǔn)則,這兩個(gè)公司提出的準(zhǔn)則加在一起也是十二條(如表6-3)

50

4.2.2其他廠商對(duì)Codd的十二條準(zhǔn)則的看法

Gartner集團(tuán):9條

IRI軟件:3條(13)多維數(shù)組

(14)OLAP連接操作(15)數(shù)據(jù)庫(kù)管理工具

(16)對(duì)象存儲(chǔ)(17)子集選擇

(18)細(xì)節(jié)深入(19)局部數(shù)據(jù)支持

(20)遞增數(shù)據(jù)庫(kù)刷新(21)SQL接口(22)時(shí)間序列分析(23)過(guò)程語(yǔ)言和開(kāi)發(fā)工具(24)功能的集成化

51

4.2OLAP的特征及衡量標(biāo)準(zhǔn)

OLAP更為簡(jiǎn)要的定義FASMI—FastAnalysisofSharedMultidimensionalInformation52

4.2OLAP的特征及衡量標(biāo)準(zhǔn)

Fast:指系統(tǒng)應(yīng)以盡量快的速度響應(yīng)用戶(hù)的分析請(qǐng)求。Analysis:指系統(tǒng)應(yīng)能對(duì)與用戶(hù)及應(yīng)用相關(guān)的任何業(yè)務(wù)邏輯進(jìn)行統(tǒng)計(jì)分析,這一分析過(guò)程不用編程而且要盡量利用已有的綜合路徑及統(tǒng)計(jì)公式。53

4.2OLAP的特征及衡量標(biāo)準(zhǔn)

Shared:指多個(gè)用戶(hù)存取數(shù)據(jù)時(shí),系統(tǒng)應(yīng)保證安全性。尤其是當(dāng)存在多個(gè)用戶(hù)向OLAP服務(wù)器寫(xiě)數(shù)據(jù)時(shí),系統(tǒng)應(yīng)在適當(dāng)粒度上加更新鎖。Multidimensional:是OLAP應(yīng)用的實(shí)質(zhì),OLAP系統(tǒng)必須提供數(shù)據(jù)的多維概念視圖。Information:指應(yīng)用所需的數(shù)據(jù)及其導(dǎo)出信息。

54聯(lián)機(jī)分析處理(OLAP)4.1從OLTP到OLAP4.2OLAP的特征及衡量標(biāo)準(zhǔn)4.3OLAP實(shí)施4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)4.6兩種技術(shù)間的比較4.7OLAP產(chǎn)品介紹及選擇4.8OLAP的新發(fā)展及在我國(guó)的應(yīng)用展望55

4.3OLAP實(shí)施

基層db1基層db2數(shù)據(jù)倉(cāng)庫(kù)細(xì)節(jié)數(shù)據(jù)數(shù)據(jù)倉(cāng)庫(kù)綜合數(shù)據(jù)OLAP服務(wù)器前端軟件企業(yè)服務(wù)器

數(shù)據(jù)存取

客戶(hù)共享數(shù)據(jù)存儲(chǔ)后臺(tái)數(shù)據(jù)處理最終用戶(hù)功能與基層運(yùn)行系統(tǒng)的連接報(bào)表的預(yù)處理

數(shù)據(jù)顯示

個(gè)人數(shù)據(jù)存儲(chǔ)個(gè)人應(yīng)用邏輯

OLAP的三層客戶(hù)/服務(wù)器結(jié)構(gòu):56

4.3OLAP實(shí)施

OLAP實(shí)施的關(guān)鍵:①

如何組織來(lái)自多個(gè)數(shù)據(jù)源或數(shù)據(jù)倉(cāng)庫(kù)的數(shù)據(jù),以滿足客戶(hù)端用戶(hù)的多維數(shù)據(jù)分析的需要,即OLAP服務(wù)器的設(shè)計(jì)②

OLAP服務(wù)器與前端軟件的溝通

OLAP服務(wù)器必須以多維方式進(jìn)行構(gòu)建57

4.3OLAP實(shí)施

OLAP服務(wù)器的構(gòu)建基礎(chǔ)是數(shù)據(jù)倉(cāng)庫(kù)或基層數(shù)據(jù)庫(kù),數(shù)據(jù)倉(cāng)庫(kù)既包括基層數(shù)據(jù)庫(kù)的操作細(xì)節(jié)數(shù)據(jù),又包括綜合性數(shù)據(jù)。由于OLAP是面向分析和管理決策人員的,決策人員大多關(guān)心的是綜合性數(shù)據(jù)以便從更高層次、總的視角來(lái)了解數(shù)據(jù)。584.3OLAP實(shí)施因此,OLAP服務(wù)器的設(shè)計(jì)重點(diǎn)在于如何組織數(shù)據(jù)倉(cāng)庫(kù)中的綜合性數(shù)據(jù),如何滿足前端用戶(hù)的多維數(shù)據(jù)分析需要。如果企業(yè)的數(shù)據(jù)倉(cāng)庫(kù)尚未建立,也可直接從基層數(shù)據(jù)庫(kù)中提取數(shù)據(jù)。59聯(lián)機(jī)分析處理(OLAP)4.1從OLTP到OLAP4.2OLAP的特征及衡量標(biāo)準(zhǔn)4.3OLAP實(shí)施4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)4.6兩種技術(shù)間的比較60

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)(MD-OLAP)

4.4.1多維數(shù)據(jù)多維數(shù)據(jù)庫(kù)(MDDB─Multi-Dimensional

DataBase)多維方式來(lái)組織數(shù)據(jù)、存儲(chǔ)數(shù)據(jù)

維的定義不是隨意的,它是一種高層次的類(lèi)型劃分。如產(chǎn)品可以作為維,產(chǎn)品類(lèi)型、

產(chǎn)品顏色、產(chǎn)品商標(biāo)一般不作為維

614.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

(MD-OLAP)多維數(shù)據(jù)庫(kù)可以直觀地表現(xiàn)現(xiàn)實(shí)世界中的“一對(duì)多”和“多對(duì)多”關(guān)系。例如,我們希望存放一張銷(xiāo)售情況表,假設(shè)有三種產(chǎn)品(冰箱、彩電及空調(diào)),它們?cè)谌齻€(gè)地方(東北、西北和華北)銷(xiāo)售。用關(guān)系數(shù)據(jù)庫(kù)來(lái)組織這些數(shù)據(jù)如表6-4(A),而用多維數(shù)據(jù)庫(kù)則如表6-4(B):62

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)(MOLAP)

銷(xiāo)售表1(關(guān)系數(shù)據(jù)庫(kù)):

產(chǎn)品名稱(chēng)地區(qū)銷(xiāo)售量冰箱東北50冰箱西北60冰箱華北100彩電東北40彩電西北70彩電華北80空調(diào)東北90空調(diào)西北120空調(diào)華北140銷(xiāo)售表2(多維數(shù)據(jù)庫(kù)):

東北西北

華北

冰箱

5060100彩電4070

80空調(diào)90120140表6-4:RDBMS與MDDB數(shù)據(jù)組織比較

63

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)多維數(shù)據(jù)庫(kù)比關(guān)系表好的地方:表達(dá)清晰占用的存儲(chǔ)少

644.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)除了表達(dá)清晰,占用存儲(chǔ)少外,多維數(shù)據(jù)庫(kù)還有一個(gè)優(yōu)點(diǎn):綜合速度快。數(shù)據(jù)可以直接按行或列累加,并且由于MDDB中不象關(guān)系表里那樣重復(fù)地出現(xiàn)產(chǎn)品和地區(qū)信息,因此其統(tǒng)計(jì)速度遠(yuǎn)遠(yuǎn)超過(guò)RDBMS,數(shù)據(jù)庫(kù)記錄數(shù)越多其效果越明顯。65

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)輸入成員表6-6:多維數(shù)據(jù)庫(kù)中綜合數(shù)據(jù)的存放

輸入成員導(dǎo)出成員導(dǎo)出成員

東北西北華北總和

冰箱

5060100

210彩電407080

190空調(diào)90120140

350總和180250320

75066

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

要查詢(xún)“冰箱的銷(xiāo)售總量是多少?”SELECTSUM(銷(xiāo)售量)FROM銷(xiāo)售表1WHERE產(chǎn)品名稱(chēng)=‘冰箱’是涉及多個(gè)數(shù)據(jù)項(xiàng)求和的查詢(xún)。

關(guān)系數(shù)據(jù)庫(kù):系統(tǒng)必須在大量的數(shù)據(jù)記錄中選出產(chǎn)品名稱(chēng)為“冰箱”的記錄,然后把它們的銷(xiāo)售量加到一起,這時(shí)系統(tǒng)效率必定大大降低。多維數(shù)據(jù)庫(kù):按行或列進(jìn)行求和,獲得快速響應(yīng)67

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

但是,多維數(shù)據(jù)庫(kù)的響應(yīng)時(shí)間仍然要取決于查詢(xún)過(guò)程中需要求和的數(shù)據(jù)單元的數(shù)目,在使用時(shí),用戶(hù)希望不管怎樣查詢(xún),都得到一致的響應(yīng)時(shí)間。為了獲得一致的快速響應(yīng),一般采用預(yù)計(jì)算的方法:將決策分析人員所需的綜合數(shù)據(jù)預(yù)先統(tǒng)計(jì)出來(lái),存放在數(shù)據(jù)庫(kù)中。68

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)例如,我們可以在關(guān)系數(shù)據(jù)庫(kù)的表中加上一行總和的記錄

銷(xiāo)售表3:(表6-5:關(guān)系表中綜合數(shù)據(jù)的存放

)產(chǎn)品名稱(chēng)地區(qū)銷(xiāo)售量冰箱

東北50冰箱西北60冰箱華北100冰箱

總和210彩電

東北40彩電西北70彩電華北80彩電

總和190空調(diào)

東北90空調(diào)西北120空調(diào)華北140空調(diào)

總和350

總和

東北180

總和西北250

總和華北320

總和

總和750694.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)預(yù)計(jì)算的好處是:查詢(xún)時(shí)就不用再進(jìn)行計(jì)算了。如果所求的總和都已經(jīng)被綜合的話,只要讀取單個(gè)記錄就可以回答按產(chǎn)品(或按地區(qū))求和的問(wèn)題了。這樣處理就可以得到快速一致的查詢(xún)響應(yīng)。704.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)預(yù)計(jì)算的缺點(diǎn)是:當(dāng)數(shù)據(jù)庫(kù)太大時(shí),預(yù)先計(jì)算這些總和就要花費(fèi)很長(zhǎng)時(shí)間。另外,"總和"項(xiàng)破壞了列定義的統(tǒng)一語(yǔ)義,例如表6-5的地區(qū)列中的值表示的是地區(qū)名稱(chēng),而"總和"就成為一個(gè)例外。查詢(xún)時(shí)用戶(hù)必須了解這種約定。71

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)4.4.2維的層次關(guān)系和類(lèi)

4.4.2.1維的層次關(guān)系簡(jiǎn)單層次關(guān)系:每個(gè)“子女”結(jié)點(diǎn)只有一個(gè)“雙親”結(jié)點(diǎn)

地區(qū)總和西北地區(qū)東北地區(qū)華北地區(qū)圖6-6:簡(jiǎn)單層次關(guān)系的維層次圖72

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

地區(qū)總和西北地區(qū)東北地區(qū)華北地區(qū)黑龍江省遼寧省吉林省沈陽(yáng)市大連市圖6-7:較復(fù)雜層次關(guān)系的層次圖73

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)如果多維數(shù)據(jù)庫(kù)不支持維的層次關(guān)系則地區(qū)的三個(gè)層次必須作為不同的維成員弊端是增加了維的數(shù)目,稀疏的數(shù)據(jù)庫(kù),許多數(shù)據(jù)單元將不包含數(shù)據(jù)。74

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)標(biāo)注:""表示有意義的單元“”表示無(wú)意義的空單元省維城市維沈陽(yáng)哈爾濱大連長(zhǎng)春遼寧省黑龍江吉林省圖6-8不支持維層次關(guān)系的例子75

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)維的層次信息---存放在元數(shù)據(jù)中在進(jìn)行各種綜合查詢(xún)時(shí),就能通過(guò)元數(shù)據(jù)的信息區(qū)分不同的維層次,從而正確地執(zhí)行查詢(xún)?nèi)绻蠛瓦^(guò)程中系統(tǒng)不能區(qū)分維層次而跨越不同的維層次,就會(huì)產(chǎn)生錯(cuò)誤的結(jié)果例如求"全國(guó)銷(xiāo)量總和"時(shí)既加上"西北地區(qū)"的銷(xiāo)量,又加上"陜西?。⒌匿N(xiāo)量就會(huì)導(dǎo)致重復(fù)計(jì)算76

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)(MD-OLAP)

時(shí)間維產(chǎn)品維圖6-9:維的層次級(jí)別西北東北黑龍江77

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)類(lèi):

按一定的標(biāo)準(zhǔn)對(duì)維成員全集的一個(gè)(分類(lèi))劃分劃分標(biāo)準(zhǔn):類(lèi)屬性(規(guī)格,顏色)一個(gè)類(lèi)屬性,就有對(duì)維成員的一個(gè)劃分類(lèi)屬性不同,得到的類(lèi)劃分也不同78

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)按"產(chǎn)品銷(xiāo)地"劃分產(chǎn)品維圖6-10:類(lèi)東北西北華北華南東北西北華北華南類(lèi)劃分1類(lèi)劃分2按“產(chǎn)品產(chǎn)地"劃分79

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

維層次和類(lèi)的區(qū)別:1.

層次和類(lèi)表達(dá)的意義不同維層次:維所描述的變量的不同綜合層次(時(shí)間維有三層維層次:年、月、日)(父親層次的值由子女層次的值綜合得到)

維成員的類(lèi):維成員子集的共同特征(由類(lèi)屬性的某一值來(lái)表征的)同一層的維成員才可以劃分為類(lèi)

80

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)(MD-OLAP)

2、在層次和類(lèi)上進(jìn)行的分析操作不同

維的層次關(guān)系上的分析:(1)從維的低層次到高層次的數(shù)據(jù)綜合分析(2)從維的高層次到低層次的數(shù)據(jù)鉆取分析

分析路徑:層次圖中從根到葉/從葉到根

維成員的類(lèi)進(jìn)行的分析:分類(lèi)與歸納

層次圖中對(duì)兄弟結(jié)點(diǎn)之間關(guān)系的分析,不跨越維層次

81

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)(MD-OLAP)

2、在層次和類(lèi)上進(jìn)行的分析操作不同(

維成員的類(lèi)進(jìn)行的分析:分類(lèi)與歸納即首先選擇某個(gè)一定的類(lèi)屬性來(lái)對(duì)維成員的全集進(jìn)行分類(lèi),然后再在分類(lèi)的基礎(chǔ)上歸納總結(jié)出類(lèi)的共同特征(或一類(lèi)區(qū)別于它類(lèi)的特征)

層次圖中對(duì)兄弟結(jié)點(diǎn)之間關(guān)系的分析,不跨越維層次

82

復(fù)雜的數(shù)據(jù)分析維的層次關(guān)系+維成員的類(lèi)4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)產(chǎn)品小類(lèi)產(chǎn)品大類(lèi)產(chǎn)品顏色產(chǎn)品產(chǎn)地產(chǎn)品銷(xiāo)地產(chǎn)品維圖6-11:類(lèi)和層次的組合83

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)(MD-OLAP)

4.4.3時(shí)間序列數(shù)據(jù)類(lèi)型

時(shí)間維:最普遍的一個(gè)維,包含特有的周期不同周期之間存在著轉(zhuǎn)化規(guī)則

一月二月三月

圖6-12產(chǎn)品84

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)如果需要同時(shí)使用幾種時(shí)間周期(如月和周)1定義兩個(gè)獨(dú)立的維:月維,周維2增加時(shí)間維的層次

數(shù)據(jù)被存儲(chǔ)了兩次(按月,按周):增加數(shù)據(jù)庫(kù)的復(fù)雜性,數(shù)據(jù)庫(kù)規(guī)模成倍增大

解決辦法:采用時(shí)間序列數(shù)據(jù)類(lèi)型:(一個(gè)月的銷(xiāo)售數(shù)據(jù))按時(shí)間順序排列的一系列(如銷(xiāo)售量)的數(shù)據(jù)85

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)優(yōu)點(diǎn):第一、省去時(shí)間維,一個(gè)數(shù)據(jù)單元中的時(shí)間序列數(shù)據(jù)已經(jīng)包含了時(shí)間信息第二、大大減少多維數(shù)據(jù)庫(kù)數(shù)據(jù)單元的數(shù)目,多維數(shù)據(jù)庫(kù)對(duì)數(shù)據(jù)單元的數(shù)目是有限制的定義一個(gè)時(shí)間序列類(lèi)型,必須說(shuō)明下面的信息:起始時(shí)間、時(shí)間周期、不同的周期之間的數(shù)據(jù)轉(zhuǎn)換規(guī)則以及變量的數(shù)據(jù)類(lèi)型(是整型數(shù)、浮點(diǎn)數(shù)等)86

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)(MD-OLAP)

東北西北華北總銷(xiāo)量(日)產(chǎn)品維地區(qū)維圖6-13:時(shí)間序列數(shù)據(jù)存儲(chǔ)ddddddd

dddddddweekweekWeekweekddddddd

dddddddweekweekddddddd

dddddddweekweekweekweekddddddd

dddddddddddddd

dddddddddddddd

ddddddd

ddddddd

dddddddddddddd

dddddddddddddd

dddddddddddddd

dddddddddddddd

ddddddd87

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)(MD-OLAP)

每個(gè)數(shù)據(jù)單元存放兩星期的時(shí)間序列數(shù)據(jù)有的是按日計(jì)算的,有的是按周計(jì)算的

從日數(shù)據(jù)轉(zhuǎn)換為周數(shù)據(jù)的規(guī)則是"累加"從周數(shù)據(jù)轉(zhuǎn)換為日數(shù)據(jù)的規(guī)則是"加權(quán)平均"

查看最近一年,各地區(qū)每周的銷(xiāo)量和各產(chǎn)品每日的銷(xiāo)量,系統(tǒng)自動(dòng)把所有的日銷(xiāo)量轉(zhuǎn)換成周銷(xiāo)量,生成各地區(qū)的周銷(xiāo)量數(shù)據(jù)序列88

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)當(dāng)系統(tǒng)察看某一產(chǎn)品按不同地區(qū)(按列)日銷(xiāo)量時(shí),它又自動(dòng)把所有的周銷(xiāo)量轉(zhuǎn)換成日銷(xiāo)量,生成各產(chǎn)品的日銷(xiāo)量數(shù)據(jù)序列。從周數(shù)據(jù)轉(zhuǎn)換成日數(shù)據(jù)時(shí),并不能得到原始的日數(shù)據(jù)因此采用時(shí)間序列數(shù)據(jù)類(lèi)型并不能完全替代建立獨(dú)立的時(shí)間維

89多維分析操作建立在關(guān)系聚集操作上的一組復(fù)合操作是面向用戶(hù)的操作切片(slice)&切塊(dice)向上鉆取(roll-up),向下鉆取(drilldown)90多維分析的基礎(chǔ):聚集基本的分析是求聚集函數(shù)(aggregation)

例:求第一天的銷(xiāo)售總額In

SQL:SELECTsum(amt)FROMSALEWHEREdate=18191多維分析的基礎(chǔ):聚集例:按照每天求銷(xiāo)售總額InSQL:SELECTdate,sum(amt)FROMSALEGROUPBYdate92多維分析的基礎(chǔ):聚集例:按照每天和產(chǎn)品求銷(xiāo)售總額InSQL:SELECTdate,sum(amt)FROMSALEGROUPBYdate,prodIddrill-downrollup93多維分析的基礎(chǔ):聚集5個(gè)標(biāo)準(zhǔn)聚集函數(shù): sum,count,max,min, ave在groupby的基礎(chǔ)上還可以使用 “Having”語(yǔ)句可以在維層次上做聚集averagebyregion(withinstore)maximumbymonth(withindate)94切片/切塊操作實(shí)質(zhì)上對(duì)應(yīng)于where/having子句day1切片95鉆取操作鉆取操作就是在不同粒度表之間的切換drill-downrollup96鉆取操作day1day2129...sale(c1,*,*)sale(*,*,*)sale(c2,p2,*)drill-downrollup97

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)4.4多維數(shù)據(jù)庫(kù)存儲(chǔ)

多維數(shù)據(jù)結(jié)構(gòu):Cube

由許多經(jīng)壓縮的、類(lèi)似于數(shù)組的對(duì)象構(gòu)成每個(gè)對(duì)象由聚集成組的單元塊組成每個(gè)單元塊都按類(lèi)似于多維數(shù)組的結(jié)構(gòu)存儲(chǔ)通過(guò)直接偏移計(jì)算進(jìn)行存取98

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)索引:高度壓縮及指針結(jié)構(gòu),索引較小只需一個(gè)較小的數(shù)來(lái)標(biāo)識(shí)單元塊可以放進(jìn)內(nèi)存MDDB必須具有高效的稀疏數(shù)據(jù)處理能力:略過(guò)零元、缺損和重復(fù)數(shù)據(jù)維間的許多組合沒(méi)有具體值,是空的或者值為零許多值重復(fù)存儲(chǔ),如一年中的價(jià)格可能一直不變99BitMap索引顧客(顧客號(hào),姓名,性別,重要級(jí)別)其中重要級(jí)別所在列的取值范圍為1到5,它表示該顧客的重要程度。性別列表示顧客的性別,它只有兩個(gè)值,男或者女。100基本思想是對(duì)每一個(gè)列值,給它創(chuàng)建一個(gè)相應(yīng)的由0和1組成的序列。例如,可以用10代表男,用01代表女。同理,10000代表重要級(jí)別為1,00001代表重要級(jí)別為5。

男女10100110顧客號(hào)姓名性別重要級(jí)別11王平男312李強(qiáng)男513張嵐女514劉行男41234500100000010000100010BitMap索引101BitMap索引較緊湊,節(jié)約空間:位圖索引的大小與列的不同值的個(gè)數(shù)成正比可以使用有效的位操作來(lái)快速回答查詢(xún):例如要回答“有多少男性顧客的重要級(jí)別為5?”這樣的查詢(xún),可以用性別列的bitmap索引的第一個(gè)位向量和重要級(jí)別列的bitmap索引的第五個(gè)位向量做一個(gè)與(AND)操作,然后對(duì)結(jié)果位向量中1的個(gè)數(shù)進(jìn)行統(tǒng)計(jì)即可。102編碼的Bitmap索引對(duì)于高基數(shù)的列,標(biāo)準(zhǔn)的bitmap索引不夠有效

假定某個(gè)表T的屬性A的值域?yàn)閧a,b,c}。和標(biāo)準(zhǔn)bitmap索引不同的是,編碼BitMap索引采用2個(gè)bit而不是3個(gè)bit來(lái)對(duì)屬性A的值域進(jìn)行編碼,值a用00來(lái)代表,值b用01來(lái)代表,值c用10來(lái)代表

103編碼的Bitmap索引104

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)MDDB必須具有高效的稀疏數(shù)據(jù)處理能力:略過(guò)零元、缺損和重復(fù)數(shù)據(jù)維間的許多組合沒(méi)有具體值,是空的或者值為零許多值重復(fù)存儲(chǔ),如一年中的價(jià)格可能一直不變105chunk商店維、產(chǎn)品維、時(shí)間維每5個(gè)數(shù)組元素作為一個(gè)區(qū)間,情節(jié)維每?jī)蓚€(gè)數(shù)組元素作為一個(gè)區(qū)間

StoreProductTimeScenarioPointer0-40-40-40-10-40-45-90-10-40-410-140-1…………106壓縮方法一個(gè)Chunk實(shí)際上是一個(gè)多維數(shù)組,雖然我們希望Chunk是非稀疏的,但實(shí)際中仍然會(huì)有某些Chunk是稀疏的。為了節(jié)省存儲(chǔ)空間和I/O時(shí)間,需要對(duì)稀疏的Chunk進(jìn)行壓縮。107108

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)(MD-OLAP)

4.4.5多維數(shù)據(jù)庫(kù)存取

存取策略:MDDB利用關(guān)系數(shù)據(jù)庫(kù)保存數(shù)據(jù)的細(xì)節(jié)各級(jí)統(tǒng)計(jì)結(jié)果保存在多維數(shù)據(jù)庫(kù)中當(dāng)需要細(xì)節(jié)數(shù)據(jù)時(shí),通過(guò)MDDB去訪問(wèn)它們

多維查詢(xún)語(yǔ)言──

MDSQL109

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)(MD-OLAP)

例:列出1996年1月到6月彩電在北京地區(qū)的銷(xiāo)售量和成本

多維查詢(xún)語(yǔ)言表達(dá)語(yǔ)法1:

SelectDimensionPRODUCT

彩電

SelectDimensionREGION

北京

SelectSALES.units,SALES.cost

AcrossTIMEDOWN

REGION,PRODUCT,SALESListPeriodJAN96-JUN96110

4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)(MD-OLAP)

多維查詢(xún)語(yǔ)言表達(dá)語(yǔ)法2:

GetSALES.units,SALES.costByPRODUCT=“彩電”

ByREGION=“北京”

ByTIME=JAN96-JUN96

SALES包含統(tǒng)計(jì)指標(biāo)的度量維PRODUCT產(chǎn)品維REGION地區(qū)維TIME時(shí)間維111聯(lián)機(jī)分析處理(OLAP)4.1從OLTP到OLAP4.2OLAP的特征及衡量標(biāo)準(zhǔn)4.3OLAP實(shí)施4.4基于多維數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)4.6兩種技術(shù)間的比較112

4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

關(guān)系數(shù)據(jù)庫(kù)將多維結(jié)構(gòu)劃分為兩類(lèi)表,一類(lèi)是事實(shí)(fact)表,用來(lái)存儲(chǔ)事實(shí)的度量(measure)值及各個(gè)維的碼值;另一類(lèi)是維表,對(duì)每一個(gè)維來(lái)說(shuō),至少有一個(gè)表用來(lái)保存該維的元數(shù)據(jù),即維的描述信息,包括維的層次及成員類(lèi)別等。113LocationVancouverChicagoTorontoNewYorkTime(季度)ItemQ1Q2Q3Q4605680812927825952102310381431303840051250158085410878188829687468938436238725916829256987281002789784984870家庭娛樂(lè)計(jì)算機(jī)電話安全4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

114維:一個(gè)組織想要記錄的透視或?qū)嶓w。本例中涉及time,item,location。每一個(gè)維都有一個(gè)表與之相關(guān)聯(lián),稱(chēng)為維表。事實(shí):數(shù)據(jù)倉(cāng)庫(kù)的主題,數(shù)值度量的。本例中指銷(xiāo)售量。事實(shí)對(duì)應(yīng)事實(shí)表。4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

115

4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

用維來(lái)記錄多位數(shù)據(jù)庫(kù)中的緯度,將多位數(shù)據(jù)立方體的坐標(biāo)軸上的各個(gè)取值記錄在一張維表中,這樣對(duì)于一個(gè)n維數(shù)據(jù),ROLAP中就存在n張維表。120042200332002420011計(jì)算機(jī)2彩電3冰箱4空調(diào)1北京2上海3杭州4西安116

4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

事實(shí)表用于記錄多維模型中維度交叉點(diǎn)處的度量信息的關(guān)系表,該關(guān)系表一般由維度的碼值和相應(yīng)的度量構(gòu)成。計(jì)算機(jī)、彩電、冰箱、空調(diào)2004200320022001北京上海杭州西安Time-idProduct-idMarket-idsales1117000121500013175814146921167002215200231976241678…………117〖例〗銷(xiāo)售分析:

數(shù)據(jù)倉(cāng)庫(kù)sales圍繞商品銷(xiāo)售量這個(gè)主題。同時(shí),銷(xiāo)售量涉及以下幾個(gè)方面:time,item,location,branch。有了這些方面的信息,能夠記錄商品的月銷(xiāo)售,銷(xiāo)售商品的地點(diǎn)。4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

118通過(guò)將事實(shí)表和維表進(jìn)行連接,我們就可以得到“星型結(jié)構(gòu)(starschema)〖例〗銷(xiāo)售分析的星型圖模型。分店維銷(xiāo)售事實(shí)表

單位銷(xiāo)售額現(xiàn)金銷(xiāo)售額平均銷(xiāo)售額

地區(qū)維產(chǎn)品維時(shí)間維4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

119〖例〗銷(xiāo)售分析的星型圖模型。4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

120

事實(shí)表,包含用于分析的數(shù)值化信息和維表的關(guān)鍵字?!祭戒N(xiāo)售分析的星型圖模型。4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

121

維表,一個(gè)組織想要記錄的透視或?qū)嶓w。每一維都有一個(gè)表與之相關(guān)聯(lián)。他的主鍵一定會(huì)出現(xiàn)在事實(shí)表中,以便進(jìn)行表連接。4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

122星型模式(StarSchema)“星型模式”通過(guò)維表的主碼,將事實(shí)表與維表連接在一起,完全用二維關(guān)系表示了數(shù)據(jù)的多維概念。建立“星型模式”后,可以在關(guān)系數(shù)據(jù)庫(kù)中模擬數(shù)據(jù)的多維查詢(xún)。通過(guò)維表的主碼,對(duì)事實(shí)表和每一個(gè)維表做連接操作,一次查詢(xún)就可以從得到數(shù)據(jù)的值以及對(duì)數(shù)據(jù)的多維描述(即對(duì)應(yīng)的各維上的維成員)。123星型模式(StarSchema)“星型模式”好處:使用戶(hù)及分析人員可以用商業(yè)名詞(元數(shù)據(jù)名或標(biāo)記)來(lái)描述一個(gè)需求,然后該需求被重新翻譯成每一個(gè)維的代碼或值。124雪片模式星型模式的問(wèn)題實(shí)際中,數(shù)據(jù)往往不只有一個(gè)維層次。對(duì)于維層次復(fù)雜的維,用一張維表來(lái)描述會(huì)帶來(lái)過(guò)多的冗余數(shù)據(jù)。為了避免冗余數(shù)據(jù)占用過(guò)大的空間,可以用多張表來(lái)描述一個(gè)復(fù)雜維。比如,產(chǎn)品維可以進(jìn)一步劃分為類(lèi)型表,顏色表,商標(biāo)表等,這樣在“星”的角上又出現(xiàn)了分支,這種變種的星型模型被稱(chēng)之為“雪片模式”(SnowFlakeSchema)。125

〖例〗銷(xiāo)售分析的雪花型模型。將維表經(jīng)規(guī)范化處理,將數(shù)據(jù)進(jìn)一步分解到附加表中。4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

126

〖例〗銷(xiāo)售分析的事實(shí)星座模型。兩個(gè)事實(shí)表sales和shipping共享維表time,item,location。4.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

1274.5基于關(guān)系數(shù)據(jù)庫(kù)的OLAP實(shí)現(xiàn)

ROLAP:維表和事實(shí)表用二維關(guān)系表存放事實(shí)的提?。篔oin系統(tǒng)的性能:采用有效的查詢(xún)優(yōu)化技術(shù)、索引技術(shù)

128

4.5基于關(guān)系數(shù)據(jù)庫(kù)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論