第一章基本概念-TsinghuaUniversity_第1頁(yè)
第一章基本概念-TsinghuaUniversity_第2頁(yè)
第一章基本概念-TsinghuaUniversity_第3頁(yè)
已閱讀5頁(yè),還剩24頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第 2 章 數(shù)據(jù)倉(cāng)庫(kù)與聯(lián)機(jī)分析數(shù)據(jù)倉(cāng)庫(kù),英文名稱為 Data Warehouse,可簡(jiǎn)寫(xiě)為DW或DWH,是為企業(yè)所有級(jí)別的 決策制定過(guò)程提供所有類型數(shù)據(jù)支持的戰(zhàn)略集合。它是單個(gè)數(shù)據(jù)存儲(chǔ),出于分析性報(bào)告和 決策支持目的而創(chuàng)建,為需要業(yè)務(wù)智能的企業(yè),提供指導(dǎo)業(yè)務(wù)流程改進(jìn)、監(jiān)視時(shí)間、成本、 質(zhì)量以及控制。而聯(lián)機(jī)分析處理 (OLAP) 系統(tǒng)是數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)最主要的應(yīng)用。本章針對(duì)數(shù)據(jù)倉(cāng)庫(kù)與聯(lián)機(jī)分析的初學(xué)者,主要介紹數(shù)據(jù)倉(cāng)庫(kù)的基本概念和設(shè)計(jì)步驟, 并介紹了聯(lián)機(jī)分析技術(shù)的分類和特點(diǎn),幫助建立對(duì)數(shù)據(jù)倉(cāng)庫(kù)和聯(lián)機(jī)分析的基本認(rèn)識(shí)。2.1 數(shù) 據(jù) 倉(cāng) 庫(kù)2.1.1 數(shù)據(jù)倉(cāng)庫(kù)的基本概念1. 數(shù)據(jù)倉(cāng)庫(kù)的由來(lái)和定義數(shù)據(jù)倉(cāng)庫(kù),

2、這一概念是由數(shù)據(jù)倉(cāng)庫(kù)之父比爾恩門(mén)(Bill In mo n)于1990年提出的。數(shù)據(jù)倉(cāng)庫(kù)的主要功能是將資訊系統(tǒng)的聯(lián)機(jī)事務(wù)處理(OLTP)經(jīng)過(guò)長(zhǎng)時(shí)間累積的大量資料,通過(guò)數(shù)據(jù)倉(cāng)庫(kù)理論所特有的資料存儲(chǔ)架構(gòu)起來(lái),做出系統(tǒng)的分析整理。利用的分析方法包括聯(lián)機(jī) 分析處理 (OLAP) 、數(shù)據(jù)挖掘 (Data Mining) 等,進(jìn)而將分析結(jié)果用于決策支持系統(tǒng)(DSS)、主管資訊系統(tǒng)(EIS)等的創(chuàng)建,幫助決策者快速有效地從大量信息源中分析出對(duì)某種決策有 參考價(jià)值的信息,使得決策擬定者能快速地對(duì)外在環(huán)境的變動(dòng)做出應(yīng)對(duì),幫助建構(gòu)商業(yè)智 能(BI)。數(shù)據(jù)倉(cāng)庫(kù)之父比爾恩門(mén)在 1991年出版的Building the

3、 Data Warehouse (建立數(shù)據(jù)倉(cāng) 庫(kù),見(jiàn)圖2.1)一書(shū)中所提出的定義被廣泛接受:數(shù)據(jù)倉(cāng)庫(kù) (Data Warehouse, DW)是一個(gè) 面向主題的(Subject Oriented)、集成的(Integrated)、相對(duì)穩(wěn)定的(Non-Volatile)、反映歷史變 化(Time Varia nt)的數(shù)據(jù)集合,用于支持管理決策 (Decisio n Maki ng Support)。從信息技術(shù)上的概念來(lái)說(shuō),數(shù)據(jù)倉(cāng)庫(kù)是以關(guān)系數(shù)據(jù)庫(kù)、并行處理技術(shù)與分布式處理技 術(shù)以及聯(lián)機(jī)分析處理等技術(shù)為基礎(chǔ),為了解決擁有大量數(shù)據(jù)卻缺乏有用信息的現(xiàn)狀而提出 的數(shù)據(jù)處理技術(shù),是一種對(duì)不同系統(tǒng)數(shù)據(jù)實(shí)現(xiàn)集成

4、和共享的綜合性的解決方案。對(duì)于傳統(tǒng)數(shù)據(jù)庫(kù)與數(shù)據(jù)倉(cāng)庫(kù)的關(guān)系,可以從兩個(gè)方面來(lái)理解:首先,數(shù)據(jù)倉(cāng)庫(kù)用于支 持決策,面向分析型數(shù)據(jù)處理,它不同于企業(yè)現(xiàn)有的操作型數(shù)據(jù)庫(kù);其次,數(shù)據(jù)倉(cāng)庫(kù)是對(duì) 多個(gè)異構(gòu)的數(shù)據(jù)源的有效集成,集成后按照主題進(jìn)行了重組,并包含歷史數(shù)據(jù),而且存放 在數(shù)據(jù)倉(cāng)庫(kù)中的數(shù)據(jù)一般不再修改。由普通數(shù)據(jù)庫(kù)與數(shù)據(jù)倉(cāng)庫(kù)的對(duì)比關(guān)系來(lái)看,通常把普 通數(shù)據(jù)庫(kù)技術(shù)稱為傳統(tǒng)意義上的數(shù)據(jù)庫(kù)技術(shù),其數(shù)據(jù)處理模式可被劃分為操作型處理和分 析型處理 (或信息型處理 )。普通數(shù)據(jù)庫(kù)技術(shù)能夠完成企業(yè)的日常事務(wù)處理工作,但很難滿 足實(shí)現(xiàn)決策者制定規(guī)劃的要求,也無(wú)法滿足數(shù)據(jù)多樣化處理的要求。隨著用戶需求的日益 擴(kuò)大,分析型

5、處理和操作型處理的分離逐漸成為必然。圖2.1 建立數(shù)據(jù)倉(cāng)庫(kù)數(shù)據(jù)倉(cāng)庫(kù)的出現(xiàn)給企業(yè)機(jī)構(gòu)等帶來(lái)了巨大的變化。數(shù)據(jù)倉(cāng)庫(kù)的建立給企業(yè)帶來(lái)了一些 新的工作流程,隨之其他相關(guān)流程也會(huì)因此而改變。隨著計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)的進(jìn)步和 信息化的不斷發(fā)展,信息已成為人類社會(huì)不可缺少的重要資源。社會(huì)的信息化大大加速了 信息數(shù)據(jù)量的增長(zhǎng)。面對(duì)數(shù)據(jù)量的不斷增長(zhǎng)和應(yīng)用要求的不斷擴(kuò)張,數(shù)據(jù)庫(kù)技術(shù)的應(yīng)用和 發(fā)展也有了更高的價(jià)值和作用,促使研究者們嘗試開(kāi)發(fā)能完成事物處理、批處理以及分析 處理的各種類型的信息處理任務(wù)模式。然而,傳統(tǒng)的數(shù)據(jù)庫(kù)技術(shù)往往主要針對(duì)操作型數(shù)據(jù) 處理來(lái)設(shè)計(jì),在數(shù)據(jù)分析層面上的功能相當(dāng)有限。因此,對(duì)于決策分析,傳

6、統(tǒng)數(shù)據(jù)庫(kù)在業(yè) 務(wù)操作層面上進(jìn)行分析判斷還存在著很大的局限性。于是,研究者們開(kāi)始對(duì)操作型處理數(shù) 據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行技術(shù)處理,形成一個(gè)綜合的、面向分析的環(huán)境,使得數(shù)據(jù)存儲(chǔ)更好地支 持決策分析,這就是通常意義下數(shù)據(jù)倉(cāng)庫(kù)技術(shù)的定義。當(dāng)前數(shù)據(jù)倉(cāng)庫(kù)和聯(lián)機(jī)分析處理的主要研究領(lǐng)域有以下幾方面。(1) 數(shù)據(jù)倉(cāng)庫(kù)的建模與設(shè)計(jì)。(2) 數(shù)據(jù)倉(cāng)庫(kù)的體系結(jié)構(gòu)。(3) 數(shù)據(jù)清潔和裝載。(4) 數(shù)據(jù)刷新和凈化。(5) 對(duì)關(guān)系操作符的擴(kuò)充。(6) 操作符的有效開(kāi)發(fā)。(7) 專門(mén)的索引技術(shù)。(8) 查詢優(yōu)化。2. 數(shù)據(jù)倉(cāng)庫(kù)的特點(diǎn)數(shù)據(jù)倉(cāng)庫(kù)并不是所謂的“大型數(shù)據(jù)庫(kù)”。數(shù)據(jù)倉(cāng)庫(kù)方案建設(shè)的目的,是為前端查詢和 分析做基礎(chǔ),由于有較大的冗

7、余,所以需要的存儲(chǔ)也較大。為了更好地為應(yīng)用服務(wù),已知第2章 數(shù)據(jù)倉(cāng)庫(kù)與聯(lián)機(jī)分析數(shù)據(jù)倉(cāng)庫(kù)案例往往有如下幾方面的特點(diǎn)。1)效率高數(shù)據(jù)倉(cāng)庫(kù)的分析數(shù)據(jù)一般分為日、周、月、季、年等,可以看出,以日為周期的數(shù)據(jù) 要求的效率最高,要求 24小時(shí)甚至12小時(shí)內(nèi),客戶能看到昨天的數(shù)據(jù)分析。由于有的企 業(yè)每日的數(shù)據(jù)量很大,所以好的數(shù)據(jù)倉(cāng)庫(kù)要求要有高效率的數(shù)據(jù)分析成果。2)數(shù)據(jù)質(zhì)量高數(shù)據(jù)倉(cāng)庫(kù)提供各種信息,用戶需要的是“有效”的數(shù)據(jù),但由于數(shù)據(jù)倉(cāng)庫(kù)流程通常分 為多個(gè)步驟,包括數(shù)據(jù)清洗、裝載、查詢、展現(xiàn)等,架構(gòu)復(fù)雜,層次眾多,如果數(shù)據(jù)源有 臟數(shù)據(jù)或者代碼不嚴(yán)謹(jǐn),就可能導(dǎo)致數(shù)據(jù)失真,如果客戶看到錯(cuò)誤的信息,就可能分析得

