(軍事交通學(xué)院 學(xué)員四大隊,天津 300161)
投送裝備種類繁多,其數(shù)據(jù)倉庫系統(tǒng)的設(shè)計與建立過程十分繁雜,一個完整的數(shù)據(jù)倉庫系統(tǒng)開發(fā)流程涉及到數(shù)據(jù)源、數(shù)據(jù)倉庫所對應(yīng)的數(shù)據(jù)庫以及數(shù)據(jù)分析和報表工具等多個方面問題。本文主要進行投送裝備器材數(shù)據(jù)倉庫(簡稱DW)的設(shè)計與建立,涵蓋的內(nèi)容有投送裝備器材倉庫數(shù)據(jù)源分析、數(shù)據(jù)倉庫邏輯模型、概念模型與物理模型的設(shè)計、數(shù)據(jù)的ETL操作以及數(shù)據(jù)倉庫的實現(xiàn)這幾個主要部分。
設(shè)計數(shù)據(jù)倉庫原則的中心思想是實際業(yè)務(wù)與需求,并通過已有的數(shù)據(jù)進行驅(qū)動。即圍繞著實際業(yè)務(wù)方向的需求,確定數(shù)據(jù)倉庫系統(tǒng)的范圍和整體框架,并在已有數(shù)據(jù)源的基礎(chǔ)上,從已有的操作型業(yè)務(wù)數(shù)據(jù)出發(fā)來設(shè)計。
數(shù)據(jù)倉庫的構(gòu)建模式一般分為兩種,分別為自頂向下的構(gòu)建模式與自底向上的構(gòu)建模式。
自頂向下模式如圖1所示,即先考慮整體后考慮局部的模式,再由數(shù)據(jù)倉庫分離出各個具體業(yè)務(wù)部門和主題的數(shù)據(jù)集市。
自底向上模式如圖2所示,即先考慮局部后考慮整體的構(gòu)建模式,把內(nèi)部各個部門需求看成是系統(tǒng)決策的子目標(biāo),針對各個子目標(biāo)建立數(shù)據(jù)集市,然后進一步對整個系統(tǒng)加以完善和擴充,最終建立一個成熟的數(shù)據(jù)倉庫,實現(xiàn)對整體目標(biāo)的決策支持。
圖1 自頂向下模式
圖2 自底向上模式
針對本文所研究的投送裝備器材數(shù)據(jù)倉庫的實際情況,各個業(yè)務(wù)部分之間的數(shù)據(jù)相對較為統(tǒng)一,因此可以采用數(shù)據(jù)規(guī)范程度高、支持相對快速有效分離地應(yīng)用于各部門的自頂向下構(gòu)建模式進行數(shù)據(jù)倉庫的開發(fā)。下面分別對各個流程進行詳細(xì)的分析。
投送裝備器材數(shù)據(jù)倉庫建立面向的業(yè)務(wù)需求是輔助倉庫管理人員進行投送裝備器材庫存的控制決策,為倉庫管理人員提供直觀的數(shù)據(jù)分析與數(shù)據(jù)展示功能,為決策支持系統(tǒng)提供數(shù)據(jù)來源。通常數(shù)據(jù)倉庫可以為DSS提供以下的服務(wù)功能:
(1)數(shù)據(jù)的抽取,依照主題從業(yè)務(wù)數(shù)據(jù)庫中抽取分析所需數(shù)據(jù),完成對元數(shù)據(jù)的求和、分類、統(tǒng)計等操作。
(2)數(shù)據(jù)的凈化,去除問題數(shù)據(jù)并補充缺損數(shù)據(jù)。
(3)根據(jù)決策目標(biāo)的不同,可以根據(jù)決策主題進行數(shù)據(jù)查詢和訪問,提高數(shù)據(jù)查詢和分析的效率。
(4)通過數(shù)據(jù)分析等工具來展示數(shù)據(jù)倉庫中豐富的數(shù)據(jù),為預(yù)測趨勢、制定決策提供信息來源。
部隊投送裝備器材倉庫主要職能是對部隊投送裝備器材實施儲存、供應(yīng)以及管理。對于器材倉庫的管理人員而言,業(yè)務(wù)目標(biāo)是有效的控制各種器材的庫存,減少庫存管理過程中人力物力財力的消耗,數(shù)據(jù)來源則是器材倉庫日常的出入庫業(yè)務(wù)數(shù)據(jù)。本文數(shù)據(jù)倉庫的建立是為了實現(xiàn)庫存決策支持提供數(shù)據(jù)分析支撐,數(shù)據(jù)倉庫的用戶更關(guān)心的問題是投送裝備器材庫存的供應(yīng)和需求的變動趨勢以及庫存的狀態(tài)。因此數(shù)據(jù)源結(jié)構(gòu)應(yīng)該包含短期和長期的器材供應(yīng)量(入庫量)、器材消耗量(出庫量)、訂貨時間、訂貨周期、庫存器材種類、庫存器材數(shù)量。同時也應(yīng)該確定數(shù)據(jù)的總量以及數(shù)據(jù)質(zhì)量,對數(shù)據(jù)的寬度、密度,數(shù)據(jù)的正確性、規(guī)范性以及一致性都有相應(yīng)的要求。
數(shù)據(jù)倉庫的設(shè)計流程包括概念模型的設(shè)計、邏輯模型的設(shè)計以及物理模型的設(shè)計三個步驟,其設(shè)計流程區(qū)別于傳統(tǒng)數(shù)據(jù)庫面向應(yīng)用的設(shè)計方式,數(shù)據(jù)倉庫是根據(jù)主題進行數(shù)據(jù)的組織。
為了能將數(shù)據(jù)倉庫應(yīng)用于決策支持,使用者需要通過數(shù)據(jù)倉庫對投送裝備器材倉庫的實際庫存水平和庫存狀況有一個全面的了解,以維持合適庫存。因此為了能夠?qū)?shù)據(jù)進行規(guī)范、有效且完整的分析,數(shù)據(jù)倉庫中數(shù)據(jù)來源應(yīng)基于倉庫較長時間范圍內(nèi)(本文選取時間范圍為年度)的庫存器材品類數(shù)據(jù)、出入庫數(shù)據(jù)、庫存量數(shù)據(jù)等數(shù)據(jù)、倉庫內(nèi)部情況數(shù)據(jù)、器材需求數(shù)據(jù)等,系統(tǒng)的邊界定義為原有的車材庫存管理信息系統(tǒng)。
信息包圖中包含了三個目標(biāo)對象:度量指標(biāo)、維度和類別,在概念模型的設(shè)計中使用信息包圖的關(guān)鍵在于對這三個對象的內(nèi)容設(shè)計。
信息包圖的設(shè)計實際上為一種自頂向下的建模方式,首先以數(shù)據(jù)倉庫使用者的視角進行設(shè)計,再以數(shù)據(jù)倉庫管理者的視角對各個主題所涉及到數(shù)據(jù)的多維特性進行分析,考慮各種信息源以及以何種方式影響業(yè)務(wù)活動,倉庫信息包圖應(yīng)包含器材倉庫管理活動中的關(guān)鍵業(yè)務(wù)指標(biāo)因子。
以下通過對某投送裝備器材倉庫的庫存情況進行分析制作信息包圖,通過對該庫近期庫存情況的進一步分析和了解,可得到以下論述。該圖以庫存分析為主題,歸納相關(guān)事實和指標(biāo)、數(shù)據(jù)的維度和層次,確定了數(shù)據(jù)的類別和粒度,見表1。
表1 DW信息包圖
通常確定主題域是為了更加深入地了解業(yè)務(wù)間的聯(lián)系和關(guān)系,在確定了主題之后,還需對各個主題進行不同程度的細(xì)化以得到所面向主題的邊界。
數(shù)據(jù)倉庫主題域結(jié)構(gòu)包括了訂貨主題、需求主題、器材主題、庫存主題四個主題域,各個主題域包含有其主題內(nèi)的主要關(guān)鍵指標(biāo),各主題之間的邏輯結(jié)構(gòu)關(guān)系如圖3所示。
圖3 主題域設(shè)計
設(shè)計數(shù)據(jù)倉庫的過程通常需要不斷進行完善和改進,因此在開始時傾向于選擇較為重要的主題作為設(shè)計起始點。通過將主題邊界的劃分方式應(yīng)用于關(guān)系模型,把對主題域的劃分與事務(wù)型數(shù)據(jù)庫中的數(shù)據(jù)表相結(jié)合,得到初始化的概念模型。在上述的各個主題中:投送裝備器材主題可能包含投送裝備器材表、供需關(guān)系表等;器材倉庫主題可能包含倉庫表、倉儲關(guān)系表、倉庫管理關(guān)系表等。將這些表的關(guān)鍵字段連接起來,可以得到如圖4所示的概念模型。
圖4 數(shù)據(jù)倉庫概念模型
傳統(tǒng)數(shù)據(jù)庫設(shè)計邏輯模型時通常會采用實體關(guān)系圖(ER圖)的方式,把概念模型進一步轉(zhuǎn)為邏輯模型,在前述信息包圖的基礎(chǔ)上設(shè)計星型圖。星型圖要素分別對應(yīng)著信息包圖中的對象。指標(biāo)實體位于星型圖中心,是最基礎(chǔ)的業(yè)務(wù)實體以及數(shù)據(jù)查詢的核心,在信息包圖中,其對應(yīng)著指標(biāo)對象,其作用是為使用者進行各項業(yè)務(wù)活動提供定量數(shù)據(jù),根據(jù)信息包圖的內(nèi)容,指標(biāo)對象為對投送裝備器材庫存的分析。在以上所構(gòu)建信息包圖的基礎(chǔ)上進行星型圖的設(shè)計,所得星型圖結(jié)構(gòu)如圖5所示。處于中心位置的為事實表,用于對器材庫存的分析,處于五個星角的分別是器材信息、時間、訂貨信息、器材需求、倉儲信息這五個維度。
圖5 星型圖設(shè)計
由圖5能夠看出星型模式的結(jié)構(gòu)實際為一種關(guān)系型數(shù)據(jù)結(jié)構(gòu),利用事實表以及若干個維度來支持決策所需的數(shù)據(jù)。在星型圖中間位置的是事實表,用于分析主題,位于星角的是維表,用于描述相關(guān)屬性。事實表中一般包含特定的事件數(shù)據(jù),例如一年的器材需求總量和器材訂貨總量等數(shù)據(jù),新的數(shù)據(jù)會被不斷的添加進去。
一般而言,越詳細(xì)的數(shù)據(jù)其對應(yīng)的數(shù)據(jù)粒度越小,級別越低;反之,綜合度越高的數(shù)據(jù),其數(shù)據(jù)的粒度也相應(yīng)越大,所處的級別也越高。在粒度設(shè)計中產(chǎn)生的差異會造成數(shù)據(jù)倉庫邏輯模型的差別以及數(shù)據(jù)實際物理存儲情況的差別,而數(shù)據(jù)倉庫的分析層次功能與數(shù)據(jù)的物理存儲空間往往存在著矛盾關(guān)系,因此需要合理地設(shè)計粒度以符合實際情況。
根據(jù)對投送裝備器材倉庫庫存需求情況分析設(shè)計相應(yīng)的數(shù)據(jù)粒度形成的邏輯模型如圖6所示。
各字段的解釋說明見表2。
通過構(gòu)建數(shù)據(jù)倉庫的三層模型,能夠確定各個維表以及事實表的大致結(jié)構(gòu),接下來就需要匯總現(xiàn)在投送裝備器材管理信息系統(tǒng)中的操作型數(shù)據(jù),將其進行處理并導(dǎo)入各個維表以及事實表。該過程在數(shù)據(jù)倉庫的創(chuàng)建中,是一項工作量很大而且關(guān)鍵的重要環(huán)節(jié)。從操作型數(shù)據(jù)庫中提取數(shù)據(jù)倉庫所需要的數(shù)據(jù)需要一整套的流程,即ETL(提取,轉(zhuǎn)換,加載)的操作。
圖6 DW邏輯模型
表2 字段內(nèi)容釋義
ETL通過從附錄中的數(shù)據(jù)源中提取數(shù)據(jù),并對數(shù)據(jù)進行轉(zhuǎn)換,然后將數(shù)據(jù)加載至數(shù)據(jù)倉庫中,生成如表3-表7所示的填充數(shù)據(jù)。
本文使用SQL Server 2008所提供的Microsoft Server Business Intelligence Studio來進行投送裝備器材數(shù)據(jù)倉庫QCWS的創(chuàng)建和訪問。
表3 TIME維度
表4 ORDER維度
表5 STORAGE維度
表6 EQUIPMENT維度
表7 DEMAND維度
在建立數(shù)據(jù)倉庫之前,需要先通過SQL Server 2008創(chuàng)建數(shù)據(jù)庫“QCSERVER維表數(shù)據(jù)”,該數(shù)據(jù)庫中共包含六個數(shù)據(jù)表,包含維表以及事實表等相關(guān)數(shù)據(jù)。
打開解決方案資源管理器,首先需要將已經(jīng)創(chuàng)建的數(shù)據(jù)庫連接到目標(biāo)數(shù)據(jù)倉庫的數(shù)據(jù)源,如圖7所示,新建數(shù)據(jù)源連接,并定義“QCSERVER維表數(shù)據(jù)”的連接。
圖7 連接管理器,定義數(shù)據(jù)源
進行新建數(shù)據(jù)源視圖的操作,選擇新創(chuàng)建的數(shù)據(jù)源“維表數(shù)據(jù)”,進行名稱匹配(如圖8所示),選擇默認(rèn)的與主鍵同名。
在選擇表和視圖環(huán)節(jié)(如圖9所示),把數(shù)據(jù)源所連接數(shù)據(jù)庫中涵蓋的 Inventory、Order、QcInfo、Requirement、Time、Warehouse一共六個數(shù)據(jù)表選為包含的對象,完成數(shù)據(jù)源視圖的創(chuàng)建。
完成了數(shù)據(jù)源視圖的創(chuàng)建之后,需要對維表中的各個維度進行創(chuàng)建。通過選擇“新建維度”命令,選擇“使用現(xiàn)有表”,先對Time維表進行維度的建立(如圖10所示)。
通過以上步驟創(chuàng)建了投送裝備器材數(shù)據(jù)倉庫QCDW項目,在構(gòu)建好數(shù)據(jù)源、各個維度以及多維數(shù)據(jù)集后,需要對項目進行部署,在資源管理器中右擊QCDW選擇部署命令,對系統(tǒng)進行部署,如圖11、12所示。
在QCDW項目部署完成后,可利用軟件帶有的視圖工具對QCDW進行多維瀏覽。選擇維度數(shù)據(jù),執(zhí)行瀏覽命令,可以進行多維分析。向待分析的區(qū)域中拖入相應(yīng)的行、列以及匯總字段,系統(tǒng)會自動的統(tǒng)計出相應(yīng)的報表。例如可以通過多維瀏覽對XXX倉庫的庫存數(shù)據(jù)進行以下的分析。
圖8 名稱匹配
圖9 選擇表和視圖
(1)分析XXX倉庫各個貨位在各個季度的儲存情況,選擇行字段為Quarter(季度),選擇列字段為Rack(貨位號),選擇匯總明細(xì)字段為Storage Amount(庫存數(shù)量),可以得到各貨位在不同季度的器材庫存數(shù)量,如圖13所示。
(2)分析XXX倉庫不同分類類別的器材在各個貨位的存儲情況和價值,選擇行字段為Category(器材分類),選擇列字段為Rack(貨位號),選擇匯總明細(xì)字段為Storage Amount(庫存數(shù)量),可以得到不同類別的器材在不同貨位的庫存數(shù)量,如圖14所示。
圖10 指定源信息
圖11 QCDW項目結(jié)構(gòu)
(3)分析XXX倉庫對各個需求單位在各個月份的發(fā)貨量。選擇行字段為Demander ID(需求單位編號),選擇列字段為Month(月份),選擇匯總明細(xì)字段為Ship Amount(發(fā)貨數(shù)量),可以得到倉庫對各需求單位在不同月份的器材發(fā)貨數(shù)量,如圖15所示。
本文系統(tǒng)的對投送裝備器材的DW數(shù)據(jù)倉庫的系統(tǒng)框架模型進行了分析和設(shè)計,創(chuàng)建了投送裝備器材數(shù)據(jù)倉庫,并通過SQL Server2008提供的平臺對其進行了物理實現(xiàn),創(chuàng)建了投送裝備器材數(shù)據(jù)倉庫QCDW,并在此基礎(chǔ)上進行投送裝備器材庫存多維數(shù)據(jù)的瀏覽,為實現(xiàn)投送裝備器材儲備決策輔助系統(tǒng)提供了支撐。
圖12 項目部署成功
圖13 各季度不同貨位庫存數(shù)量瀏覽
圖14 各類別器材不同貨位庫存量瀏覽
圖15 倉庫各需求單位在不同單位的發(fā)貨量瀏覽
[參考文獻]
[1]肖依永,常文兵,郭偉宏.基于關(guān)聯(lián)規(guī)則的ABC庫存分類方法[J].系統(tǒng)工程,2008,(6):10-15.
[2]葉偉龍,李青.ABC庫存分類的多準(zhǔn)則優(yōu)化方法[J].遼寧工程技術(shù)大學(xué)學(xué)報(自然科學(xué)版),2008,(5):758-761.
[3]李波,趙志彥,段鐵英.一種多準(zhǔn)則庫存分類的混合預(yù)測方法[J].計算機集成制造系統(tǒng)-CIMS,2004,(5):594-599.
[4]王珊,李翠平,李盛恩.數(shù)據(jù)倉庫與數(shù)據(jù)分析教程[M].北京:高等教育出版社,2012
[5]夏火松.數(shù)據(jù)倉庫與數(shù)據(jù)挖掘技術(shù)[M].北京:科學(xué)出版社,2004.