摘要:隨著高校校園網絡的不斷建設和完善,對數據庫倉庫的要求也越來越高,數據倉庫是數據挖掘的基礎。成功的數據挖掘的關鍵之一就是通過訪問止確、完整和集成的數據,只有這樣才能進行深層次的分析,尋求有用的信息和知識,而這些正是數據倉庫所能夠提供的。該文主要按照高校數字化網絡系統進行數據倉庫的設計。
關鍵詞:校園網絡;數據倉庫;數字化校園
中圖分類號:TP393文獻標識碼:A文章編號:1009-3044(2008)24-1126-02
Digital Campus Network in the Design of Data Warehouse
WANG Feng1,2
(1.Hunan Traffic Vocational and Technical College,Changsha 410004,China;2.Electrical and Information Engineering College,Hunan University, Changsha 410004, China)
Abstract: With the continuous network of college campus building and perfection of the database storage requirements are also increasing, the data warehouse is the basis of data mining. The success of data mining is one of the key is to visit only, complete and integrated data, the only way to a deeper level of analysis to find useful information and knowledge, which is the data warehouse can provide. In this paper, in accordance with the University of digital network system for data warehouse design.
Key words: campus network; data warehouse; digital campus
隨著數據庫技術的不斷發展及數據庫管理系統的廣泛應用,數據庫的數據量和規模也在急劇增長。目前面臨的問題是怎樣從大量的數據中獲取所需要的信息,尤其是決策者需要的信息。數據倉庫的出現以及聯機分析工具和數
據挖掘工具的充分利用,無疑對決策支持起到了充分的輔助作用。
1 數據倉庫概述
數據倉庫是一個面向主題的、集成的、時變的、非易失的數據集合,支持管理部門的決策過程。數據倉庫的構建需要數據集成、數據清理和數據統一。數據倉庫也是數據挖掘的重要預處理步驟。數據倉庫應該具有檢索迅速、數據具有永久的一致性、擁有簡單易用的瀏覽工具、數據必須完整可靠等要素。
數據倉庫概念創始人W·H·Inmon在其1992年所著的《Building the Data Warehouse》一書中對數據倉庫這樣定義:“數據倉庫是面向主題的、集成的、非易失的、隨時間變化的數據集合,用以支持管理決策”。從這個定義中可以看出,數據倉庫的目標是給管理決策的制定提供相應的支持信息。從數據倉庫的概念結構看,應該包含:數據源、數據準備區、數據倉庫數據庫、數據集市/知識挖掘庫以及各種管理工具和應用工具[1]。
數據倉庫(DW)思想是以計算機和數據庫技術的飛速發展為基礎的,是用于解決實際業務中人們擁有大量數據,但是有用信息貧乏的一種綜合解決方案[2]。數據倉庫面向中高層管理人員,主要用于決策支持,數據處理的方式是以分析為主,也稱為分析型處理,結合一些分析工具,如OLAP工具等,可發揮大量數據的作用和價值。
2 高校數字化網絡中數據倉庫的數據組織
由于數據倉庫需要管理的數據量極為龐大,并且服務的目的不同,傳統的數據建模方法已經顯得力不從心。事實上,傳統的方法主要面向事務型的分析處理工作,因此,需要有新的數據建模方法來完成數據倉庫中數據的建模和組織,這種數據模型就是多維數據模型(Multidimensional Data Model)。數據倉庫中數據的組織形式概括起來一般有三種,即第二范式模式(3NF,Third Normal Form Schema)、星型模式((stars schema)和雪花式模式(snow flake Schema)[3]。限于篇幅,本文將對高校圖書館作為數據倉庫進行設計,同時數據倉庫的數據組織模式選用雪花式模式,本文不再另行說明。
數據倉庫的物理存儲方式可以多種多樣,如關系數據庫、多維數據庫以及面相對象的數據庫等。物理模型是在邏輯模型的基礎上實現的。在進行網絡模型設計實現時,所考慮的主要因素有:I/O存取時間、空間利用率和維護代價;在進行數據倉庫的網絡模型設計時,考慮到數據倉庫的數據量大但是操作單一的特點,可采取其他的一些提高數據倉庫性能的技術。
3 高校數字化網絡中數據倉庫的設計方法
由于數據倉庫的特征不同于傳統的數據庫系統,這也就決定了數據倉庫系統的設計方法和步驟不同于以往的數據庫系統。傳統的系統開發生命周期(System Development Lifecycle,SDLC)不適用于DSS分析領域[4]。SDLC假設在設計之初,需求是己知的(或至少是可以被發現的),但是,在DSS分析員眼中,在DSS開發生命周期的最后才發現真正的需求。與數據倉庫相關聯的是一種完全不同的開發生命周期。
圖1顯示傳統的系統開發生命周期支持操作型數據庫環境,而數據倉庫運行于一個與之完全不同的生命周期下,有時稱為CLDS(與SDLC順序相反)。傳統的SDLC是需求驅動的。為建立系統,必須首先理解需求,然后進入到設計和開發階段。CLDS幾乎剛好相反。CLDS由數據開始,一旦數據到手就集成數據。然后,如果數據有偏差,就檢驗看看數據存在什么偏差。再針對數據寫程序,分析程序執行結果。最后,系統需求才得到了理解。CLDS是典型的數據驅動開發生命周期,而SDLC是典型的需求驅動開發生命周期。試圖采用不適當的開發工具和技術只會導致浪費和棍亂。比如,CASE(Computer Aided Software Engineering,計算機輔助軟件工程)領域是由需求驅動分析所支配的。試圖將CASE工具和技術用于數據倉庫領域不明智的,反之亦然。
4 高校數字化網絡中數據倉庫的設計步驟
數據倉庫的原始需求不明確,且不斷變化、增加,開發者最初并不能確切了解到用戶明確而詳細的需求,用戶所能提供的無非是需求的大體方向以及部分需求,更不能預見到以后的需求。采用原型法來進行數據倉庫的開發是比較合適的,因為原型法的思想是從構建系統的簡單的基本框架著手,不斷豐富與完善整個系統。因此,數據倉庫的設計是一個不斷循環、反饋而使系統不斷增長與完善的過程。在開發數據倉庫的整個過程中,白始至終都要求決策分析人員和開發者的共同參與和密切協作。盡管如此數據倉庫設計并不是沒有步驟可言的,數據倉庫設計人體上可以分為以下幾個步驟:1)概念模型設計;2)技術準備工作;3)邏輯模型設計;4)物理模型設計;5)數據倉庫生成;6)數據倉庫運行與維護,如圖2所示。