8、出錯(cuò)誤的決策,造成損失。因此,好的數(shù)據(jù)倉(cāng)庫(kù)需要通過(guò)技術(shù)手段保證良好的數(shù)據(jù)質(zhì)量。3)擴(kuò)展性好有的大型數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)的架構(gòu)設(shè)計(jì)之所以很復(fù)雜,是因?yàn)榭紤]到企業(yè)要求數(shù)據(jù)倉(cāng)庫(kù)系 統(tǒng)在未來(lái)35年內(nèi)有良好的擴(kuò)展性,能夠穩(wěn)定運(yùn)行,而無(wú)須花費(fèi)太多的精力去重建。實(shí)現(xiàn) 的途徑主要體現(xiàn)在數(shù)據(jù)建模的合理性,可在數(shù)據(jù)倉(cāng)庫(kù)方案中多出一些中間層,使海量數(shù)據(jù) 流有足夠的緩沖,不至于因?yàn)閿?shù)據(jù)量的增大影響數(shù)據(jù)倉(cāng)庫(kù)正常運(yùn)行。數(shù)據(jù)倉(cāng)庫(kù)技術(shù)可以將 企業(yè)多年積累的海量數(shù)據(jù)喚醒,不僅能為企業(yè)管理好這些數(shù)據(jù),還能挖掘數(shù)據(jù)潛在的價(jià)值,從而成為現(xiàn)代企業(yè)運(yùn)營(yíng)維護(hù)系統(tǒng)的亮點(diǎn)之一。4)面向主題傳統(tǒng)操作型數(shù)據(jù)庫(kù)的數(shù)據(jù)組織形式是面向事務(wù)處理任務(wù),各個(gè)業(yè)務(wù)系統(tǒng)

9、之間各自分離;而數(shù)據(jù)倉(cāng)庫(kù)中的數(shù)據(jù)是按照一定的主題域進(jìn)行組織的。主題是與傳統(tǒng)數(shù)據(jù)庫(kù)的面向應(yīng)用相 對(duì)應(yīng)的,是一個(gè)抽象的概念,是對(duì)于在較高層次上將企業(yè)信息系統(tǒng)中的數(shù)據(jù)進(jìn)行綜合、歸 類并分析利用的抽象。每一個(gè)主題對(duì)應(yīng)一個(gè)宏觀的分析領(lǐng)域。數(shù)據(jù)倉(cāng)庫(kù)排除對(duì)于決策無(wú)用 的數(shù)據(jù),提供特定主題的簡(jiǎn)明視圖。3. 數(shù)據(jù)倉(cāng)庫(kù)的關(guān)鍵技術(shù)在數(shù)據(jù)流程上,根據(jù)搜集數(shù)據(jù)的過(guò)程,可將數(shù)據(jù)倉(cāng)庫(kù)的關(guān)鍵技術(shù)分為數(shù)據(jù)提取、數(shù)據(jù) 集成和存儲(chǔ)管理、數(shù)據(jù)表現(xiàn)、數(shù)據(jù)挖掘四個(gè)方面。1)數(shù)據(jù)提取數(shù)據(jù)提取過(guò)程是數(shù)據(jù)進(jìn)入倉(cāng)庫(kù)的入口。為了OLAP和OLTP系統(tǒng)各自的執(zhí)行效率,數(shù)據(jù)倉(cāng)庫(kù)絕大多數(shù)都需要一個(gè)獨(dú)立于聯(lián)機(jī)事務(wù)處理系統(tǒng)的數(shù)據(jù)環(huán)境。抽取過(guò)程涉及的數(shù)據(jù)源

10、一般包括聯(lián)機(jī)事務(wù)處理系統(tǒng)的數(shù)據(jù)、外部數(shù)據(jù)源、脫機(jī)的數(shù)據(jù)存儲(chǔ)介質(zhì)等,數(shù)據(jù)提取在技 術(shù)上主要涉及互連、復(fù)制、增量、轉(zhuǎn)換、調(diào)度和監(jiān)控等幾個(gè)方面。數(shù)據(jù)倉(cāng)庫(kù)的數(shù)據(jù)不需要 實(shí)時(shí)響應(yīng),因此數(shù)據(jù)提取可以定時(shí)進(jìn)行,但多個(gè)提取操作執(zhí)行的時(shí)間、互相的順序、成敗 對(duì)于數(shù)據(jù)倉(cāng)庫(kù)中信息的有效性則至關(guān)重要。數(shù)據(jù)提取過(guò)程涉及數(shù)據(jù)格式的轉(zhuǎn)換,理想情況 是用戶選定源數(shù)據(jù)和目標(biāo)數(shù)據(jù)的對(duì)應(yīng)關(guān)系、格式及類型,會(huì)自動(dòng)生成數(shù)據(jù)抽取的代碼。但 是,目前市場(chǎng)上提供的大多數(shù)提取工具支持的數(shù)據(jù)類型有限,難以支持動(dòng)態(tài)提取功能,這 種情況使得提取功能往往不能滿足要求。因此,實(shí)際數(shù)據(jù)倉(cāng)庫(kù)實(shí)施過(guò)程中往往不一定使用 數(shù)據(jù)提取工具,而是面向具體的主題,編制特

11、定的數(shù)據(jù)提取算法。算法的正確性和實(shí)效性 是整個(gè)數(shù)據(jù)倉(cāng)庫(kù)管理、調(diào)度和維護(hù)的關(guān)鍵。經(jīng)過(guò)數(shù)據(jù)提取后的數(shù)據(jù)記錄應(yīng)為格式統(tǒng)一、業(yè) 務(wù)信息完整的數(shù)據(jù)記錄。2) 數(shù)據(jù)集成和存儲(chǔ)管理 數(shù)據(jù)倉(cāng)庫(kù)遇到的第一個(gè)問(wèn)題是對(duì)海量數(shù)據(jù)的存儲(chǔ)和管理。這里涉及的數(shù)據(jù)量比傳統(tǒng)的 事務(wù)處理大得多,且隨著時(shí)間推移而積累。從現(xiàn)有的技術(shù)和產(chǎn)品來(lái)看,只有關(guān)系數(shù)據(jù)倉(cāng)庫(kù) 系統(tǒng)可以擔(dān)當(dāng)此任。 關(guān)系數(shù)據(jù)倉(cāng)庫(kù)經(jīng)過(guò) 30 多年的發(fā)展, 在數(shù)據(jù)存儲(chǔ)和管理方面已經(jīng)非常成 熟,管理大于 16 級(jí)的數(shù)據(jù)已經(jīng)是十分平常的事情。 目前,不少關(guān)系數(shù)據(jù)倉(cāng)庫(kù)已經(jīng)支持?jǐn)?shù)據(jù) 分割技術(shù),能夠?qū)⒁粋€(gè)大的數(shù)據(jù)倉(cāng)庫(kù)分散在多個(gè)物理設(shè)備中,進(jìn)一步增強(qiáng)了管理大數(shù)據(jù)量 的擴(kuò)展能力。數(shù)據(jù)倉(cāng)

12、庫(kù)解決的第二個(gè)問(wèn)題是并行處理。在傳統(tǒng)的聯(lián)機(jī)事務(wù)處理應(yīng)用中,用戶訪問(wèn)系 統(tǒng)的特點(diǎn)是頻繁而短??;而在數(shù)據(jù)倉(cāng)庫(kù)應(yīng)用中,用戶訪問(wèn)系統(tǒng)的特點(diǎn)是稀疏而龐大,每一 個(gè)查詢或統(tǒng)計(jì)都非常復(fù)雜,但訪問(wèn)頻率并不是很高。此時(shí),系統(tǒng)需要有能力將所有的資源 調(diào)動(dòng)起來(lái)為一個(gè)復(fù)雜的查詢請(qǐng)求服務(wù),將該請(qǐng)求并行處理。因此,并行處理技術(shù)在數(shù)據(jù)倉(cāng) 庫(kù)中比以往更重要。數(shù)據(jù)倉(cāng)庫(kù)的第三個(gè)問(wèn)題是查詢的優(yōu)化。在技術(shù)上,針對(duì)決策支持的優(yōu)化涉及數(shù)據(jù)倉(cāng)庫(kù) 技術(shù)的索引機(jī)制、查詢優(yōu)化器、連接策略、數(shù)據(jù)排序和采樣等部分。由于數(shù)據(jù)倉(cāng)庫(kù)中各類 數(shù)據(jù)表的數(shù)據(jù)量分布很不均勻,普通查詢優(yōu)化器所得出的最佳查詢路徑可能不是最優(yōu)的, 因此,面向決策支持的關(guān)系數(shù)據(jù)倉(cāng)庫(kù)都在

13、數(shù)據(jù)查詢優(yōu)化器上做了改進(jìn),根據(jù)索引的特性增 加了多重索引的能力。擴(kuò)充的關(guān)系數(shù)據(jù)倉(cāng)庫(kù)還引入了位圖索引機(jī)制,以二進(jìn)制表示字段的 狀態(tài),將查詢過(guò)程變?yōu)楹Y選過(guò)程, 通過(guò)單臺(tái)計(jì)算機(jī)的基本操作便可以篩選多個(gè)記錄。 另外, 數(shù)據(jù)倉(cāng)庫(kù)在應(yīng)用中會(huì)遇到大量的表間連接操作,擴(kuò)充的關(guān)系數(shù)據(jù)倉(cāng)庫(kù)對(duì)連接操作采用了連 接索引技術(shù)。數(shù)據(jù)倉(cāng)庫(kù)的查詢常常只需要檢索數(shù)據(jù)倉(cāng)庫(kù)中的部分記錄,而不必檢索整個(gè)數(shù) 據(jù)倉(cāng)庫(kù),決策支持的數(shù)據(jù)倉(cāng)庫(kù)還提供了數(shù)據(jù)采樣的功能,以確保在大容量數(shù)據(jù)環(huán)境下有足 夠短的系統(tǒng)響應(yīng)時(shí)間,在精確度允許的范圍內(nèi),這一技術(shù)可大大地提高系統(tǒng)查詢效率。數(shù)據(jù)倉(cāng)庫(kù)的第四個(gè)問(wèn)題是支持多維分析的查詢模式。用戶在使用數(shù)據(jù)倉(cāng)庫(kù)時(shí)的訪問(wèn)方

14、 法與傳統(tǒng)關(guān)系數(shù)據(jù)庫(kù)有很大的不同,對(duì)數(shù)據(jù)倉(cāng)庫(kù)的訪問(wèn)往往不是簡(jiǎn)單的表和記錄的查詢, 而是基于用戶業(yè)務(wù)的分析模式,即聯(lián)機(jī)分析。它的特點(diǎn)是將數(shù)據(jù)想象成多維的立方體,用 戶的查詢相當(dāng)于在其中的部分維上添加條件,對(duì)立方體進(jìn)行切片、分割,得到的結(jié)果則是 數(shù)值的矩陣或向量,并將其制成圖表或輸入數(shù)理統(tǒng)計(jì)的算法。數(shù)據(jù)倉(cāng)庫(kù)的數(shù)據(jù)可看成實(shí)物 化的視圖,而基表都在信息源,集成器所要完成的集成工作就是把數(shù)據(jù)變化反映在數(shù)據(jù)倉(cāng) 庫(kù)所維護(hù)的視圖中。絕大多數(shù)數(shù)據(jù)倉(cāng)庫(kù)視圖的維護(hù)技術(shù)都比常規(guī)的數(shù)據(jù)庫(kù)視圖維護(hù)技術(shù)復(fù) 雜。例如,即使倉(cāng)庫(kù)和信息源數(shù)據(jù)都是關(guān)系型的,數(shù)據(jù)倉(cāng)庫(kù)中的視圖也不可能用標(biāo)準(zhǔn)的關(guān) 系數(shù)據(jù)庫(kù)視圖定義語(yǔ)言 (如 SQL)

