OLAP最基本的概念只有三個:多維觀察、數(shù)據(jù)鉆取、CUBE運算。
關于多維角度:我們在平時工作中,會遇到各種問題,在分析問題的時候,同樣的現(xiàn)象,我們會從多個角度去分析考慮,有時我們還會從幾個角度綜合起來進行分析。這就是OLAP分析最基本的概念——從多個觀察角度的靈活組合來觀察數(shù)據(jù),從而發(fā)現(xiàn)數(shù)據(jù)內在規(guī)律。
OLAP將數(shù)據(jù)分為兩種特征,一種為表現(xiàn)特征,比如一個銷售分析模型中的銷售額、毛利等;還有一種為角度特征,比如銷售分析中的時間周期、產品類型、銷售模式、銷售區(qū)域等。前者是被觀察的對象,OLAP術語稱之為“度量數(shù)據(jù)”,后者為觀察視角,OLAP術語稱之為“維數(shù)據(jù)”。
如果建立這樣一個模型,我們就可以根據(jù)業(yè)務需求,從產品類型角度,去觀察各個銷售地區(qū)的銷售額數(shù)據(jù)(以產品類型和銷售地區(qū)為維、以銷售額為度量);或者我們還可以從銷售模式的角度,去觀察各個銷售地區(qū)的銷售額數(shù)據(jù)(以銷售模式和銷售地區(qū)為維、以銷售額為度量)。
關于數(shù)據(jù)鉆?。涸诜治鲞^程中,我們可能需要在現(xiàn)有數(shù)據(jù)基礎上,將數(shù)據(jù)進一步細化,以獲得更為精確的認識。這就是OLAP中數(shù)據(jù)鉆取的概念。
比如,在銷售分析中,當我們以產品類型和銷售地區(qū)為維、以銷售額為度量進行分析的時候,可能希望進一步觀察某類產品的不同銷售模式在各個銷售地區(qū)的表現(xiàn),這時我們就可以在產品大類這個數(shù)據(jù)維下面,再加上一個銷售模式維,從而獲得相應的信息。
關于CUBE運算:OLAP分析所需的原始數(shù)據(jù)量是非常龐大的。一個分析模型,往往會涉及數(shù)百萬、數(shù)千萬條數(shù)據(jù),甚至更多;而分析模型中包含多個維數(shù)據(jù),這些維又可以由瀏覽者作任意的提取組合。這樣的結果就是大量的實時運算導致時間的延滯。
我們可以設想,一個1000萬條記錄的分析模型,如果一次提取4個維度進行組合分析,那么實際的運算次數(shù)將達到4的1000次方的數(shù)量。這樣的運算量將導致數(shù)十分鐘乃至更長的等待時間。如果用戶對維組合次序進行調整,或增加、或減少某些維度的話,又將是一個重新的計算過程。
從上面的分析中,我們可以得出結論,如果不能解決OLAP運算效率問題的話,OLAP將是一個毫無實用價值的概念。那么,一個成熟產品是如何解決這個問題的呢?這涉及到OLAP中一個非常重要的技術——數(shù)據(jù)CUBE預運算。
一個OLAP模型中,度量數(shù)據(jù)和維數(shù)據(jù)我們應該事先確定,一旦兩者確定下來,我們可以對數(shù)據(jù)進行預先的處理。在正式發(fā)布之前,將數(shù)據(jù)根據(jù)維進行最大限度的聚類運算,運算中會考慮到各種維組合情況,運算結果將生成一個數(shù)據(jù)CUBE,并保存在服務器上。
這樣,當最終用戶在調閱這個分析模型的時候,就可以直接使用這個CUBE,在此基礎上根據(jù)用戶的維選擇和維組合進行復運算,從而達到實時響應的效果。
posted on 2007-05-28 21:49
扭曲的鉛筆 閱讀(987)
評論(1) 編輯 收藏 所屬分類:
BI