1數據倉庫與OLAP
1·1從數據庫到數據倉庫
過去幾十年中,數據庫技術,特別是OLTP(在線事務處理)發展得較為成熟,它的根本任務就是及時地、安全地將當前事務所產生的記錄保存下來。隨著社會的發展,人們提出了利用現有的數據,進行分析和推理,導致了決策支持系統(DSS)的產生.隨著數據量的迅速增大以及查詢要求的復雜化,建立在OLTP的數據庫上的DSS,暴露出許多難以克服的困難:
1)缺乏組織性。各個部門抽取的數據沒有統一的時間基準,抽取算法、抽取級別也各不相同,并且可能參考了不同的外部數據。
2)效率極為低下,數據難以轉化為有用的信息。原始狀態中的大量數據,同一字段在不同應用中又可能存在著同名異義、異名同義、類型不同、字長不同等許多難以識別的麻煩。
3)其他困擾著基于傳統DBDSS的問題。DSS對OLTP性能的影響是難以忍受的。另外,OLTP的DB各個應用領域的數據保存期限都不一樣,難以滿足DSS需要。
數據倉庫最主要的特征是:
l)數據倉庫是面向主題的。它與傳統數據庫面向應用相對應,主題是一個在較高層次將數據歸類的標準,每一個主題對應一個宏觀的分析領域。
2)數據倉庫是集成的。原始數據與適合DSS分析的數據之間差別很大。因此,在數據進入數據倉庫之前,必然要經過加工與集成。
3)數據倉庫是穩定的。它反映的是歷史數據的內容,而不是處理聯機數據.因而,數據經集成進人數據倉庫后是極少甚至根本不更新的。
4)數據倉庫是隨時間變化的。數據倉庫內的數據時限要遠遠長于操作型環境中的數據時限;數據倉庫中的數據都是歷史數據;數據倉庫數據的碼鍵一般都包含時間項,從而標明了該數據的歷史時期。
一種典型的數據倉庫結構如圖1所示.它分為四級:早期細節級、當前細節級、輕度綜合級和高度綜合級。原始數據經集成以后,首先進人當前細節級,并根據需要進一步進行綜合,進入輕度綜合級乃至高度綜合級,老化的數據則進入早期細節級。數據倉庫中存在著不同的細節級別,稱之為“粒度”.粒度越高表示細節程度越低、綜合程度越高。數據倉庫的另一個重要技術是如何定期向數據倉庫追加數據.常用的技術租方法有:
圖1.數據倉庫結構
時標方法:如果數據含有時標,只需根據時標判斷即可.
DELTA文件:由應用生成,記錄應用所改變的所有內容。
前后映象文件的方法:在抽取數據前后對數據庫各作一次快照,然后比較兩幅快照的不同從而確定新數據。
日志文件:它不會影響OLTP的性能.同時,它還具有DELTA文件的優越性質,提取數據只要局限于日志文件.
1.2從OLTP到OLAP
OLAP(在線分析處理)是以數據庫或數據倉庫為基礎的,其最終數據來源與OLTP一樣,均來自底層的數據庫系統。OLTP面對的是操作人員和低層管理人員,而OLAP面對的是決策人員和高層管理人員,所使用的經綜合提煉的歷史數據均來自OLTP所依賴的底層數據庫,OLAP數據較之OLTP只數據要多一步數據多維化或預綜合處理。
數據模型的分類如表1所示。
絕對模型(CategoriealModel):屬于靜態數據分析。它通過比較歷史數據值或行為來描述過去發生的事實。
解釋模型(ExegetiealModel):用戶一分析人員利用系統已有的層次綜合路徑層層細化,找出事實發生的原因。
思考模型(ContemplativeModel):屬于動態數據分析,它旨在說明在一維或多維上引入一組具體變盤或參數后將會發生什么。
公式模型(FormulaicModel):是動態性最高的一類模型,表示在多個維上,需要引入哪些變量或參數,以及引入后所產生的結果。
OLAP是應企業動態分析而產生的,其功能是通過創建、操作、激活及綜合來自解釋模型、思考模型及公式模型中的信息。它可以識別變量間的新的或不可預知的關聯,通過創建大量的維(綜合路徑)及指定維間的計算條件和表達式來處理大量數據。
數據倉庫系統由三部分組成:數據倉庫(Dw)、數據倉庫管理系統(DWMS)和數據倉庫工具。從數據倉庫體系結構(圖2)可以清楚地看到這三部分的關系。
圖2.數據倉庫體系結構
在整個系統中數據倉庫居于核心地位,是信息挖掘的基礎;數據倉庫管理系統負貴管理整個系統的運轉,起著承上啟下的作用;而數據分析工具則是整個系統發揮作用的關鍵,只有通過高效的工具,數據倉庫才能真正發揮數據寶庫的作用。
信息處理的多層次要求導致了一種新的數據環境一操作數據庫ODS的建立.ODS一方面包含細節的、當前或接近當前的數據,可進行聯機操作型處理;另一方面,又是一種面向主題、集成的數據環境,可以輔助企業完成日常決策。
2數據倉庫在現代企業中的應用
2.1一個銷售系統的結構與工作原理
圖3.數據庫結構
恩威公司銷售分系統的數據庫結構如圖3所示。其中:各分公司的OLTP數據庫位于各分公司的高性能PC機上,由SQLAnywher。管理。主要用于各分公司的日常事務處理,涉及到日常銷售、回款、倉儲管理等諸多方面。通過X.25或電話撥號上網與總部OLTP數據庫進行數據交換.銷售總部OLTP數據庫位于公司總部的數據服務器上,由SybaseSQLServor管理。主要用于公司銷售總部的日常事務處理,包括銷售人員檔案管理、業績考核、日常計劃的制定以及銷售總部自身的銷售業務等。該數據庫的地位和作用在很大程度上相當于一個ODS。
銷售數據倉庫完整的工作過程如圖4所示。其中的OLAP工具部分由虛線框界定,表示在該系統中尚且缺乏,目前在這個位置上工作的只是一些模型化的工具。而在IT軟件市場上己經出現了許多實用的OLAP產品,通過考察和引進,相信這個問題在不遠的將來即可得到完善的解決。
圖4.DW工作流程示意
2.2銷售數據倉庫的邏輯設計
在銷售數據倉庫的邏輯設計中,我們采用了流行的星型模式(StarSchema)。星型模式是基于關系型數據庫,面向OLAP的一種多維化的數據組織方式。
2.2.1星型模式的有關棍念。關系型結構能較好地適應多維數據的表示和存儲.關系數據庫將多維數據庫中的多維結構劃分為兩類表:一類是事實(Fact)表,用來存儲事實的度量值及各個維的碼值;另一類是維表,對每一個維來說,至少有一個表用來保存該維的元數據,即維的描述信息,包括維的層次及成員類別等。在相關事實表中,這些值會衍生出該維的列。事實表是通過每一個維的碼值同維表聯系在一起的,該結構即被稱為“星型模式”(如圖5)。.
圖5.星型模式示意圖
有時,對于內部層次復雜的維,可以用多張表來描述一個維。比如,產品維可以進一步劃分為類型表、顏色表、商標表等,這樣,在“星”的角上又出現了分支。這種變種的星型模型被稱為“雪片模式”(SnowFlakeSehema)。對層次復雜、成員類較多的維采用多張表來描述,而對于較為簡單的維可以用一張表來描述。
圖6.星型模式實例
2.2.2其體設計方案;阡N售部的日常業務,我們選擇了銷售金額與回款金額這兩個墓本事實。并選定了與之相關的四個維一時間、市場(地區)、產品和客戶.
于是,事實表的結構可以表示如下:
為了提供詳盡的銷售業務信息,該事實表的時間維采用了_比較小的粒度,精確到每天。由于客戶和市場是緊密聯系的,因此,該事實表的大小僅與產品、客戶以及時間的粒度有關。
市場維是最為復雜的一個維,該維是層次結構的。具體分為分公司、小組和基本市場三個層次。在DW中,市場維表主要有如下一些信息:可以看出,上表中的數據只能來自統計局的年
鑒,更新周期為一年。我們將市場維表的時間粒度定為一年。市場代碼為6位,符合嚴格的分段編碼原則,具體規則如圖7所示。
圖7.市場編碼規則
調整前后的代碼是一一對應的、當然,在事實表中的市場代碼也必須作相應的調整,否則,Dw將無法工作。
產品維表除了產品代碼、時間外,還含有名稱、規格、單價、劑型(片劑、藥膏、藥液)等信息。我們將產品維表的時間粒度也定為一年.
客戶維表直接利用公司銷售部的客戶檔案,為了不影響OLTP系統的效率,DW中實際便用的是該檔案的一個拷貝,該拷貝定期根據OLTP數據庫中的客戶檔案進行刷新。-
另外,DW中還存放有銷售人員、專家顧問和客戶的一些統計信息。這些信息目前可供查詢和生成相應的報表,而在不遠的將來,當DW拓展主題、加大規模時,這些數據就成為充實DW的資源。
2·3數據采集的實現
數據采集是數據倉庫建設階段的關鍵所在,亦是數據倉庫維護階段的主要工作之一。在數據采集的實現中有兩個間題必須予以重視:一是采集的周期和時機。二是凈化、集成數據,生成純凈、統一的企業數據視圖。
目前,數據采集的工作是通過前端應用來完成的,其技術基礎是PowerBuilder提供的數據庫控件“管道”。數據采集模塊的流程如圖8所示。
圖8.數據采集流程
之所以要給DBA‘二個強行執行的機會是基于這樣的考慮:新舊兩套系統雙軌運作的時期,必須允許DBA采取一些非常措施,以確保數據采L集的連續性。另外,以上流程圖中各部分的具體細節,尤其是與業務緊密相關的那部分一例如銷售合同OLTPDB中的數據何時可以丟棄,何時該當作壞賬處理,又怎樣回收壞賬等一需要在系統試運行中逐漸地予以明確和實現,其中很多的工作還有賴于財務、儲運、人事等部門的支持與合作。
2. 4數據的可視化呈現
直觀的、多樣化的數據呈現是OLAP類工具所必不可少的特征之一。一般地,管理人員由可視化的統計圖中能夠更快地獲得各種趨勢信息,因此盡可能地使數據呈現可視化將是博得管理人員認可的有效途徑。在將后端數據轉化為可見的統計圖的過程中必須解決如下兩個關鍵性問題:
1)重組數據。由于后端數據在到達統計圖之前必須通過一定的轉換,形成一種多維的數據視圖,用OLAP的術語來說就是數據的多維化一般說來,諸如銷售、生產、計劃等寫時何緊密相關的數據必然含有時間維,而人員構成、客戶檔案等數據則不會有時間維。多維化的途徑仍然是通過SQL語句來重組數據。
2)維的操作。主要有切片和切塊,事實上就是對數據的過濾。當對某一維只保留單一值時即稱為對該維切片,例如指定日期二1997/。7/24即是對白期的切片。反之,指定如‘舊期在1997/。6/01到1997/。6/3。之間”一類范圍的過濾即被稱為切塊.必須仔細地分析各數據維的可操作性以及固有的相關程度,有時統計圖類型(折線圖、條形圖、堆積圖、餅圖以及散點圖等)也不得不作為一個維來對待。
3數據挖掘與決策支持系統
數據挖掘是一種從大型數據庫或數據倉庫中提取隱藏的預測性信息的新技術,它能挖掘出數據間潛在的模式,找出最有價值的信息。數據挖掘的思想依賴于以下三個技術的支持程度;‘大視模數據采集、功能強大的并行多處理器計算機、教據挖掘算法.數據挖掘可實現的功能有:自動預側趨勢和行為;自動發現以前未知的模式。
雖然數據倉庫、OLAP和數據挖掘最初是作為三種獨立的信息處理技術出現的,但是,由于它們內在的聯系和互補性,今天,pw+OLAP十DM的結構己被業內人士公認為是DSS的有效解決方案。這種全新的DSS構架的真正意義在于重新展示了信息的本質,表明了信息系統的設計觀念從處理驅動到數據驅動的轉變。在未來的時代,信息的重點將轉移到數據模式分析,處理技術則是應數據分析的需要而產生的。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業務領域、行業應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業務領域的管理,全面涵蓋了企業關注ERP管理系統的核心領域,是眾多中小企業信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://m.hanmeixuan.com/
本文標題:數據倉庫研究及其在現代企業中的應用