15、在信息源上定義而得到。對(duì)給定視圖,當(dāng)不需要查詢基表 即可維護(hù)該視圖時(shí),該視圖是自我維護(hù)的。數(shù)據(jù)倉(cāng)庫(kù)中的大多數(shù)視圖一般都不是自我維護(hù) 的,但可在倉(cāng)庫(kù)中存儲(chǔ)部分附加數(shù)據(jù)而達(dá)到自我維護(hù)。例如,一個(gè)極端情況就是把信息源 中的所有數(shù)據(jù)復(fù)制到數(shù)據(jù)倉(cāng)庫(kù)中,如果需要,可用這些數(shù)據(jù)重新計(jì)算視圖,對(duì)于這一問(wèn)題 的研究是要找到用最少的附加數(shù)據(jù)來(lái)實(shí)現(xiàn)給定視圖的可自我維護(hù)化的方法。3) 數(shù)據(jù)表現(xiàn) 數(shù)據(jù)表現(xiàn)主要在多維分析、數(shù)理統(tǒng)計(jì)和數(shù)據(jù)挖掘方面。多維分析是數(shù)據(jù)倉(cāng)庫(kù)的主要表 現(xiàn)形式,由于多維 OLAP(MOLAP) 系統(tǒng)是專用的,因此,關(guān)于多維分析領(lǐng)域的工具和產(chǎn)品第2章 數(shù)據(jù)倉(cāng)庫(kù)與聯(lián)機(jī)分析大多是關(guān)系 OLAP(Relati

16、onal OLAP , ROLAP)工具。在實(shí)際工作中,客戶需要通過(guò)對(duì)數(shù)據(jù) 的統(tǒng)計(jì)來(lái)驗(yàn)證他們對(duì)某些事物的假設(shè),以進(jìn)行決策,而數(shù)據(jù)挖掘強(qiáng)調(diào)的不僅僅是驗(yàn)證人們 對(duì)數(shù)據(jù)特性的假設(shè),而是要更主動(dòng)地尋找并發(fā)現(xiàn)蘊(yùn)藏在數(shù)據(jù)之中的規(guī)律。在決策支持系統(tǒng) 中,怎樣建立數(shù)據(jù)模型、怎樣充分利用系統(tǒng)中存儲(chǔ)的數(shù)據(jù)資源挖掘出所需的數(shù)據(jù),是系統(tǒng) 成功建設(shè)的難點(diǎn)。4) 數(shù)據(jù)挖掘數(shù)據(jù)挖掘是決策支持系統(tǒng)中分析技術(shù)的更高層次,數(shù)據(jù)挖掘技術(shù)采用人工智能的決策分析方法,按照用戶既定的業(yè)務(wù)目標(biāo),對(duì)數(shù)據(jù)倉(cāng)庫(kù)中浩如煙海的數(shù)據(jù)進(jìn)行探索,揭 示隱藏其中的規(guī)律,并進(jìn)一步將其模型化。4. 數(shù)據(jù)倉(cāng)庫(kù)的用途現(xiàn)代企業(yè)的運(yùn)營(yíng)很大程度上依賴于信息系統(tǒng)的支持,以

17、客戶為中心的業(yè)務(wù)模式需要強(qiáng) 大的數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)提供信息支持,在業(yè)務(wù)處理流程中,數(shù)據(jù)倉(cāng)庫(kù)的作用體現(xiàn)在決策支持、 客戶分段與評(píng)價(jià)以及市場(chǎng)自動(dòng)化等方面。1) 決策支持?jǐn)?shù)據(jù)倉(cāng)庫(kù)系統(tǒng)提供各種業(yè)務(wù)數(shù)據(jù),用戶利用各種訪問(wèn)工具從數(shù)據(jù)倉(cāng)庫(kù)獲取決策信息,了解業(yè)務(wù)的運(yùn)營(yíng)情況。關(guān)鍵性能指標(biāo)(Key Performanee Indicator, KPI)用來(lái)量化企業(yè)的運(yùn)營(yíng)狀況,它可以反映企業(yè)在盈利、效率、發(fā)展等各方面的表現(xiàn),決策支持系統(tǒng)為用戶提供KPI數(shù)據(jù)。構(gòu)造比較復(fù)雜的查詢以便發(fā)現(xiàn)潛在的問(wèn)題和機(jī)會(huì),比如銷(xiāo)售渠道規(guī)劃、市場(chǎng)評(píng)估、競(jìng) 爭(zhēng)對(duì)手評(píng)估、策略的制定與分析。構(gòu)造統(tǒng)計(jì)模型,對(duì)客戶或業(yè)務(wù)狀況進(jìn)行分析,甚至利用 數(shù)據(jù)挖掘工

18、具對(duì)業(yè)務(wù)發(fā)展和惡意透支進(jìn)行預(yù)測(cè)。2) 客戶分段與評(píng)價(jià)以客戶為中心的業(yè)務(wù)策略,最重要的特征是細(xì)分市場(chǎng),即把客戶或潛在客戶分為不同 的類別,針對(duì)不同種類的客戶提供不同的產(chǎn)品和服務(wù),采用不同的市場(chǎng)和銷(xiāo)售策略??蛻?的分段與評(píng)價(jià)是細(xì)分市場(chǎng)的主要手段。數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)中累積了大量的客戶數(shù)據(jù)可以作為分 類和評(píng)價(jià)的依據(jù),而且數(shù)據(jù)訪問(wèn)十分簡(jiǎn)單方便,建立在數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)之上的客戶分段和評(píng) 價(jià)系統(tǒng),可以達(dá)到事半功倍的效果??蛻舴侄问且钥蛻舻哪硞€(gè)或某幾個(gè)屬性進(jìn)行分類,比 如年齡、地區(qū)、收入、學(xué)歷、消費(fèi)金額等或它們的組合??蛻粼u(píng)價(jià)是建立一個(gè)評(píng)分模型對(duì) 客戶進(jìn)行評(píng)分,這樣可以綜合客戶各方面的屬性對(duì)客戶做出評(píng)價(jià),比如新產(chǎn)品推出

19、前,可 以建立一個(gè)模型,確定最可能接受新產(chǎn)品的潛在客戶。3) 市場(chǎng)自動(dòng)化決策支持幫助企業(yè)制定了產(chǎn)品和市場(chǎng)策略,客戶分段和評(píng)價(jià)為企業(yè)指出了目標(biāo)客戶的 范圍,下一步是對(duì)這些客戶展開(kāi)市場(chǎng)攻勢(shì)。市場(chǎng)自動(dòng)化的最主要內(nèi)容是促銷(xiāo)管理。促銷(xiāo)管 理的功能包括:提供目標(biāo)客戶的列表,指定客戶接觸的渠道,指定促銷(xiāo)的產(chǎn)品、服務(wù)或活 動(dòng),確定與其他活動(dòng)的關(guān)系。綜上所述,數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)已經(jīng)成為現(xiàn)代化企業(yè)必不可少的基礎(chǔ)設(shè)施之一,它是現(xiàn)代企 業(yè)運(yùn)營(yíng)支撐體系的重要組成,是企業(yè)對(duì)市場(chǎng)需求快速準(zhǔn)確響應(yīng)的有力保證。隨著中國(guó)加入 WTO,國(guó)際巨頭進(jìn)軍中國(guó)市場(chǎng),國(guó)內(nèi)企業(yè)面臨的競(jìng)爭(zhēng)將越來(lái)越激烈和殘酷,數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)是傳統(tǒng)企業(yè)迎接挑戰(zhàn)的重要力量。

20、數(shù)據(jù)倉(cāng)庫(kù)的體系結(jié)構(gòu)數(shù)據(jù)倉(cāng)庫(kù)的體系架構(gòu),主要由數(shù)據(jù)源、數(shù)據(jù)存儲(chǔ)與管理、OLAP服務(wù)器、前端工具與應(yīng)用這四大模塊組成,如圖2.2所示。圖2.2數(shù)據(jù)倉(cāng)庫(kù)的體系結(jié)構(gòu)1. 數(shù)據(jù)源數(shù)據(jù)源是整個(gè)系統(tǒng)的數(shù)據(jù)來(lái)源,是數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)的基礎(chǔ),通常包括企業(yè)內(nèi)部信息和外部信息。內(nèi)部信息包括存放于RDBMS中的各種業(yè)務(wù)處理數(shù)據(jù)和各類文檔數(shù)據(jù)。外部信息包括各類法律法規(guī)、市場(chǎng)信息和上下游合作伙伴、競(jìng)爭(zhēng)對(duì)手的信息等。2. 數(shù)據(jù)存儲(chǔ)與管理數(shù)據(jù)存儲(chǔ)與管理是整個(gè)數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)的核心。數(shù)據(jù)倉(cāng)庫(kù)的真正關(guān)鍵是數(shù)據(jù)的存儲(chǔ)和管 理。數(shù)據(jù)倉(cāng)庫(kù)的組織管理方式?jīng)Q定了它有別于傳統(tǒng)數(shù)據(jù)庫(kù),同時(shí)也決定了其對(duì)外部數(shù)據(jù)的 表現(xiàn)形式。要決定采用什么產(chǎn)品和技術(shù)來(lái)建立

21、數(shù)據(jù)倉(cāng)庫(kù)的核心,則需要從數(shù)據(jù)倉(cāng)庫(kù)的技術(shù) 特點(diǎn)著手分析。針對(duì)現(xiàn)有各業(yè)務(wù)系統(tǒng)的數(shù)據(jù),進(jìn)行抽取、清理,并有效集成,按照主題進(jìn) 行組織。數(shù)據(jù)倉(cāng)庫(kù)按照數(shù)據(jù)的覆蓋范圍可以分為企業(yè)級(jí)數(shù)據(jù)倉(cāng)庫(kù)和部門(mén)級(jí)數(shù)據(jù)倉(cāng)庫(kù)(通常稱為數(shù)據(jù)集市)。數(shù)據(jù)倉(cāng)庫(kù)中的數(shù)據(jù)是以面向主題的方式組織,而業(yè)務(wù)數(shù)據(jù)庫(kù)的數(shù)據(jù)總是圍繞 著一個(gè)或幾個(gè)業(yè)務(wù)處理流程,因此,數(shù)據(jù)從業(yè)務(wù)數(shù)據(jù)庫(kù)到數(shù)據(jù)倉(cāng)庫(kù)不是簡(jiǎn)單的復(fù)制過(guò)程而 需要十分復(fù)雜的數(shù)據(jù)處理,我們稱之為數(shù)據(jù)整合。數(shù)據(jù)整合的工作可以籠統(tǒng)地分割為數(shù)據(jù) 抽取(Extract)、轉(zhuǎn)換(Transformation)和加載(Loading),即所謂的 ETL。市場(chǎng)上有很多專用 的ETL工具可供選擇,但企業(yè)級(jí)數(shù)據(jù)倉(cāng)

