韓蕾
摘要:該文對通過數(shù)據(jù)倉庫和OLAP技術(shù)進(jìn)行研究,設(shè)計了港口物資管理數(shù)據(jù)倉庫模型,并分析了基于MS SQL Server2005數(shù)據(jù)倉庫實施方案的OLAP分析結(jié)果展現(xiàn)過程。
關(guān)鍵詞:數(shù)據(jù)倉庫;OLAP;聯(lián)機分析處理
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2014)18-4117-04
Data Warehouse and OLAP Applications in Materials Management of Port Enterprises
HAN Lei
(Qingdao Harbor Vocational and Technical College, Qingdao 266404, China)
Abstract: This paper studies the data warehouse and OLAP technology, and designs the port material management data warehouse model, and analyzes the process of the showing theresults of the analysis based on MS SQL Server2005 OLAP data warehouse implementation plan process.
Key words: data warehouse; OLAP; on-line analysis processing
近幾年中國沿海港口企業(yè)發(fā)展迅猛,中國沿海的各大港口吞吐量急速攀升,突破億噸,成為數(shù)億噸的大港。在港口經(jīng)濟迅速發(fā)展的背后,國內(nèi)外港口之間的競爭也日趨白熱化,國內(nèi)外大港口在硬件設(shè)施、價格戰(zhàn)和軟環(huán)境建設(shè)方面正展開愈演愈烈的港口競爭,紛紛建大碼頭、上新泊位,隨著港口硬件條件的趨同,誰的管理體制更適合市場競爭環(huán)境誰就能在競爭中占得先機。因此,現(xiàn)在各大港口的發(fā)展策略從前期的抓市場轉(zhuǎn)向抓管理、抓效率。我國各大港口企業(yè)內(nèi)部管理情況基本類似:涉及多行業(yè)經(jīng)營,下屬企業(yè)眾多,業(yè)務(wù)復(fù)雜,所需物資狀況復(fù)雜,物資管理存在困難。下屬單位分散采購,缺乏對整體利益考慮,各子公司的采購行為缺乏有效的跟蹤、評估、分析,由此導(dǎo)致物資供應(yīng)和采購價格管理不到位,物資采購流程不規(guī)范,物資供應(yīng)存在風(fēng)險,庫存數(shù)據(jù)不清,庫存物資積壓和浪費嚴(yán)重。據(jù)統(tǒng)計一個大型港口企業(yè)每年的生產(chǎn)、建設(shè)物資采購額大概是幾個億甚至十幾個億。針對如此龐大的采購額,如果企業(yè)借助先進(jìn)的計算機技術(shù)對物資材料消耗、物資采購數(shù)據(jù)進(jìn)行科學(xué)分析,科學(xué)的管理物資材料的采購、庫存和消耗量,達(dá)到物資采購最及時、庫存最小、采購物資材料性價比最高的理想效果,將為企業(yè)從節(jié)約挖潛途徑節(jié)約大量的成本。上世紀(jì)90年代在美國興起的數(shù)據(jù)倉庫和OLAP(聯(lián)機分析處理)技術(shù)為解決這一問題提供理想的解決方案。該文將對數(shù)據(jù)倉庫和OLAP技術(shù)進(jìn)行深入分析,構(gòu)建港口企業(yè)物資管理數(shù)據(jù)倉庫模型,并基于MS SQL Server2005 Analysis Services的數(shù)據(jù)倉庫和OLAP解決方案對港口物資管理的采購數(shù)量和金額、領(lǐng)用數(shù)量和金額、庫存數(shù)量和金額從時間、種類、公司、部門、供應(yīng)商等幾個維度進(jìn)行綜合分析,即構(gòu)建港口物資管理連接分析系統(tǒng),為港口物資管理、物資采購策略的指定提供決策支持,實現(xiàn)由物資管理由事后統(tǒng)計向事前預(yù)測的轉(zhuǎn)變。
1 數(shù)據(jù)倉庫和OLAP概述
1.1數(shù)據(jù)倉庫
數(shù)據(jù)倉庫的概念在20世紀(jì)90年代由“數(shù)據(jù)倉庫之父”W.H.Inmon首先提出,他這樣定義數(shù)據(jù)倉庫的:數(shù)據(jù)倉庫是一個面向主題的、集成的、不可更新的且隨時間不斷變化的數(shù)據(jù)集合,用來支持管理人員決策[1]。數(shù)據(jù)倉庫的主要作用是面向企業(yè)管理人員需要,對分布在企業(yè)內(nèi)業(yè)務(wù)數(shù)據(jù)庫的數(shù)據(jù)從宏觀角度進(jìn)行提取、加工和存儲,建立分析型數(shù)據(jù)處理環(huán)境,為解決決策問題提供支持,數(shù)據(jù)倉庫是一種決策支持系統(tǒng)(DDS)資料存儲理論。
數(shù)據(jù)倉庫基本的特性是:面向主題、集成性、非易失性、隨時間變化。面向主題是指數(shù)據(jù)倉庫數(shù)據(jù)組織形式是根據(jù)管理決策的分析需要對用戶進(jìn)行決策時所關(guān)心某一方面(即一個主題)的重點數(shù)據(jù)(可能在不同的數(shù)據(jù)庫、不同的數(shù)據(jù)表)從不同的業(yè)務(wù)數(shù)據(jù)庫中抽取出來,進(jìn)行綜合歸類組織,方便用戶進(jìn)行決策分析時查詢數(shù)據(jù);集成性是指從不同業(yè)務(wù)數(shù)據(jù)庫中抽取出來的數(shù)據(jù),可能存在數(shù)據(jù)格式不一致、測量單位不統(tǒng)一、數(shù)據(jù)代碼和數(shù)據(jù)名稱混亂的情況,因此,數(shù)據(jù)在載入數(shù)據(jù)倉庫之前要經(jīng)過清洗、轉(zhuǎn)置、匯總、集成,保證數(shù)據(jù)一致性,并且數(shù)據(jù)是按照一定的周期分批載入到數(shù)據(jù)倉庫中的;非易失性是指由于歷史數(shù)據(jù)對決策分析的重要性,所以信息數(shù)據(jù)一旦被寫入數(shù)據(jù)倉庫,就輕易不會被刪除或更新,數(shù)據(jù)倉庫是以只讀的方式被用戶訪問;隨時間變化是指由于數(shù)據(jù)倉庫中的數(shù)據(jù)周期性、分批裝載的繼承性,因此在基于數(shù)據(jù)倉庫的歷史信息數(shù)據(jù)進(jìn)行決策分析(如OLAP、數(shù)據(jù)挖掘)時,分析的結(jié)果始終隨著時間的變化而變化,企業(yè)管理決策人員也就是通過數(shù)據(jù)的變化情況了解企業(yè)某些方面的歷史發(fā)展趨勢,為企業(yè)未來的發(fā)展方向提供決策支持。
1.2 OLAP技術(shù)
OLAP,即On-line Analytical Processing(聯(lián)機分析處理),是面向某個特定主題的聯(lián)機數(shù)據(jù)訪問和數(shù)據(jù)分析技術(shù),其主要作用是根據(jù)公司分析人員的面向某個主題的分析需要,對數(shù)據(jù)倉庫中的大量數(shù)據(jù)從多個角度進(jìn)行快速、一致和交互的觀察和復(fù)雜的分析操作,從而使分析人員、管理人員或執(zhí)行人員能夠從多種角度對從原始數(shù)據(jù)中轉(zhuǎn)化出來的、能夠真正為用戶所理解的、并真實反映企業(yè)維特性的信息進(jìn)行快速、一致、交互地存取,從而為公司的數(shù)據(jù)分析人員和高級管理人員提供決策支持??梢哉fOLAP是專門設(shè)計用來對數(shù)據(jù)倉庫中的大量數(shù)據(jù)進(jìn)行訪問的工具。它的技術(shù)核心是“維”。endprint
OLAP的主要功能是對數(shù)據(jù)的多維觀察,即通過對多維組織后的數(shù)據(jù)進(jìn)行切片和切塊、鉆取、聚合、旋轉(zhuǎn)等動作實現(xiàn)多維分析,使用戶從多種維度、多個側(cè)面、多種數(shù)據(jù)綜合度查看數(shù)據(jù)。切片和切塊指的是對多維數(shù)據(jù)在某以個維度或某幾個維度選定一個度量值,得到的多維數(shù)據(jù)組的一個子集;鉆取指的是從較高的維度層次上到較低的維度層次上觀察數(shù)據(jù)的過程,使用戶獲得更詳細(xì)的數(shù)據(jù);聚合是鉆取的反向操作,實現(xiàn)從低維度層次到高緯度層次觀察數(shù)據(jù)的過程,使用戶得到綜合度更高的數(shù)據(jù);旋轉(zhuǎn)是指改變維度的位置關(guān)系,使用戶能夠?qū)硬煌囊暯怯^察數(shù)據(jù)。其次OLAP還具有強大的計算能力,可以對數(shù)據(jù)進(jìn)行深入加工。
可以看出,數(shù)據(jù)倉庫注重面向主題的數(shù)據(jù)存儲和管理,OLAP注重對數(shù)據(jù)倉庫中數(shù)據(jù)的多維分析,數(shù)據(jù)倉庫的多維數(shù)據(jù)組織和OLAP的多維數(shù)據(jù)分析相輔相成,共同構(gòu)成決策支持系統(tǒng)的主體。
2 系統(tǒng)設(shè)計方案
2.1系統(tǒng)架構(gòu)設(shè)計
根據(jù)典型數(shù)據(jù)倉庫系統(tǒng)的模型,物資管理聯(lián)機分析系統(tǒng)包含四個層次:數(shù)據(jù)源、數(shù)據(jù)倉庫服務(wù)器、OLAP服務(wù)器和前端展示工具。物資管理聯(lián)機分析系統(tǒng)的數(shù)據(jù)源層主要包括港口企業(yè)的采購計劃數(shù)據(jù)、物資庫存管理數(shù)據(jù)和來自供應(yīng)商商務(wù)平臺的數(shù)據(jù),這些數(shù)據(jù)是物資管理聯(lián)機分析系統(tǒng)數(shù)據(jù)倉庫的數(shù)據(jù)來源,是聯(lián)機分析的基礎(chǔ);物資管理聯(lián)機分析系統(tǒng)的數(shù)據(jù)倉庫服務(wù)器層主要功能是面向主題構(gòu)建多維數(shù)據(jù)集,然后將存放在不同數(shù)據(jù)庫物資采購計劃數(shù)據(jù)、物資庫存數(shù)據(jù)和供貨商產(chǎn)品數(shù)據(jù)進(jìn)行ETL(抽取-轉(zhuǎn)換-載入)處理,將數(shù)據(jù)載入到數(shù)據(jù)倉庫中,對數(shù)據(jù)按照聯(lián)機分析的要求重新組織存儲。數(shù)據(jù)倉庫是OLAP分析的數(shù)據(jù)層。OLAP服務(wù)器根據(jù)分析需求面向分析主題構(gòu)建多維數(shù)據(jù)集并將數(shù)據(jù)自動定期從數(shù)據(jù)倉庫載入OLAP服務(wù)器的多維數(shù)據(jù)集,從不同維度、不同層次對采購、庫存、單價數(shù)據(jù)進(jìn)行分析。前端展示工具為用戶提供分析多維數(shù)據(jù)的展示平臺,將分析結(jié)果以表格和圖表的形式展示給客戶。圖1為物資管理聯(lián)機分析系統(tǒng)架構(gòu)圖。
2.2數(shù)據(jù)倉庫設(shè)計
數(shù)據(jù)倉庫設(shè)計主要包括數(shù)據(jù)倉庫模型設(shè)計和數(shù)據(jù)倉庫的ETL(數(shù)據(jù)抽取、轉(zhuǎn)換、裝載)設(shè)計。數(shù)據(jù)倉庫模型設(shè)計的一般過程包括概念模型設(shè)計、邏輯模型設(shè)計、物理模型設(shè)計,主要完成數(shù)據(jù)倉庫的主題選擇、粒度選擇、表的分割等。
數(shù)據(jù)倉庫是根據(jù)主題組織數(shù)據(jù)的,因此數(shù)據(jù)倉庫的概念設(shè)計首先要確定主題和主題的邊界。港口企業(yè)物資管理的主題主要包括部門主題、物資主題、供貨商主題、倉庫主題。物資主題主要包括物資的采購情況、物資的倉儲情況、物資的部門使用情況,部門主題主要包括部門領(lǐng)用物資的情況,倉庫主題主要包括倉庫儲存物資的情況,供貨商主題主要包括供應(yīng)商供應(yīng)商品的情況。經(jīng)過分析確定使用數(shù)據(jù)倉庫的部門主要包括物資管理部門、物資采購管理部門、集團相關(guān)管理部門。對于物資材料管理部門的管理管理人員,他們只關(guān)注各個時間物資的使用數(shù)量和倉庫的數(shù)量,為公司的物資計劃上報和集團對物資管理監(jiān)控提供支持;對于物資采購管理部門的管理人員,他們重點關(guān)注物資的采購價格的變化趨勢和供貨商的供貨質(zhì)量,為物資采購計劃指定和策略實施提供數(shù)據(jù)支持。根據(jù)數(shù)據(jù)倉庫使用對象的需求,確定港口企業(yè)物資管理數(shù)據(jù)倉庫的主題域:物資采購、物資領(lǐng)用、物資庫存三個主題。物資管理數(shù)據(jù)倉庫三個主題的維度分別是:物資采購主題的維度包括時間、商品、供應(yīng)商;物資領(lǐng)用主題的維度包括時間、商品、部門;物資庫存的維度包括時間、商品。由于三個主題域有部分共同的維度,因此物資管理數(shù)據(jù)倉庫的維度可以設(shè)定為時間維、商品維、供應(yīng)商維、部門維。這四個維度支持用戶從各個維度對物資的進(jìn)貨、領(lǐng)用、庫存的情況進(jìn)行分析。在從各個維度對物資材料的采購、領(lǐng)用、庫存數(shù)據(jù)進(jìn)行分析時,各層管理人員關(guān)注的數(shù)據(jù)主要是數(shù)量和金額,因此選定物資采購、領(lǐng)用、庫存數(shù)量和金額作為各個主題域的度量值。
數(shù)據(jù)倉庫邏輯模型設(shè)計主要確定數(shù)據(jù)粒度策略、表的分割策略和定義關(guān)系模式。物資管理數(shù)據(jù)倉庫不同的維度根據(jù)分析的粗細(xì)需要進(jìn)行粒度的劃分,時間維度的粒度為:年、季度、月、周、日,用戶既可以使用較細(xì)的粒度查詢物資采購、領(lǐng)用、庫存的詳細(xì)數(shù)據(jù),也可以使用較粗的粒度對各個時間的物資采購、領(lǐng)用、庫存數(shù)據(jù)進(jìn)行對比分析,為下一年度的物資管理計劃和策略制定提供支持;商品維度的粒度包括:商品、商品小類、商品大類,為用戶對各類的商品的使用和庫存數(shù)據(jù)進(jìn)行對比分析,為企業(yè)的物資采購計劃、物資管理計劃制定提供支持;部門維度的粒度包括:部門、分公司、集團,一個大型港口企業(yè)內(nèi)部的行政管理部門的劃分比較復(fù)雜,各個分公司既獨立經(jīng)營又需要集團統(tǒng)一管理,因此部門粒度的劃分既可以支持各個分公司的管理層對本公司各部門的物資材料使用數(shù)據(jù)和公司內(nèi)部的物資材料進(jìn)貨、庫存數(shù)據(jù)進(jìn)行查看分析,也可以支持集團管理層對各個分公司和集團整體的物資材料采購、領(lǐng)用、庫存數(shù)據(jù)的查看分析;供應(yīng)商維度的粒度包括:供應(yīng)商、供應(yīng)商類別。由于商品維繼續(xù)進(jìn)行層次化擴展,得到商品小類維、商品大類維2個維度表,部門維繼續(xù)進(jìn)行層次化擴展,得到公司維,因此多維數(shù)據(jù)倉庫的存儲模型采用雪花型。其模型結(jié)構(gòu)如圖2。
數(shù)據(jù)倉庫的多維模型設(shè)計完成后接下來就需要將多維模型轉(zhuǎn)換成關(guān)系模式,即將事實和維度轉(zhuǎn)換成事實表和維表,因此物資管理數(shù)據(jù)倉庫包括物資采購事實表、物資領(lǐng)用事實表、物質(zhì)庫存事實表、時間維度表、商品維度表、商品小類維度表、商品大類維度表、部門維度表、公司維度表,
物資管理數(shù)據(jù)倉庫的物理實現(xiàn)在MSSQL Server2005系統(tǒng)中完成,在SQl Server2005中創(chuàng)建事實表和維度表,創(chuàng)建事實表的主鍵、維度表的主鍵和外鍵保證數(shù)據(jù)的完整性。
2.3數(shù)據(jù)的ETL設(shè)計
ETL指的是數(shù)據(jù)的抽取(Extract)、轉(zhuǎn)換(Transform)和裝載(Load)過程,是數(shù)據(jù)庫建模過程中十分重要的一個環(huán)節(jié)。物資管理數(shù)據(jù)倉庫的數(shù)據(jù)來源于企業(yè)內(nèi)部的物資管理數(shù)據(jù)庫、物資超市商務(wù)平臺數(shù)據(jù)庫、供貨商產(chǎn)品數(shù)據(jù)庫以及一部分Excel文件,這些來源于不同數(shù)據(jù)庫和文件的數(shù)據(jù)在載入數(shù)據(jù)倉庫之前需要根據(jù)數(shù)據(jù)倉庫的設(shè)計要求進(jìn)行數(shù)據(jù)格式的轉(zhuǎn)換、實現(xiàn)數(shù)據(jù)格式的統(tǒng)一,清洗錯誤數(shù)據(jù),統(tǒng)一商品大類編碼、商品小類編碼、商品編碼,統(tǒng)一公司、部門編碼,完成數(shù)據(jù)聚合匯總。物資材料數(shù)據(jù)倉庫的ETL設(shè)計與實現(xiàn)使用SQL Server2005 的SSIS,在SSIS中定義一個載入和替換數(shù)據(jù)的SSIS包,將數(shù)據(jù)定期自動的從數(shù)據(jù)源載入到數(shù)據(jù)倉庫的事實表和維度表中。endprint
3 基于Analysis Services的OLAP分析實現(xiàn)
3.1面向主題創(chuàng)建OLAP多維立方體
Analysis Services是Ms SQL Server2005中提供的分析數(shù)據(jù)倉庫數(shù)據(jù)的工具,包括OLAP和數(shù)據(jù)挖掘工具。OLAP工具的主要作用是根據(jù)用戶的分析需求迅速從數(shù)據(jù)倉庫中獲取數(shù)據(jù)創(chuàng)建多維數(shù)據(jù)立方體,進(jìn)行高效率的多維分析,為用戶提供決策支持?;贏nalysis Services進(jìn)行OLAP分析的一般過程包括:配置服務(wù)器、創(chuàng)建數(shù)據(jù)庫、連接數(shù)據(jù)源、創(chuàng)建維和立方體。其中最重要的一步是面向主題創(chuàng)建維和立方體,我們分別面向采購主題、倉儲主題、領(lǐng)用主題創(chuàng)建維、事實表和度量,創(chuàng)建各個多維立方體,Analysis Services同時支持多維OLAP(MOLAP)、關(guān)系OLAP(ROLAP)、混合OLAP(HOLAP)三種立方體存儲結(jié)構(gòu),根據(jù)OLAP分析的數(shù)據(jù)量,我們在創(chuàng)建立方體時選擇ROLAP存儲結(jié)構(gòu)。
3.2使用MDX語句查詢數(shù)據(jù)
MDX語句與SQL語句類似,都是對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行操作的語言,不同之處是,MDX是對數(shù)據(jù)倉庫中的多維立方體數(shù)據(jù)進(jìn)行操作的語言,MDX的重要功能是對數(shù)據(jù)倉庫中的多維數(shù)據(jù)進(jìn)行復(fù)雜的查詢,其基本語法為:
SELECT 坐標(biāo)軸標(biāo)識符,……
FROM立方體標(biāo)識符
WHERE 條件
如檢索領(lǐng)用數(shù)量度量和時間維、商品維的值的MDX語句:
SELECT{([MEASURES].quantity])}ON AXIS(0),
{([Time].[2014]),([Time].[2014])}ON AXIS(1),
{([Goods].[電腦])}ON AXIS(2)
FROM uses
3.3 OLAP結(jié)果展現(xiàn)
OLAP分析的結(jié)果只有通過客戶端軟件展示給系統(tǒng)用戶才能為用戶提供決策支持。OLAP結(jié)果展示可以由開發(fā)人員編寫專門的web應(yīng)用程序進(jìn)行結(jié)果展現(xiàn),也可以通過現(xiàn)在工作人員比較熟悉的Excel軟件的數(shù)據(jù)透視表和數(shù)據(jù)透視圖進(jìn)行展現(xiàn)。在沒有開發(fā)專門的客戶端程序前,Excel軟件是一個不錯的選擇,Excel數(shù)據(jù)透視表通過Analysis Services OLE DB 數(shù)據(jù)訪問接口與OLAP多維數(shù)據(jù)集建立連接,通過列、欄、頁的設(shè)置實現(xiàn)對度量值的上卷下鉆、切片切塊、旋轉(zhuǎn)分析,比如對各類物資材料的進(jìn)貨金額按照年、季度、月下鉆分析。Excel數(shù)據(jù)透視表支持對數(shù)據(jù)的多維分析功能,并轉(zhuǎn)換為數(shù)據(jù)透視圖直觀展示。
4 結(jié)束語
本文主要介紹了通過數(shù)據(jù)倉庫和OLAP技術(shù)實現(xiàn)對大型的港口企業(yè)的物資管理的消耗數(shù)量、金額以及供貨商服務(wù)質(zhì)量進(jìn)行聯(lián)機分析處理的方案,以及基于MS SQL Server2005 Analysis Services實現(xiàn)港口企業(yè)物資管理聯(lián)機分析處理的方法。多維模型設(shè)計和ETL設(shè)計是OLAP設(shè)計的關(guān)鍵點,決定著OLAP能否高效的運行。MS SQL Server2005 Analysis Services是OLAP系統(tǒng)實現(xiàn)的平臺,該平臺為開發(fā)人員創(chuàng)建數(shù)據(jù)倉庫和ETL抽取包提供支持,并且提供客戶端程序開發(fā)接口(ADOMD.NET、OLE DB等)和多維查詢語言,支持用戶開發(fā)各種客戶端程序?qū)Ψ治鼋Y(jié)果進(jìn)行展示。
參考文獻(xiàn):
[1] 石麗, 李堅.數(shù)據(jù)倉庫與決策支持[M].北京:國防工業(yè)出版社,2003.
[2] 林宇,張立科.數(shù)據(jù)倉庫原理和實踐[M].北京:人民郵電出版社, 2002.
[3] 于宗民,劉義寧,祁國輝.數(shù)據(jù)倉庫項目管理實踐[M].北京:人民郵電出版社, 2006.
[4] 陳文偉.數(shù)據(jù)倉庫與數(shù)據(jù)挖掘教程[M].北京:清華大學(xué)出版社, 2006.
[5] 郎川萍.應(yīng)用OLAP技術(shù)實現(xiàn)教學(xué)評價結(jié)果的多維分析[D].成都:西南交通大學(xué),2012.
[6] 胡楊,袁建華.數(shù)據(jù)倉庫和OLAP技術(shù)在集團財務(wù)分析中的應(yīng)用[J].計算機與現(xiàn)代化,2013(4).
[7] 王怡青,王征.基于OLAP的高校學(xué)生綜合成績管理系統(tǒng)的設(shè)計與實現(xiàn)[J].大眾科技,2013(9).endprint