[摘要] 目前商業領域中交易電子化是發展趨勢。為了解客戶購物行為特征并進行有效決策,本文提出一種基于數據倉庫和OLAP技術的解決方案,通過建立商品銷售數據倉庫,利用聯機分析的快速數據統計為商業企業提供決策支持。
[關鍵詞] 數據倉庫 OLAP 商業
一、引言
在當今日益激烈的競爭環境下,企業要生存、發展,就必須具有能對不斷變化的商業環境進行分析、預測并做出快速反應的能力。要做到這一點,企業的決策分析人員能否及時地從大量的原始數據中提取更多、更準確、更有效的信息是關鍵。企業傳統的OLTP(聯機事務處理)系統不能滿足人們對數據做深層次分析的要求。因此,數據倉庫和OLAP(聯機分析處理)技術便應運而生了。
二、數據倉庫技術
數據倉庫是在關系數據庫、并行處理和分布式技術的飛速發展基礎上提出的,是解決信息技術在發展中存在的擁有大量數據卻有用信息貧乏這一問題的綜合解決方案。各家學說對于什么是數據倉庫都有自己的定義,但內容是見仁見智。經典的數據倉庫概念是由美國著名信息工程學家 W.H.Inmon 在他的 《Building the Data Warehouse》一書給出的:“數據倉庫(Data Warehouse,DW)是面向主題的、集成的、時變的、非易失性的數據集合,用于支持管理層的決策過程。”
三、聯機分析處理技術
聯機分析處理(OLAP)的概念最早是由關系數據庫之父E.F.Codd于1993年提出的。當時,Codd認為聯機事務處理(OLTP)已不能滿足終端用戶對數據庫查詢分析的要求,SQL對大數據庫的簡單查詢也不能滿足用戶分析的需求。用戶的決策分析需要對關系數據庫進行大量計算才能得到結果,而查詢結果并不能滿足決策者提出的需求。因此,Codd提出了多維數據庫和多維分析的概念,即OLAP。
OLAP是一種決策分析工具,它可以根據決策分析者的需要將數據進行分類和運算,對大量數據進行復雜的查詢處理,并以直觀的、易理解的形式將查詢結果提供給決策分析者,以便他們準確掌握企業(公司)的經營狀況,了解市場需求,制定正確營銷方案,增加效益。
四、商業銷售數據倉庫的總體設計
1.數據倉庫系統結構
本文背景是某大型電器賣場,通過綜合考慮原系統的數據環境和賣場管理決策者的需求,設計商業銷售數據倉庫系統。系統結構如圖1所示。開發該系統大致分為三個階段:數據抽取、轉換和加載階段、多維數據結構的創建管理階段和 OLAP 應用系統開發階段。
商業銷售數據倉庫系統的數據處理流程為:數據采集系統根據已確定的主題域,采集原有OLTP數據庫中的相關業務數據,重整后歸類存放到數據倉庫,然后通過OLAP工具將數據倉庫的數據多層次分類匯總,從而建立多維數據模型,并存儲在OLAP服務器中,最后結合報表軟件開發OLAP應用系統將數據靈活地呈現給用戶。
本系統采用Microsoft 的數據倉庫解決方案,Microsoft 的數據倉庫解決方案為創建數據倉庫系統的每個部分都提供了所需的工具,使快速開發數據倉庫系統成為可能。
2.數據抽取、轉換和加載(ETL)
數據倉庫中的數據是面向主題組織的,首先根據商業銷售的特點和賣場決策人員的需求,可以確定主題域為商品銷售。根據確定的主題域和信息分析需求,從原有OLTP數據庫中抽取相關數據,進行凈化、轉換和聚合,最后存放于商業銷售數據倉庫中。由于數據倉庫
的設計直接影響到能否方便地設計和構造多維數據結構來滿足用戶多層次,多角度的決策分析,因此在抽取、轉換和加載過程中還要根據將要建立的多維結構特性對部分數據進行調整。本系統采用Microsoft SQL Server 2005 提供的Integration Services工具來實現數據轉換。
3.多維數據結構創建和管理
在多維數據結構創建和管理階段,根據賣場中高層管理人員分析的自然方式建立數據模型,將數據倉庫中的數據按照一定的層次進行聚合、匯總,構成信息分析的多維視圖,最后選擇一定的存儲模式,將這些多維視圖存儲在OLAP服務器中。
(1)數據倉庫的存儲和多維數據模型的建立
基于關系表的存儲方式有兩種模型:星型模型和雪花模型。商業銷售數據倉庫采用星型模型。圖2為商品銷售的星型模型。該模型的商品銷售事實表連接了4個維度表:時間維度表,產品維度表,員工維度表,供貨商維度表。通過這4個維度表的主鍵將事實表和維表連接一起,形成了星型模型。所以只要掃描事實表就可以查詢,而無需把多個龐大的表連結起來。同時維度表一般比較小,與事實表連接時其速度較快,這樣就大大加快了查詢速度。
(2)OLAP分析實現
本系統采用Microsoft SQL Server 2005 提供的Analysis Services工具管理多維數據集。
利用Analysis Services,根據數據倉庫中的事實表和維度表,建立了“商品銷售”多維數據集后,就可以利用其中的工具,對多維數據集的不同維度、不同層次進行鉆取、旋轉、切片等操作,從而可以方便地查看數據倉庫的內容。
①向上鉆取。通過一個維的歸約,在多維數據立方體上進行聚集。如在時間維度上,可由“日”層向“月”層向“年”層聚集數據。
②向下鉆取。向下鉆取是向上鉆取的逆操作,是由不太詳細的數據到詳細的數據。
③切片與切塊。切片在多維數據立方體的一個維上進行選擇。如年=“2007”。切塊操作在數據立方體的兩個或兩個以上的維上進行選擇,如產品名稱=“三星VP-DC171WI/CHN”and 年=“2007”。
五、結束語
本文在商業企業已有系統的基礎上,將數據倉庫和OLAP技術引入,建立商業銷售數據倉庫和OLAP多維數據模型,并在此基礎上進行OLAP分析,從而快捷有效地得出有價值地決策信息,幫助商業企業在市場競爭中取得優勢。
參考文獻:
[1]王珊:數據倉庫技術與聯機分析處理[M].科學出版社,1998
[2]沈兆陽:SQL SERVER 2000 OLAP解決方案——數據倉庫Analysis Services[M].清華大學出版社,2001