22、庫(kù)系統(tǒng)的后臺(tái)數(shù)據(jù)整合工作一般不會(huì)由某一種工 具獨(dú)立完成,通常是多種不同的數(shù)據(jù)處理工具和手工編程互相配合。第2章 數(shù)據(jù)倉(cāng)庫(kù)與聯(lián)機(jī)分析3. OLAP服務(wù)器聯(lián)機(jī)分析處理(OLAP)系統(tǒng)是數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)最主要的應(yīng)用,專門(mén)設(shè)計(jì)用于支持復(fù)雜的分析操作,側(cè)重對(duì)決策人員和高層管理人員的決策支持,可以根據(jù)分析人員的要求快速、靈 活地進(jìn)行大數(shù)據(jù)量的復(fù)雜查詢處理,并且以一種直觀而易懂的形式將查詢結(jié)果提供給決策 人員,以便他們準(zhǔn)確掌握企業(yè)(公司)的經(jīng)營(yíng)狀況,了解對(duì)象的需求,制定正確的方案。該模塊對(duì)分析需要的數(shù)據(jù)進(jìn)行有效集成,按多維模型予以組織,以便進(jìn)行多角度、多層次的 分析,并發(fā)現(xiàn)趨勢(shì)。其具體實(shí)現(xiàn)可以分為:ROLAP(

23、關(guān)系型在線分析處理)、MOLAP(多維在線分析處理)和HOLAP(混合型線上分析處理)。ROLAP基本數(shù)據(jù)和聚合數(shù)據(jù)均存放在 RDBMS之中;MOLAP基本數(shù)據(jù)和聚合數(shù)據(jù)均存放于多維數(shù)據(jù)庫(kù)中;HOLAP基本數(shù)據(jù)存放于RDBMS之中,聚合數(shù)據(jù)存放于多維數(shù)據(jù)庫(kù)中。4. 前端工具與應(yīng)用前端工具和主要應(yīng)用包括各種報(bào)表工具、查詢工具、數(shù)據(jù)分析工具、數(shù)據(jù)挖掘工具、 數(shù)據(jù)挖掘及各種基于數(shù)據(jù)倉(cāng)庫(kù)或數(shù)據(jù)集市的應(yīng)用開(kāi)發(fā)工具。其中數(shù)據(jù)分析工具主要針對(duì) OLAP服務(wù)器,報(bào)表工具、數(shù)據(jù)挖掘工具主要針對(duì)數(shù)據(jù)倉(cāng)庫(kù)。5. 元數(shù)據(jù)除上述模塊之外,貫穿整個(gè)數(shù)據(jù)倉(cāng)庫(kù)體系的還有元數(shù)據(jù)(Metadata)管理模塊。數(shù)據(jù)是對(duì)事物的描述,

24、元數(shù)據(jù)就是描述數(shù)據(jù)的數(shù)據(jù),它提供了相關(guān)數(shù)據(jù)的環(huán)境。元數(shù)據(jù)實(shí)際上是要 解決任何人在何時(shí)何地為了什么原因及怎樣使用數(shù)據(jù)倉(cāng)庫(kù)的問(wèn)題,再具體一點(diǎn)兒說(shuō),元數(shù) 據(jù)在數(shù)據(jù)倉(cāng)庫(kù)管理員眼中是數(shù)據(jù)倉(cāng)庫(kù)中包含的所有內(nèi)容和過(guò)程的完整知識(shí)庫(kù)及其文檔,在 用戶眼中就是數(shù)據(jù)倉(cāng)庫(kù)的信息地圖。元數(shù)據(jù)在數(shù)據(jù)倉(cāng)庫(kù)中起著既特殊又重要的角色,它是 數(shù)據(jù)倉(cāng)庫(kù)結(jié)構(gòu)的目錄清單,可以幫助建立數(shù)據(jù)分布圖,這些數(shù)據(jù)可以從源數(shù)據(jù)轉(zhuǎn)變而來(lái)。數(shù)據(jù)倉(cāng)庫(kù)的數(shù)據(jù)模型數(shù)據(jù)模型的構(gòu)造是數(shù)據(jù)倉(cāng)庫(kù)過(guò)程中非常重要的一步。數(shù)據(jù)模型對(duì)數(shù)據(jù)倉(cāng)庫(kù)影響巨大, 它不僅決定了數(shù)據(jù)倉(cāng)庫(kù)所能進(jìn)行的分析的種類、詳細(xì)程度、性能效率和響應(yīng)時(shí)間,它還是 存儲(chǔ)策略和更新策略的基礎(chǔ)。在關(guān)系型數(shù)據(jù)庫(kù)

25、中,邏輯層一般采用關(guān)系表和視圖進(jìn)行描述, 而在數(shù)據(jù)倉(cāng)庫(kù)采用的數(shù)據(jù)模型,比較常見(jiàn)的有星型模型和雪花模型,如圖2.3所示。址舉憤型圖2.3 數(shù)據(jù)模型形態(tài)1 星型模型星型模型是一種多維數(shù)據(jù)關(guān)系,由一個(gè)事實(shí)表和一組維表組成 (如圖2.4所示)。星型模型是一種由一點(diǎn)向外輻射的建模范例,中間有一個(gè)單一對(duì)象沿半徑向外連接到多個(gè)對(duì)象。 星型模型中心的對(duì)象稱為“事實(shí)表”,與之相連的對(duì)象稱為“維表”。每個(gè)維表都有一個(gè) 鍵作為主鍵,所有這些鍵組合成事實(shí)表的主鍵。事實(shí)表的非主屬性是事實(shí),它們一般都是 數(shù)值或其他可以進(jìn)行計(jì)算的數(shù)據(jù)。而維表大都是文字、時(shí)間等類型的數(shù)據(jù)。事實(shí)表與維表 連接的鍵通常為整數(shù)類型,并盡量不包含字

26、面意思。一個(gè)簡(jiǎn)單邏輯的星型模型由一個(gè)事實(shí) 表和若干個(gè)維表組成。復(fù)雜的星型模型包含數(shù)百個(gè)事實(shí)表和維表。2.雪花模型雪花模型是對(duì)星型模型的一個(gè)擴(kuò)展。如果某個(gè)維表有多個(gè)層次,就可以形成雪花模型 (如圖2.5 所示)。它是對(duì)維表的進(jìn)一步層次化,形成了一些局部的“層次”區(qū)域。雪花模型 的優(yōu)點(diǎn)是可以通過(guò)最大限度地減少數(shù)據(jù)存儲(chǔ)量以及聯(lián)合較小的維表來(lái)改善查詢性能。在數(shù) 據(jù)倉(cāng)庫(kù)的邏輯設(shè)計(jì)中, 除了定義關(guān)系模式外,還包括數(shù)據(jù)粒度的選擇、為表增加時(shí)間字段、 進(jìn)行表的分割、合理化表的劃分等方面。1圖2.5 雪花模型實(shí)例第2章 數(shù)據(jù)倉(cāng)庫(kù)與聯(lián)機(jī)分析數(shù)據(jù)倉(cāng)庫(kù)的數(shù)據(jù)模型有別于一般聯(lián)機(jī)交易處理系統(tǒng),數(shù)據(jù)模型可以分為邏輯與實(shí)體數(shù)

27、 據(jù)模型。邏輯數(shù)據(jù)模型陳述業(yè)務(wù)相關(guān)數(shù)據(jù)的關(guān)系,基本上是一種與數(shù)據(jù)庫(kù)無(wú)關(guān)的結(jié)構(gòu)設(shè)計(jì),通常均會(huì)采用正規(guī)方式設(shè)計(jì),主要精神是從企業(yè)業(yè)務(wù)領(lǐng)域的角度及高度訂出主題域模型, 再逐步向下深入到實(shí)體和屬性。在設(shè)計(jì)時(shí)不會(huì)考慮未來(lái)采用的數(shù)據(jù)庫(kù)管理系統(tǒng),也不需考 慮分析性能問(wèn)題。實(shí)體數(shù)據(jù)模型則與數(shù)據(jù)庫(kù)管理系統(tǒng)有關(guān),是建立在該系統(tǒng)上的數(shù)據(jù)架構(gòu),故設(shè)計(jì)時(shí)需考慮數(shù)據(jù)類型、空間及性能相關(guān)的議題。實(shí)體數(shù)據(jù)模型設(shè)計(jì),則較多采用正規(guī) 方式或多維方式的討論,但從實(shí)務(wù)上來(lái)說(shuō),不執(zhí)著于理論,能與業(yè)務(wù)需要有最好的搭配, 才是企業(yè)在建設(shè)數(shù)據(jù)倉(cāng)庫(kù)時(shí)的正確思路。數(shù)據(jù)倉(cāng)庫(kù)的體系構(gòu)建不僅是計(jì)算機(jī)工具技術(shù)面的運(yùn)用,在規(guī)劃和執(zhí)行方面更需對(duì)產(chǎn)業(yè) 知識(shí)、

28、行銷(xiāo)管理、市場(chǎng)定位、策略規(guī)劃等相關(guān)業(yè)務(wù)有深入的了解,才能真正發(fā)揮數(shù)據(jù)倉(cāng)庫(kù) 以及后續(xù)分析工具的價(jià)值,提升企業(yè)競(jìng)爭(zhēng)力。2.2 數(shù)據(jù)倉(cāng)庫(kù)的設(shè)計(jì)步驟數(shù)據(jù)倉(cāng)庫(kù)的設(shè)計(jì)和傳統(tǒng)數(shù)據(jù)庫(kù)系統(tǒng)的設(shè)計(jì)有著本質(zhì)區(qū)別。傳統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)首先定義 了明確的應(yīng)用需求,然后嚴(yán)格遵循系統(tǒng)生命周期的階段劃分,為每個(gè)階段都規(guī)定明確的任 務(wù),采取先收集、分析并確定應(yīng)用需求,再利用構(gòu)建數(shù)據(jù)庫(kù)的系統(tǒng)生命周期法實(shí)施。相對(duì) 而言,數(shù)據(jù)倉(cāng)庫(kù)的用戶一般是中高層的管理人員,其原始需求往往并不明確且在開(kāi)發(fā)過(guò)程 中還會(huì)不斷地變化和增加,另外,分析需求和業(yè)務(wù)需求也有很大差異,因此,傳統(tǒng)數(shù)據(jù)庫(kù) 的設(shè)計(jì)方法不能直接用來(lái)設(shè)計(jì)數(shù)據(jù)倉(cāng)庫(kù),在設(shè)計(jì)之初考慮用戶的分析需求