5 高校數字化網絡中圖書館流通數據倉庫雪花模型設計
流通數據倉庫雪花模型主要包括事實表和維度表,在設計事實表和維度表之前,要確定哪些是事實數據(也就是度量),哪些是維度數據以及各數據表中哪些字段可以加入數據倉庫。通過對流通業務借閱記錄表等幾個關系表的分析發現,除了借閱數量字段屬于事實數據外,其他數據都屬于維度數據[5]。在事實表的設計中,除了事實數據之外,還應該包含索引所使用的字段,就我們為流通數據庫所設計數據倉庫而言,事實表應該包含圖書條碼號、圖書分類號代碼、讀者借書證條碼、借書日期、操作時段代碼和借書數量(度量)。
經分析流通數據倉庫以借閱事實表為中心,四周環繞著日期維度表、操作時間段維度表、讀者維度表和圖書分類維度表。而圖書大類維度表和圖書分類維度表相關聯,讀者專業維度表和讀者維度表相關聯,這些表共同構造一個雪花模型。
為圖書館流通數據倉庫設計好了雪花型架構后,就要開始將圖書館借閱數據從OLTP事務系統轉移到流通數據倉庫。在數據轉移之前,要對OLTP數據進行預處理。因為現實數據庫中的數據存在著不完整和不一致的數據,有些感興趣的屬性并非總是可用的,各數據表之間的記錄還有可能存在不一致現象等。因此,有必要對圖書借閱記錄數據表的相關數據進行相應的數據預處理,數據預處理主要包括屬性選擇、數據提取、數據清理、數據變換、數據修改、數據集成等。
SQLServer 2003提供的數據轉換服務DTS(Data Transformation Services)可以實現將OLTP數據導入數據倉庫中,它是一套功能強大的數據轉換工具,可以在SQL Server與其他的OLE DB、ODBC數據源以及文本之間執行數據導入、導出以及轉換的服務。DTS中常用的兩大工具是DTS向導和DTS設計器, DTS設計器允許用戶輸入許多類型的定義,可以同時從多個關系表或文本文件取得數據并轉換至目的數據庫,具體執行步驟如下:1)設置數據源;2)設置數據目的地;3)設置轉換方式;4)將數據轉移任務存儲為一個包;5)最后執行包進行數據轉移。
在這里我們通過DTS設計器設計事實表和各維度表的數據轉換,通過執行包將數據從OLTP系統數據庫中加載到流通數據倉庫的目的數據庫中,加載完成后,就可以打開目的數據庫,為事實表設置組合主鍵,為各維度表設置主鍵,并使維度表和事實表構成主鍵/外鍵關系。
數據倉庫設計完成并加載數據后,我們可以運用聯機分析工具創建多維數據集,使用戶可以從不同的維度來抽取所需的分析數據,用戶并不是直接去存取數據倉庫的數據,而是通過聯機分析處理服務的功能來取得數據,然后通過比較方便的前端工具展現給用戶。聯機分析處理(OLAP)技術是一種多維分析技術,是一種決策支持工具,它可以使用戶充分利用數據倉庫中已存儲的信息,從多個角度觀察和分析數據,幫助決策者進行決策,因此又被稱為“多位分析”。對于聯機分析處理OLAP的結果,我們可以直接使用Analysis Services來瀏覽數據倉庫的統計分析數據,也可以創建客戶端的數據展示工具來展示OLAP多維分析結果。例如我們可以在客戶端安裝EXCEL 2003,通過EXCEL 2003的數據透視表服務功能來展示聯機分析服務器的多維分析結果。
6 結束語
本文只是基于高校數字化校園網數據倉庫設計的一個初步嘗試,只有完善了數據倉庫的建設才能進行深層次的分析,尋求有用的信息和知識,高校數字化校園網是一個系統工程,要做的研究工作遠不止這些。
參考文獻:
[1] Inmon W H.數據倉庫[M].3版.王志海,譯.北京:機械工業出版社,2005:52-53
[2] 張旭波,屈展,李小剛.高校校園網絡數據倉庫技術研究[J].西安石油大學學報,2006,19(2):71-73.
[3] 王麗珍,周麗華.數據倉庫與數據挖掘原理及應用[M].北京:科學出版社,2005:586-589.
[4] 陳京民.數據倉庫原理、設計與應用[M].北京:中國水利水電出版社,2004:480-482.
[5] 鄭邦坤.基于圖書館數據倉庫的數據組織及其建模[J].圖書館理論與實踐,2004,(6):48-50.