劉光霆
[摘 要] 本文從分析軍需物資油料信息化建設(shè)的現(xiàn)狀入手,指出建設(shè)軍需物資油料數(shù)據(jù)倉庫的必要性;分析了軍需物資油料數(shù)據(jù)倉庫的數(shù)據(jù)來源,構(gòu)建了系統(tǒng)總體框架;從確定主題域?邏輯模型設(shè)計(jì)?物理模型設(shè)計(jì)?ETL設(shè)計(jì)幾個(gè)步驟詳細(xì)闡述了該系統(tǒng)的設(shè)計(jì)過程?
[關(guān)鍵詞] 軍需;物資;油料;數(shù)據(jù)倉庫
[中圖分類號]F270.7;TP311[文獻(xiàn)標(biāo)識碼]A[文章編號]1673-0194(2009)03-0066-02
經(jīng)過多年努力,我軍信息化建設(shè)已取得了飛速發(fā)展?以軍需物資油料部門為例,各業(yè)務(wù)部門均以骨干業(yè)務(wù)為中心,開發(fā)了相關(guān)的管理信息系統(tǒng)?這些MIS系統(tǒng)的應(yīng)用在部隊(duì)的管理活動中發(fā)揮了重要作用,但是也暴露出了不少問題,主要體現(xiàn)在業(yè)務(wù)管理系統(tǒng)都是面向底層的業(yè)務(wù)處理,不能對中高層的決策支持提供幫助?為了克服上述困難,進(jìn)一步提高軍需物資油料信息化管理水平和綜合保障能力,有必要以原有各單位開發(fā)的信息系統(tǒng)為基礎(chǔ)進(jìn)行數(shù)據(jù)整合,搭建集OLAP?數(shù)據(jù)挖掘于一體的數(shù)據(jù)分析環(huán)境,為部隊(duì)首長動態(tài)掌握戰(zhàn)區(qū)保障力量和保障資源提供服務(wù),同時(shí)為后續(xù)的聯(lián)勤保障決策支持系統(tǒng)提供信息支撐?
1 數(shù)據(jù)源分析
構(gòu)建軍需物資油料數(shù)據(jù)倉庫所需數(shù)據(jù)主要來源于3個(gè)方面:
(1)已聯(lián)網(wǎng)業(yè)務(wù)信息系統(tǒng)?這類系統(tǒng)采用的都是Oracle數(shù)據(jù)庫?
(2)未聯(lián)網(wǎng)業(yè)務(wù)信息系統(tǒng)?這類系統(tǒng)采用的數(shù)據(jù)庫不統(tǒng)一,但多集中于SQL Server?Foxpro?Access等中小型數(shù)據(jù)庫,但也有少數(shù)系統(tǒng)選用了Oracle數(shù)據(jù)庫?
(3)Excel電子文檔?部分?jǐn)?shù)據(jù)目前還未開發(fā)相關(guān)的業(yè)務(wù)信息系統(tǒng)進(jìn)行集中管理,對此類數(shù)據(jù),助理員一般是將其輸入到制式的Excel電子表格,定期上報(bào)或下發(fā)?
2 系統(tǒng)總體構(gòu)架
在軍需物資油料數(shù)據(jù)倉庫系統(tǒng)開發(fā)中,以O(shè)racle為數(shù)據(jù)庫管理系統(tǒng),以功能強(qiáng)大的Weblogic作為應(yīng)用服務(wù)器,通過J2EE實(shí)現(xiàn)數(shù)據(jù)倉庫和Web服務(wù)器集成,為用戶搭建了良好的技術(shù)環(huán)境?系統(tǒng)整體結(jié)構(gòu)如圖1所示?
3 設(shè)計(jì)數(shù)據(jù)倉庫
軍需物資油料數(shù)據(jù)倉庫是在現(xiàn)有的各業(yè)務(wù)信息系統(tǒng)基礎(chǔ)上進(jìn)行開發(fā)的,它著眼于有效地提取?綜合?集成和挖掘已有的數(shù)據(jù)庫資源,服務(wù)于決策分析的需要?數(shù)據(jù)倉庫系統(tǒng)開發(fā)是一個(gè)不斷循環(huán)?反饋而使系統(tǒng)不斷增長與完善的過程,在整個(gè)開發(fā)過程中自始至終都要求分析人員?開發(fā)者以及業(yè)務(wù)人員的共同參與和密切合作?結(jié)合軍需物資油料領(lǐng)域現(xiàn)有的業(yè)務(wù)系統(tǒng)實(shí)際情況,軍需物資油料數(shù)據(jù)倉庫的設(shè)計(jì)包括以下幾個(gè)步驟?
3. 1確定主題域
數(shù)據(jù)倉庫中的數(shù)據(jù)是面向主題組織的?主題對應(yīng)著某一宏觀分析領(lǐng)域所涉及的分析對象,是針對某一決策問題而設(shè)置的?
針對需求,系統(tǒng)劃分為保障力量?保障資源和供應(yīng)管理3個(gè)主題,具體內(nèi)容如圖2所示?
3. 2邏輯模型設(shè)計(jì)
在確定主題后,需要對主題包含的信息進(jìn)行詳細(xì)定義?利用維度建模的方法進(jìn)行數(shù)據(jù)建模,選擇一種數(shù)據(jù)模型對相關(guān)主題的事實(shí)表和維表的關(guān)系詳細(xì)定義,使其能夠有效地組織數(shù)據(jù)倉庫中的數(shù)據(jù)?
3. 2. 1選擇建模方法
基于用戶的要求,分析主題域,著重于某個(gè)主題,設(shè)計(jì)多維數(shù)據(jù)結(jié)構(gòu)的事實(shí)表和維表?星形結(jié)構(gòu)數(shù)據(jù)模型已被證實(shí)在數(shù)據(jù)倉庫設(shè)計(jì)中是靈活的?有效的,它在查詢響應(yīng)時(shí)間和存儲空間上都表現(xiàn)良好,本系統(tǒng)采用星形模式來表達(dá)事實(shí)表和維表之間的邏輯關(guān)系?
3. 2. 2確定粒度層次劃分
粒度是維劃分的單位,體現(xiàn)著數(shù)據(jù)單元的詳細(xì)程度和級別?數(shù)據(jù)越詳細(xì),粒度越小,級別越低;數(shù)據(jù)綜合程度越高,粒度越大,級別越高?在軍需物資油料數(shù)據(jù)倉庫中,考慮到?jīng)Q策者對庫存數(shù)據(jù)的近實(shí)時(shí)性要求,時(shí)間維的粒度精確到小時(shí),即時(shí)間段劃分為年?季度?月?周?日?小時(shí)6層;方向維的粒度劃分為作戰(zhàn)方向?軍區(qū)?分部?庫站4層?
3. 2. 3關(guān)系模式的定義
數(shù)據(jù)倉庫的每個(gè)主題都是由多個(gè)表來實(shí)現(xiàn)的,這些表之間依靠主題的公共碼聯(lián)系在一起,形成一個(gè)完整的主題?關(guān)系模式的定義就是對選定的主題進(jìn)行模式劃分,形成多個(gè)表,并確定各個(gè)表的關(guān)系模式?
3. 3物理模型設(shè)計(jì)
物理數(shù)據(jù)模型主要解決如何組織和存儲數(shù)據(jù),以滿足系統(tǒng)處理的要求?建立物理模型是一個(gè)從邏輯模型向更加具體的?依賴于系統(tǒng)和數(shù)據(jù)庫平臺的物理形式轉(zhuǎn)化的過程,它主要包括了事實(shí)表設(shè)計(jì)?維數(shù)設(shè)計(jì)?數(shù)據(jù)分區(qū)?索引設(shè)計(jì)?完整性約束設(shè)計(jì)?實(shí)體化視圖設(shè)計(jì)等方面?
對于記錄龐大的事實(shí)表,采用Oracle數(shù)據(jù)庫提供的分區(qū)表(Partition Table)進(jìn)行管理,一般按方向和時(shí)間兩個(gè)要素進(jìn)行分區(qū)?而訪問頻繁且記錄少的維表(如各種代碼表)則設(shè)計(jì)為高速緩存表(Cache Table),讓數(shù)據(jù)在首次讀取時(shí)駐留在系統(tǒng)內(nèi)存中,以加快后續(xù)數(shù)據(jù)存取速度?索引的建立也在物理設(shè)計(jì)中完成?在軍需物資油料數(shù)據(jù)倉庫中,設(shè)計(jì)了大量的基于函數(shù)的索引(Function Based Index,即FBI),FBI的本質(zhì)是一種預(yù)計(jì)算處理,即對用戶在查詢中所需的中間結(jié)果進(jìn)行預(yù)計(jì)算,這樣可以大大提高復(fù)雜查詢的效率,減少用戶等待時(shí)間和提高系統(tǒng)并發(fā)度?以油料收發(fā)作業(yè)為例,系統(tǒng)中需根據(jù)開票時(shí)間進(jìn)行頻繁查詢,通過在開票時(shí)間字段上建立FBI,可提高查詢效率?對包含聚集與多表連接等的復(fù)雜操作,系統(tǒng)構(gòu)建了物化視圖,以提高此類操作的響應(yīng)速度?
3. 4ETL設(shè)計(jì)
ETL,即數(shù)據(jù)抽取(Extract)?清洗(Cleanse)?轉(zhuǎn)換(Transform)?裝載(Load)的過程,是構(gòu)建數(shù)據(jù)倉庫的重要環(huán)節(jié)?ETL工具的設(shè)計(jì)主要從自身項(xiàng)目的適應(yīng)程度和二次開發(fā)等方面來考慮?其設(shè)計(jì)框架見圖3?
4 結(jié)束語
該系統(tǒng)的建立,為軍需物資油料系統(tǒng)搭建了綜合的?面向分析的環(huán)境,為決策者能夠作出更加科學(xué)的決策提供了良好的信息基礎(chǔ)?并且在數(shù)據(jù)倉庫的基礎(chǔ)上,運(yùn)用OLAP聯(lián)機(jī)分析處理工具支持用戶進(jìn)行多維的分析,提供多視角查詢?分析?預(yù)測和制作動態(tài)圖表,從而達(dá)到幫助用戶輕松?有效完成信息分析的目的?今后的工作主要包括兩方面:一是擴(kuò)大數(shù)據(jù)倉庫的范圍,建立起包括軍需?物資?油料?交通?衛(wèi)勤在內(nèi)的聯(lián)勤綜合數(shù)據(jù)倉庫;二是加大數(shù)據(jù)挖掘的力度,依托數(shù)據(jù)倉庫構(gòu)建決策支持系統(tǒng),為決策者提供準(zhǔn)確?完備的信息支持?
主要參考文獻(xiàn)
[1] W H Inmon. Building the Data Warehouse[M]. NewYork:Third Edition John Wiley & Sons Inc,2002.
[2] Thomas Kyte.Effective Oracle by Design:Design and Build High-performance Oracle Application[M]. NewYork:The McGraw-Hill Companies,2003.
[3] Thomas Kyte. Expert One-on-One Oracle[M]. Berkeley,CA:Apress,2003.
[4] Thomas Kyte. Expert Oracle Database Architecture[M]. Berkeley,CA:Apress,2005.
[5] 王駿. 構(gòu)建數(shù)據(jù)倉庫實(shí)例[J]. 計(jì)算機(jī)工程與設(shè)計(jì),2006(10):3663-3665.
[6] 田揚(yáng)戈,邊馥芩. 空間數(shù)據(jù)倉庫的ETL研究[J]. 武漢大學(xué)學(xué)報(bào):自然科學(xué)版,2007(4):363-365.
[7] 吳飛,邢桂芬,邢玉萍. 基于本體的ETL設(shè)計(jì)研究[J]. 計(jì)算機(jī)工程與設(shè)計(jì),2007(4):1517-1519.