29、很有必要,同時(shí) 也要考慮業(yè)務(wù)數(shù)據(jù)源的結(jié)構(gòu),因?yàn)樗菙?shù)據(jù)倉(cāng)庫(kù)的基礎(chǔ)。分析需求之后,就是建立模型了。模型是對(duì)現(xiàn)實(shí)事物的反映和抽象,它可以幫助我們 更加清晰地了解客觀世界。模型是用戶業(yè)務(wù)需求的體現(xiàn),是數(shù)據(jù)倉(cāng)庫(kù)項(xiàng)目成功與否最重要 的技術(shù)因素。大型企業(yè)的信息系統(tǒng)一般具有業(yè)務(wù)復(fù)雜、機(jī)構(gòu)復(fù)雜、數(shù)據(jù)龐大的特點(diǎn),數(shù)據(jù) 倉(cāng)庫(kù)建模必須注意以下幾個(gè)方面。(1) 滿足各層級(jí)用戶的需要。大型企業(yè)的業(yè)務(wù)流程十分復(fù)雜,數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)涉及的業(yè) 務(wù)用戶眾多,在進(jìn)行數(shù)據(jù)模型設(shè)計(jì)的時(shí)候必須兼顧不同業(yè)務(wù)產(chǎn)品、不同業(yè)務(wù)部門(mén)、不同層 次、不同級(jí)別用戶的信息需求。(2) 兼顧效率與數(shù)據(jù)粒度的平衡。數(shù)據(jù)粒度和查詢效率從來(lái)都是矛盾的,細(xì)小的數(shù)據(jù)

30、粒度可以保證信息訪問(wèn)的靈活性,但同時(shí)卻降低了查詢的效率并占用大量的存儲(chǔ)空間。數(shù) 據(jù)模型的設(shè)計(jì)必須在這矛盾的兩者中取得平衡,優(yōu)秀的數(shù)據(jù)模型設(shè)計(jì)既可以提供足夠詳細(xì) 的數(shù)據(jù)支持又能夠保證查詢的效率。(3) 支持需求的變化。用戶的信息需求隨著市場(chǎng)的變化而變化,所以需求的變化只有 在市場(chǎng)競(jìng)爭(zhēng)停頓的時(shí)候才會(huì)停止,而且隨著競(jìng)爭(zhēng)的激化,需求變化會(huì)越來(lái)越頻繁。數(shù)據(jù)模 型的設(shè)計(jì)必須考慮如何適應(yīng)和滿足需求的變化。(4) 避免對(duì)業(yè)務(wù)運(yùn)營(yíng)系統(tǒng)造成影響。大型企業(yè)的數(shù)據(jù)倉(cāng)庫(kù)是一個(gè)每天都在成長(zhǎng)的龐然 大物,它的運(yùn)行很容易占用很多的資源,比如網(wǎng)絡(luò)資源、系統(tǒng)資源,在進(jìn)行數(shù)據(jù)模型設(shè)計(jì) 的時(shí)候也需要考慮如何減少對(duì)業(yè)務(wù)系統(tǒng)性能的影響。

31、(5) 考慮未來(lái)的可擴(kuò)展性。數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)是一個(gè)與企業(yè)同步發(fā)展的有機(jī)體,數(shù)據(jù)模型作為數(shù)據(jù)倉(cāng)庫(kù)的靈魂必須提供可擴(kuò)展的能力,在進(jìn)行數(shù)據(jù)模型設(shè)計(jì)時(shí)必須考慮未來(lái)的發(fā)展,更多的非核心業(yè)務(wù)數(shù)據(jù)必須可以方便地加入到數(shù)據(jù)倉(cāng)庫(kù),而不需要對(duì)數(shù)據(jù)倉(cāng)庫(kù)中原有的系 統(tǒng)進(jìn)行大規(guī)模的修改。數(shù)據(jù)模型是對(duì)現(xiàn)實(shí)世界進(jìn)行抽象的工具。在信息管理中需要將現(xiàn)實(shí)世界的事物及其有 關(guān)特征轉(zhuǎn)換為信息世界的數(shù)據(jù),才能對(duì)信息進(jìn)行處理與管理,這就需要依靠數(shù)據(jù)模型作為 轉(zhuǎn)換的橋梁。這種轉(zhuǎn)換經(jīng)歷了從現(xiàn)實(shí)到概念模型,從概念模型到邏輯模型,從邏輯模型到 物理模型的轉(zhuǎn)換。在數(shù)據(jù)倉(cāng)庫(kù)建模的過(guò)程中同樣也要經(jīng)歷概念模型、邏輯模型與物理模型 的三級(jí)模型開(kāi)發(fā)。因此,數(shù)據(jù)

32、建??梢苑譃槿齻€(gè)層次:概念模型(高層建模,實(shí)體關(guān)系層),邏輯模型(中間層建模,數(shù)據(jù)項(xiàng)集),物理模型(底層建模),如圖2.6所示。建模流程需求分析L 一概念模型=邏輯模型物理模型圖2.6數(shù)據(jù)倉(cāng)庫(kù)的設(shè)計(jì)步驟2.2.1 概念模型設(shè)計(jì)概念模型表征了待解釋的系統(tǒng)的學(xué)科共享知識(shí)。為了把現(xiàn)實(shí)世界中的具體事物抽象、 組織為某一數(shù)據(jù)庫(kù)管理系統(tǒng)支持的數(shù)據(jù)模型,人們常常首先將現(xiàn)實(shí)世界抽象為信息世界, 然后將信息世界轉(zhuǎn)換為機(jī)器世界。這也就是說(shuō),首先把現(xiàn)實(shí)世界中的客觀對(duì)象抽象為某一 種信息結(jié)構(gòu),這種信息結(jié)構(gòu)并不依賴于具體的計(jì)算機(jī)系統(tǒng),不是某一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng) (DBMS)支持的數(shù)據(jù)模型,而是概念級(jí)的模型,稱為概念模型。

33、通常在對(duì)數(shù)據(jù)倉(cāng)庫(kù)進(jìn)行開(kāi)發(fā)之前可以對(duì)數(shù)據(jù)倉(cāng)庫(kù)的需求進(jìn)行分析,從各種途徑了解數(shù) 據(jù)倉(cāng)庫(kù)用戶的意向性數(shù)據(jù)需求,即在決策過(guò)程中需要什么數(shù)據(jù)作為參考。而數(shù)據(jù)倉(cāng)庫(kù)概念 模型的設(shè)計(jì)需要給出一個(gè)數(shù)據(jù)倉(cāng)庫(kù)的粗略架構(gòu),來(lái)確認(rèn)數(shù)據(jù)倉(cāng)庫(kù)的開(kāi)發(fā)人員是否已經(jīng)正確 地了解數(shù)據(jù)倉(cāng)庫(kù)最終用戶的信息需求。在概念模型的設(shè)計(jì)中必須很好地對(duì)業(yè)務(wù)進(jìn)行理解, 保證所有的業(yè)務(wù)處理都被歸納進(jìn)概念模型。概念模型設(shè)計(jì)的成果是,在原有的數(shù)據(jù)庫(kù)的基礎(chǔ)上建立了一個(gè)較為穩(wěn)固的概念模型。 因?yàn)閿?shù)據(jù)倉(cāng)庫(kù)是對(duì)原有數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù)進(jìn)行集成和重組而形成的數(shù)據(jù)集合,所以數(shù)據(jù) 倉(cāng)庫(kù)的概念模型設(shè)計(jì),首先要對(duì)原有數(shù)據(jù)庫(kù)系統(tǒng)加以分析理解,看在原有的數(shù)據(jù)庫(kù)系統(tǒng)中 “有什么”

34、“怎樣組織的”和“如何分布的”等,然后再來(lái)考慮應(yīng)當(dāng)如何建立數(shù)據(jù)倉(cāng)庫(kù)系 統(tǒng)的概念模型。一方面,通過(guò)原有的數(shù)據(jù)庫(kù)的設(shè)計(jì)文檔以及在數(shù)據(jù)字典中的數(shù)據(jù)庫(kù)關(guān)系模 式,可以對(duì)企業(yè)現(xiàn)有的數(shù)據(jù)庫(kù)中的內(nèi)容有一個(gè)完整而清晰的認(rèn)識(shí);另一方面,數(shù)據(jù)倉(cāng)庫(kù)的 概念模型是面向企業(yè)全局建立的,它為集成來(lái)自各個(gè)面向應(yīng)用的數(shù)據(jù)庫(kù)的數(shù)據(jù)提供了統(tǒng)一 的概念視圖。概念模型的設(shè)計(jì)是在較高的抽象層次上的設(shè)計(jì),因此建立概念模型時(shí)不用考 慮具體技術(shù)條件的限制。本階段主要需要完成的工作是:界定系統(tǒng)的邊界,確定主要的主題域及其內(nèi)容。第2章 數(shù)據(jù)倉(cāng)庫(kù)與聯(lián)機(jī)分析1. 界定系統(tǒng)的邊界數(shù)據(jù)倉(cāng)庫(kù)是面向決策分析的數(shù)據(jù)庫(kù),我們無(wú)法在數(shù)據(jù)倉(cāng)庫(kù)設(shè)計(jì)的最初就得到詳細(xì)而

35、明 確的需求,但是一些基本的方向性的需求還是擺在了設(shè)計(jì)人員的面前。(1) 要做的決策類型有哪些?(2) 經(jīng)營(yíng)者感興趣的是什么問(wèn)題?(3) 這些問(wèn)題需要什么樣的信息?(4) 要得到這些信息需要包含原有數(shù)據(jù)庫(kù)系統(tǒng)的哪些部分的數(shù)據(jù)?這樣,我們可以劃定一個(gè)當(dāng)前的大致的系統(tǒng)邊界,集中精力對(duì)最需要的部分進(jìn)行開(kāi)發(fā)。因而,從某種意義上講,界定系統(tǒng)邊界的工作也可以看作是數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)設(shè)計(jì)的需求分析, 因?yàn)樗鼘Q策者的數(shù)據(jù)分析的需求用系統(tǒng)邊界的定義形式反映出來(lái)。2. 確定主要的主題域及其內(nèi)容在這一步中,要確定系統(tǒng)所包含的主題域,然后對(duì)每個(gè)主題域的內(nèi)容進(jìn)行較明確的描 述,描述的內(nèi)容包括:主題的公共碼鍵,主題之間的聯(lián)系

36、,充分代表主題的屬性組。由于數(shù)據(jù)倉(cāng)庫(kù)的實(shí)體絕不會(huì)是相互對(duì)等的,在數(shù)據(jù)倉(cāng)庫(kù)的應(yīng)用中,不同的實(shí)體數(shù)據(jù)載 入量會(huì)有很大分別,因此需要一種不同的數(shù)據(jù)模型設(shè)計(jì)處理方式,用來(lái)管理數(shù)據(jù)倉(cāng)庫(kù)中載 入某個(gè)實(shí)體的大量數(shù)據(jù)的設(shè)計(jì)結(jié)構(gòu),這就是星型模型。星型模型是最常用的數(shù)據(jù)倉(cāng)庫(kù)設(shè)計(jì) 結(jié)構(gòu)的實(shí)現(xiàn)模式。星型模式通過(guò)使用一個(gè)包含主題事實(shí)表和多個(gè)包含事實(shí)的非正規(guī)化描述 的維度表,支持各種決策查詢。星型模型的核心是事實(shí)表,圍繞事實(shí)表的是維度表。假設(shè)我們以一個(gè)網(wǎng)上藥店為例建立星型模型。建立網(wǎng)上藥店的數(shù)據(jù)倉(cāng)庫(kù)對(duì)于賣(mài)家來(lái)說(shuō),可以通過(guò)數(shù)據(jù)倉(cāng)庫(kù)掌握商品的銷(xiāo)售和庫(kù)存信息,以便及時(shí)調(diào)整營(yíng)銷(xiāo)策略。對(duì)于買(mǎi)家來(lái)說(shuō), 也可以通過(guò)數(shù)據(jù)倉(cāng)庫(kù)了解商品的庫(kù)

37、存信息,以便順利地購(gòu)買(mǎi)成功。比較傳統(tǒng)數(shù)據(jù)庫(kù),數(shù)據(jù) 倉(cāng)庫(kù)更有利于輔助企業(yè)做出營(yíng)銷(xiāo)決策,對(duì)企業(yè)制定策略時(shí)更加有參考價(jià)值。通過(guò)數(shù)據(jù)倉(cāng)庫(kù) 中的信息可以幫助企業(yè)更加準(zhǔn)確地決策分析用戶和把握需求:買(mǎi)家的購(gòu)買(mǎi)喜好、買(mǎi)家的信 用度、藥品供應(yīng)外部市場(chǎng)行情、藥品的銷(xiāo)售量、藥品的采購(gòu)量、藥品的庫(kù)存量、藥品的利 潤(rùn)和供應(yīng)商信息。數(shù)據(jù)倉(cāng)庫(kù)通常是按照主題來(lái)組織數(shù)據(jù)的,所以設(shè)計(jì)概念模型首先要確定主題并根據(jù)主 題設(shè)定系統(tǒng)的邊界。我們經(jīng)過(guò)對(duì)網(wǎng)上藥店各層管理人員所需要信息的內(nèi)容以及數(shù)據(jù)間關(guān)系 的分析、抽象和綜合,得到系統(tǒng)的數(shù)據(jù)模型。再將數(shù)據(jù)模型映射到數(shù)據(jù)庫(kù)系統(tǒng),就可以了 解到現(xiàn)有數(shù)據(jù)庫(kù)系統(tǒng)完成了數(shù)據(jù)模型中的哪些部分,還缺少哪些部

38、分。然后再將數(shù)據(jù)模型 映射到數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng),總結(jié)出網(wǎng)上藥店系統(tǒng)需要的主題。網(wǎng)上藥店系統(tǒng)主要包括下列主題:藥品(商品)主題、買(mǎi)家主題、倉(cāng)儲(chǔ)主題。在充分分析各層管理人員決策過(guò)程中需要的行業(yè)信息以及信息粒度(詳細(xì)程度)后,還可以衍生出供應(yīng)主題和銷(xiāo)售主題,如表 2.1所示。表2.1網(wǎng)上藥店的主題主題內(nèi)容描述藥品主題藥品信息、保質(zhì)期、庫(kù)存信息買(mǎi)家主題買(mǎi)家信息、級(jí)別權(quán)限、送貨信息續(xù)表主題內(nèi)容描述供應(yīng)主題供應(yīng)商信息、資質(zhì)、藥品供應(yīng)信息倉(cāng)儲(chǔ)主題倉(cāng)儲(chǔ)方式、數(shù)量、管理情況銷(xiāo)售主題銷(xiāo)售訂單、付款記錄等我們可以通過(guò)包圖來(lái)描述藥店數(shù)據(jù)倉(cāng)庫(kù)的主題。包圖是類圖的上層容器,可以使用類 圖描述各主題,而用包圖來(lái)描述主體之間的關(guān)聯(lián)

39、。網(wǎng)上藥店數(shù)據(jù)倉(cāng)庫(kù)主題確定的星型模型 (如圖2.7所示)。當(dāng)然,這還不是完備的模型,還需要細(xì)化到表格進(jìn)行關(guān)聯(lián),這在本書(shū)的實(shí) 例部分會(huì)詳細(xì)闡述,這里不再贅述。圖2.7網(wǎng)上藥店星型模型2.2.2 邏輯模型設(shè)計(jì)邏輯模型就是用來(lái)構(gòu)建數(shù)據(jù)倉(cāng)庫(kù)的數(shù)據(jù)庫(kù)邏輯模型。根據(jù)分析系統(tǒng)的實(shí)際需求決策構(gòu) 建數(shù)據(jù)庫(kù)邏輯關(guān)系模型,定義數(shù)據(jù)庫(kù)物體結(jié)構(gòu)及其關(guān)系。它關(guān)聯(lián)著數(shù)據(jù)倉(cāng)庫(kù)的邏輯模型和 物理模型兩方。邏輯建模是數(shù)據(jù)倉(cāng)庫(kù)實(shí)施中的重要一環(huán),因?yàn)樗苤苯臃从吵鰳I(yè)務(wù)部門(mén)的 需求,同時(shí)對(duì)系統(tǒng)的物理實(shí)施有著重要的指導(dǎo)作用,它的作用在于可以通過(guò)實(shí)體和關(guān)系勾 勒出企業(yè)的數(shù)據(jù)藍(lán)圖。數(shù)據(jù)倉(cāng)庫(kù)不單要能滿足現(xiàn)有的信息消費(fèi)需求,還要有很好的可擴(kuò)展性

40、滿足新的需求, 并能作為一個(gè)未來(lái)其他系統(tǒng)的數(shù)據(jù)平臺(tái)。因此,數(shù)據(jù)倉(cāng)庫(kù)必須要有靈活、統(tǒng)一的數(shù)據(jù)組織 結(jié)構(gòu),并試圖包含所有現(xiàn)在和未來(lái)客戶關(guān)心和可能關(guān)心的信息,也許對(duì)其中一部分?jǐn)?shù)據(jù)目 前沒(méi)有直接的需求,但是未來(lái)可能會(huì)非常有用,這對(duì)于一個(gè)成功的數(shù)據(jù)倉(cāng)庫(kù)邏輯模型設(shè)計(jì) 是應(yīng)該納入考慮的。邏輯模型應(yīng)該是按主題域組織起來(lái)的,主題域之間的關(guān)聯(lián)關(guān)系可以引申到各主題下各 個(gè)邏輯模型之間的關(guān)聯(lián)關(guān)系,不但可以很容易滿足現(xiàn)有的一些跨主題查詢需求,還可能產(chǎn)第2章 數(shù)據(jù)倉(cāng)庫(kù)與聯(lián)機(jī)分析生大量有價(jià)值、但尚未提出需求的分析。并且,在邏輯模型設(shè)計(jì)中還應(yīng)盡可能充分地考慮 各主題的指標(biāo)、相關(guān)維度,以及其他與分析無(wú)關(guān)但有明細(xì)查詢意義的字段。

41、邏輯模型指數(shù)據(jù)倉(cāng)庫(kù)數(shù)據(jù)的邏輯表現(xiàn)形式。從最終應(yīng)用的功能和性能的角度來(lái)看,數(shù) 據(jù)倉(cāng)庫(kù)的數(shù)據(jù)邏輯模型也許是整個(gè)項(xiàng)目最重要的方面,主要包括確立主題域、劃分粒度層 次、確定數(shù)據(jù)分割策略和確定關(guān)系模式幾個(gè)階段。1. 確立主題域在概念模型設(shè)計(jì)中,確定了幾個(gè)基本的主題域,但是,數(shù)據(jù)倉(cāng)庫(kù)的設(shè)計(jì)方法是一個(gè)逐 步求精的過(guò)程,在進(jìn)行設(shè)計(jì)時(shí),一般是一次一個(gè)主題或一次若干個(gè)主題地逐步完成的。所 以,我們必須對(duì)概念模型設(shè)計(jì)步驟中確定的幾個(gè)基本主題域進(jìn)行分析,并選擇首先要實(shí)施 的主題域。選擇第一個(gè)主題域所要考慮的是它要足夠大,以便使得該主題域能建設(shè)成為一 個(gè)可應(yīng)用的系統(tǒng);它還要足夠小,以便于開(kāi)發(fā)和較快地實(shí)施。如果所選擇的主

42、題域很大并 且很復(fù)雜,我們甚至可以針對(duì)它的一個(gè)有意義的子集來(lái)進(jìn)行開(kāi)發(fā)。在每一次的反饋過(guò)程中,都要進(jìn)行主題域的分析。2. 劃分粒度層次數(shù)據(jù)倉(cāng)庫(kù)邏輯設(shè)計(jì)中要解決的一個(gè)重要問(wèn)題是決定數(shù)據(jù)倉(cāng)庫(kù)的粒度劃分層次,粒度層 次劃分適當(dāng)與否直接影響到數(shù)據(jù)倉(cāng)庫(kù)中的數(shù)據(jù)量和所適合的查詢類型。確定數(shù)據(jù)倉(cāng)庫(kù)的粒 度劃分,可以通過(guò)估算數(shù)據(jù)行數(shù)和所需的DASD(直接存儲(chǔ)設(shè)備)數(shù),來(lái)確定是采用單一粒度還是多重粒度,以及粒度劃分的層次。在數(shù)據(jù)倉(cāng)庫(kù)中,包含了大量事務(wù)系統(tǒng)的細(xì)節(jié)數(shù)據(jù)。如果系統(tǒng)每運(yùn)行一個(gè)查詢,都掃描所有的細(xì)節(jié)數(shù)據(jù),則會(huì)大大降低系統(tǒng)的效率。在數(shù)據(jù)倉(cāng) 庫(kù)中將細(xì)節(jié)數(shù)據(jù)進(jìn)行預(yù)先綜合,形成輕度綜合或者高度綜合的數(shù)據(jù),這樣就滿足

43、了某些宏 觀分析對(duì)數(shù)據(jù)的需求。這雖然增加了冗余,卻使響應(yīng)時(shí)間縮短。所以,確定粒度是數(shù)據(jù)倉(cāng) 庫(kù)開(kāi)發(fā)者需要面對(duì)的一個(gè)最重要的設(shè)計(jì)問(wèn)題。其主要問(wèn)題是使其處于一個(gè)合適的級(jí)別,粒 度級(jí)別既不能太高也不能太低。確定適當(dāng)粒度級(jí)別所要做的第一件事就是對(duì)數(shù)據(jù)倉(cāng)庫(kù)中將 來(lái)的數(shù)據(jù)行數(shù)和所需的 DASD數(shù)進(jìn)行粗略估算。對(duì)將在數(shù)據(jù)倉(cāng)庫(kù)中存儲(chǔ)的數(shù)據(jù)的行數(shù)進(jìn)行 粗略估算對(duì)于體系結(jié)構(gòu)設(shè)計(jì)人員來(lái)說(shuō)是非常有意義的。如果數(shù)據(jù)只有萬(wàn)行級(jí),那么幾乎任 何粒度級(jí)別都不會(huì)有問(wèn)題;如果數(shù)據(jù)有千萬(wàn)行級(jí),那么就需要一個(gè)低的粒度級(jí)別;如果有 百億行級(jí),不但需要有一個(gè)低粒度級(jí)別,還需要考慮將大部分?jǐn)?shù)據(jù)移到溢出存儲(chǔ)器(輔助設(shè)備)上。空間/行數(shù)的計(jì)算方

44、法如下。(1) 確定數(shù)據(jù)倉(cāng)庫(kù)所要?jiǎng)?chuàng)建的所有表,然后估計(jì)每張表中一行的大小。確切的大小可 能難以確定,估計(jì)一個(gè)下界和上界就可以了。(2) 估計(jì)一年內(nèi)表的最大和最小行數(shù)。(3) 用同樣的方法估計(jì)五年內(nèi)表的最大和最小行數(shù)。(4) 計(jì)算索引數(shù)據(jù)所占的空間,確定每張表(對(duì)表中的每個(gè)關(guān)鍵字或會(huì)被直接搜索的數(shù)據(jù)元素)的關(guān)鍵字或數(shù)據(jù)元素的長(zhǎng)度,并弄清楚是否原始表中的每條記錄都存在關(guān)鍵字。將各表中行數(shù)可能的最大值和最小值分別乘以每行數(shù)據(jù)的最大長(zhǎng)度和最小長(zhǎng)度。另外 還要將索引項(xiàng)數(shù)目與關(guān)鍵字長(zhǎng)度的乘積累加到總的數(shù)據(jù)量中去,以確定出最終需要的數(shù)據(jù) 總量。3. 確定數(shù)據(jù)分割策略 數(shù)據(jù)分割是數(shù)據(jù)倉(cāng)庫(kù)設(shè)計(jì)的一項(xiàng)重要內(nèi)容,是

45、提高數(shù)據(jù)倉(cāng)庫(kù)性能的一項(xiàng)重要技術(shù)。數(shù) 據(jù)的分割是指把邏輯上是統(tǒng)一整體的數(shù)據(jù)分割成較小的、 可以獨(dú)立管理的物理單元 (稱為分 片)進(jìn)行存儲(chǔ),以便于重構(gòu)、重組和恢復(fù),以提高創(chuàng)建索引和順序掃描的效率。數(shù)據(jù)的分割 使數(shù)據(jù)倉(cāng)庫(kù)的開(kāi)發(fā)人員和用戶具有更大的靈活性。選擇適當(dāng)?shù)臄?shù)據(jù)分割的標(biāo)準(zhǔn),一般要考 慮以下幾方面因素:數(shù)據(jù)量 (而非記錄行數(shù) )、數(shù)據(jù)分析處理的實(shí)際情況、簡(jiǎn)單易行以及粒 度劃分策略等。數(shù)據(jù)量的大小是決定是否進(jìn)行數(shù)據(jù)分割和如何分割的主要因素;數(shù)據(jù)分析 處理的要求是選擇數(shù)據(jù)分割標(biāo)準(zhǔn)的一個(gè)主要依據(jù),因?yàn)閿?shù)據(jù)分割是跟數(shù)據(jù)分析處理的對(duì)象 緊密聯(lián)系的;我們還要考慮到所選擇的數(shù)據(jù)分割標(biāo)準(zhǔn)應(yīng)是自然的、易于實(shí)施的,

46、同時(shí)也要 考慮數(shù)據(jù)分割的標(biāo)準(zhǔn)與粒度劃分層次是適應(yīng)的,最常見(jiàn)的是以時(shí)間進(jìn)行分割,如產(chǎn)品每年 的銷(xiāo)售情況可分別獨(dú)立存儲(chǔ)。4. 確定關(guān)系模式 數(shù)據(jù)倉(cāng)庫(kù)的每個(gè)主題都是由多個(gè)表來(lái)實(shí)現(xiàn)的,這些表之間依靠主題的公共碼鍵聯(lián)系在 一起,形成一個(gè)完整的主題。在概念模型設(shè)計(jì)時(shí),我們就確定了數(shù)據(jù)倉(cāng)庫(kù)的基本主題,并 對(duì)每個(gè)主題的公共碼鍵、基本內(nèi)容等做了描述,在這一步將要對(duì)選定的當(dāng)前實(shí)施的主題進(jìn) 行模式劃分,形成多個(gè)表,并確定各個(gè)表的關(guān)系模式。2.2.3 物理模型設(shè)計(jì)物理模型就是構(gòu)建數(shù)據(jù)倉(cāng)庫(kù)的物理分布模型,主要包含數(shù)據(jù)倉(cāng)庫(kù)的軟硬件配置、資源 情況以及數(shù)據(jù)倉(cāng)庫(kù)模式。概念世界是現(xiàn)實(shí)情況在人們頭腦中的反映,人們需要利用一種模

47、式將現(xiàn)實(shí)世界在自己的頭腦中表達(dá)出來(lái)。邏輯世界是人們?yōu)閷⒋嬖谟谧约侯^腦中的概念模 型轉(zhuǎn)換到計(jì)算機(jī)中的實(shí)際物理存儲(chǔ)過(guò)程中的一個(gè)計(jì)算機(jī)邏輯表示模式。通過(guò)這個(gè)模式,人 們可以容易地將概念模型轉(zhuǎn)換成計(jì)算機(jī)世界的物理模型。物理模型是指現(xiàn)實(shí)世界中的事物 在計(jì)算機(jī)系統(tǒng)中的實(shí)際存儲(chǔ)模式,只有依靠這個(gè)物理存儲(chǔ)模式,人們才能實(shí)現(xiàn)利用計(jì)算機(jī) 對(duì)現(xiàn)實(shí)世界的信息管理。物理模型設(shè)計(jì)所做的工作是根據(jù)信息系統(tǒng)的容量、復(fù)雜度、項(xiàng)目資源以及數(shù)據(jù)倉(cāng)庫(kù)項(xiàng) 目自身 (當(dāng)然,也可以是非數(shù)據(jù)倉(cāng)庫(kù)項(xiàng)目 ) 的軟件生命周期確定數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)的軟硬件配置、 數(shù)據(jù)倉(cāng)庫(kù)分層設(shè)計(jì)模式、數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)、確定索引策略、確定數(shù)據(jù)存放位置、確定存儲(chǔ) 分配等。這部

48、分應(yīng)該是由項(xiàng)目經(jīng)理和數(shù)據(jù)倉(cāng)庫(kù)架構(gòu)師共同實(shí)施的。確定數(shù)據(jù)倉(cāng)庫(kù)實(shí)現(xiàn)的物 理模型,要求設(shè)計(jì)人員必須做到以下幾方面。(1) 要全面了解所選用的數(shù)據(jù)庫(kù)管理系統(tǒng),特別是存儲(chǔ)結(jié)構(gòu)和存取方法。(2) 了解數(shù)據(jù)環(huán)境、數(shù)據(jù)的使用頻度、使用方式、數(shù)據(jù)規(guī)模以及響應(yīng)時(shí)間要求等,這 些是對(duì)時(shí)間和空間效率進(jìn)行平衡和優(yōu)化的重要依據(jù)。(3) 了解外部存儲(chǔ)設(shè)備的特性,如分塊原則、塊大小的規(guī)定、設(shè)備的 IO 特性等。 一個(gè)好的物理模型設(shè)計(jì)還必須符合以下規(guī)則。1. 確定數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu) 一個(gè)數(shù)據(jù)庫(kù)管理系統(tǒng)往往都提供多種存儲(chǔ)結(jié)構(gòu)供設(shè)計(jì)人員選用,不同的存儲(chǔ)結(jié)構(gòu)有不第2章 數(shù)據(jù)倉(cāng)庫(kù)與聯(lián)機(jī)分析同的實(shí)現(xiàn)方式,各有各的適用范圍和優(yōu)缺點(diǎn)。設(shè)計(jì)人員在

49、選擇合適的存儲(chǔ)結(jié)構(gòu)時(shí)應(yīng)該權(quán)衡 存取時(shí)間、存儲(chǔ)空間利用率和維護(hù)代價(jià)三個(gè)方面的主要因素。2. 確定索引策略數(shù)據(jù)倉(cāng)庫(kù)的數(shù)據(jù)量很大,因而需要對(duì)數(shù)據(jù)的存取路徑進(jìn)行仔細(xì)的設(shè)計(jì)和選擇。由于數(shù) 據(jù)倉(cāng)庫(kù)的數(shù)據(jù)都是不常更新的,因而可以設(shè)計(jì)多種多樣的索引結(jié)構(gòu)來(lái)提高數(shù)據(jù)存取效率。 在數(shù)據(jù)倉(cāng)庫(kù)中,設(shè)計(jì)人員可以考慮對(duì)各個(gè)數(shù)據(jù)存儲(chǔ)建立專用的、復(fù)雜的索引,以獲得最高 的存取效率。因?yàn)樵跀?shù)據(jù)倉(cāng)庫(kù)中的數(shù)據(jù)是不常更新的,也就是說(shuō)每個(gè)數(shù)據(jù)存儲(chǔ)是穩(wěn)定的, 因而雖然建立專用的、 復(fù)雜的索引有一定的代價(jià), 但一旦建立就幾乎不需維護(hù)索引的代價(jià)。3. 確定數(shù)據(jù)存放位置同一個(gè)主題的數(shù)據(jù)并不要求存放在相同的介質(zhì)上。在物理設(shè)計(jì)時(shí),常常要按數(shù)據(jù)的重

50、要程度、使用頻率以及對(duì)響應(yīng)時(shí)間的要求進(jìn)行分類,并將不同類的數(shù)據(jù)分別存儲(chǔ)在不同的 存儲(chǔ)設(shè)備中。重要程度高、經(jīng)常存取并對(duì)響應(yīng)時(shí)間要求高的數(shù)據(jù)就存放在高速存儲(chǔ)設(shè)備上, 如硬盤(pán);存取頻率低或?qū)Υ嫒№憫?yīng)時(shí)間要求低的數(shù)據(jù)則可以放在低速存儲(chǔ)設(shè)備上,如磁盤(pán) 或磁帶。數(shù)據(jù)存放位置的確定還要考慮到其他一些方法,例如,決定是否進(jìn)行合并表,是 否對(duì)一些經(jīng)常性的應(yīng)用建立數(shù)據(jù)序列,對(duì)常用的、不常修改的表或?qū)傩允欠袢哂啻鎯?chǔ)。如 果采用了這些技術(shù),就要記入元數(shù)據(jù)。4. 確定存儲(chǔ)分配許多數(shù)據(jù)庫(kù)管理系統(tǒng)提供了一些存儲(chǔ)分配的參數(shù)供設(shè)計(jì)者進(jìn)行物理優(yōu)化處理,如塊的 尺寸、緩沖區(qū)的大小和個(gè)數(shù)等,都要在物理設(shè)計(jì)時(shí)確定。物理數(shù)據(jù)模型是依據(jù)中

51、間層的邏輯模型創(chuàng)建的,它是通過(guò)模型的鍵碼屬性和模型的物 理特性、擴(kuò)展中層數(shù)據(jù)模型而建立的。物理數(shù)據(jù)模型由一系列物理表構(gòu)成,其中最主要的 是事實(shí)表模型和維表模型。物理模型中的事實(shí)表來(lái)源于邏輯模型中的主題,以客戶主題為例,結(jié)合網(wǎng)上藥店屬性 分析可設(shè)計(jì)如下事實(shí)表。網(wǎng)上藥店用戶分析模型如圖2.8所示。數(shù)據(jù)倉(cāng)庫(kù)中的事實(shí)表一般很大,包含大量的業(yè)務(wù)信息,因此,在設(shè)計(jì)事實(shí)表時(shí),可使 事實(shí)表盡可能小,還要處理好數(shù)據(jù)的粒度問(wèn)題。設(shè)計(jì)維度表的目的是為了把參考事實(shí)表的數(shù)據(jù)放置在一個(gè)單獨(dú)的表中,即將事實(shí)表中 的數(shù)據(jù)有組織地分類,以便于進(jìn)行數(shù)據(jù)分析。在數(shù)據(jù)倉(cāng)庫(kù)維度體系設(shè)計(jì)中,要詳細(xì)定義維 度類型、名稱及成員說(shuō)明,客戶流失

52、分析主要依據(jù)自然屬性維、用戶屬性維、消費(fèi)屬性維 來(lái)建立維度表。在物理建模的過(guò)程中,應(yīng)根據(jù)概念模型和邏輯模型設(shè)計(jì)建立其他維度表,幫助決策分 析。例如,本例中還可以有以下維度表。(1) 時(shí)間維表:年、季度、月、日。(2) 地區(qū)維表:省、市、市區(qū)、郊區(qū)、縣城、鄉(xiāng)鎮(zhèn)。(3) 用戶類型維表:標(biāo)識(shí)用戶對(duì)醫(yī)藥網(wǎng)站的重要程度信息,如醫(yī)院采購(gòu)客戶、普通客戶等。(4) 職業(yè)維表:定義用戶的社會(huì)行業(yè)類別屬性,幫助分析歸類購(gòu)買(mǎi)行為。(5) 年齡段維表:對(duì)用戶所屬消費(fèi)年齡群體進(jìn)行分類,幫助分析歸類購(gòu)買(mǎi)行為。(6) 注冊(cè)時(shí)間維表:按用戶注冊(cè)網(wǎng)站時(shí)間長(zhǎng)短進(jìn)行分類,幫助分析歸類購(gòu)買(mǎi)行為。(7) 購(gòu)買(mǎi)類型維表:用戶所購(gòu)買(mǎi)藥品類

53、型,如常備藥、慢性病藥、化療藥品等。(8) 增值服務(wù)類型維表:藥品網(wǎng)站提供的各項(xiàng)增值業(yè)務(wù)的收費(fèi)項(xiàng)目類別。維度表PK,FK1 PK用戶ID 職業(yè)ID職業(yè)分類 職業(yè)信息等維度表1PK,FK1 PK用戶ID年齡段ID年齡段分類 年齡段信息等維度表2PK,FK1 PK用戶ID 性別ID性別分類 性別信息等維度表4PK等級(jí)ID等級(jí)分類 等級(jí)信息等藥店用戶事實(shí)表PK用戶ID職業(yè)ID 年齡段ID 性別ID 角色I(xiàn)D 等級(jí)ID 用戶類型ID 所在區(qū)域ID 送貨地址ID 支付類型ID維度表3PK,FK1 PK用戶ID 角色I(xiàn)D角色分類 角色信息等維度表5PK,FK1 PK用戶ID 類型ID類型分類 類型信息等維

54、度表6PK,FK1 PK用戶ID 區(qū)域ID區(qū)域分類 區(qū)域信息等維度表7PK,FK1 PK用戶ID 支付ID支付分類 支付信息等圖2.8 網(wǎng)上藥店用戶分析模型物理結(jié)構(gòu)設(shè)計(jì)還有以下三個(gè)最基本的原則(這三點(diǎn)是數(shù)據(jù)庫(kù)設(shè)計(jì)與優(yōu)化的最低要求,他設(shè)計(jì)與優(yōu)化措施也得考慮 )。(1) 盡量提高性能。(2) 防止產(chǎn)生過(guò)多的碎片。(3) 快速重整數(shù)據(jù)庫(kù)。這三個(gè)原則既有獨(dú)立性,又密切相關(guān),所以在數(shù)據(jù)倉(cāng)庫(kù)的開(kāi)發(fā)中應(yīng)注意以下三個(gè)方面 的問(wèn)題。(1) 表空間的設(shè)計(jì),主要考慮性能方面以及便于數(shù)據(jù)庫(kù)的快速重整。(2) 重點(diǎn)表的存儲(chǔ)空間設(shè)計(jì),主要考慮性能方面以及防止產(chǎn)生過(guò)多的碎片。第2章 數(shù)據(jù)倉(cāng)庫(kù)與聯(lián)機(jī)分析(3) 索引的設(shè)計(jì),主

55、要考慮性能方面以及索引的存儲(chǔ)空間。224數(shù)據(jù)倉(cāng)庫(kù)的生成1. 數(shù)據(jù)倉(cāng)庫(kù)生成的任務(wù)和目標(biāo)數(shù)據(jù)倉(cāng)庫(kù)的生成過(guò)程中所要做的工作是接口編程、數(shù)據(jù)裝入。其目標(biāo)是,數(shù)據(jù)裝入到 數(shù)據(jù)倉(cāng)庫(kù)中,可以在其上建立數(shù)據(jù)倉(cāng)庫(kù)的應(yīng)用,即決策支持系統(tǒng)(Decision Support System,DSS)應(yīng)用。1) 設(shè)計(jì)接口將操作型環(huán)境下的數(shù)據(jù)裝載到數(shù)據(jù)倉(cāng)庫(kù)環(huán)境,需要在兩個(gè)不同環(huán)境的記錄系統(tǒng)之間建 立一個(gè)接口。乍一看,建立和設(shè)計(jì)這個(gè)接口,似乎只要編制一個(gè)抽取程序就可以了,事實(shí) 上,在這一階段的工作中,的確對(duì)數(shù)據(jù)進(jìn)行了抽取,但抽取并不是全部的工作,這一接口 還應(yīng)具有以下的功能:(1) 從面向應(yīng)用和操作的環(huán)境生成完整的數(shù)據(jù);(2

56、) 數(shù)據(jù)的基于時(shí)間的轉(zhuǎn)換;(3) 數(shù)據(jù)的凝聚;(4) 對(duì)現(xiàn)有記錄系統(tǒng)的有效掃描,以便以后進(jìn)行追加。當(dāng)然,考慮這些因素的同時(shí),還要考慮到物理設(shè)計(jì)的一些因素和技術(shù)條件限制,根據(jù) 這些內(nèi)容,嚴(yán)格地制定規(guī)格說(shuō)明,然后根據(jù)規(guī)格說(shuō)明,進(jìn)行接口編程。從操作型環(huán)境到數(shù) 據(jù)倉(cāng)庫(kù)環(huán)境的數(shù)據(jù)接口編程的過(guò)程和一般的編程過(guò)程并無(wú)區(qū)別,它也包括偽碼開(kāi)發(fā)、編碼、編譯、檢錯(cuò)、測(cè)試等步驟。在接口編程中,要注意以下問(wèn)題:(1) 保持高效性,這也是一般的編程所要求的;(2) 要保存完整的文檔記錄;(3) 要靈活,易于改動(dòng);(4) 要能完整、準(zhǔn)確地完成從操作型環(huán)境到數(shù)據(jù)倉(cāng)庫(kù)環(huán)境的數(shù)據(jù)抽取、轉(zhuǎn)換與集成。2) 數(shù)據(jù)裝入在這一步里所進(jìn)行的

57、就是運(yùn)行接口程序,將數(shù)據(jù)裝入到數(shù)據(jù)倉(cāng)庫(kù)中,主要的工作如下 所述。(1) 確定數(shù)據(jù)裝入的次序;(2) 清除無(wú)效或錯(cuò)誤數(shù)據(jù);(3) 數(shù)據(jù)“老化”;(4) 數(shù)據(jù)粒度管理;(5) 數(shù)據(jù)刷新等。最初只使用一部分?jǐn)?shù)據(jù)來(lái)生成第一個(gè)主題域,使得設(shè)計(jì)人員能夠輕易且迅速地對(duì)已做 工作進(jìn)行調(diào)整,而且能夠盡早地提交到下一步驟,即數(shù)據(jù)倉(cāng)庫(kù)的使用和維護(hù)。這樣既可以 在經(jīng)濟(jì)上最快地得到回報(bào),又能夠通過(guò)最終用戶的使用、盡早發(fā)現(xiàn)一些問(wèn)題并提出新的需 求,然后反饋給設(shè)計(jì)人員,設(shè)計(jì)人員繼續(xù)對(duì)系統(tǒng)進(jìn)行改進(jìn)、擴(kuò)展。2. 數(shù)據(jù)倉(cāng)庫(kù)生成的技術(shù)手段在實(shí)際應(yīng)用中常常把數(shù)據(jù)倉(cāng)庫(kù)生成的方法總結(jié)和拓展為“ ETL ”。 ETL 是英文 Extract-Transform-Load 的 縮 寫(xiě) , 用 來(lái) 描 述 將 數(shù) 據(jù) 從 來(lái) 源 端 經(jīng) 過(guò) 抽 取 (extract) 、 轉(zhuǎn) 換 (transform) 、加載 (load) 至目的端的過(guò)程。 ETL 負(fù)責(zé)將分布的、異構(gòu)數(shù)據(jù)源中的數(shù)據(jù)(如關(guān)系數(shù)據(jù)、平面數(shù)據(jù)文

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(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)論