11月 11, 2010

線上分析處理 (OLAP)

OLAP的資料可取自關係性或多維度的資料庫

前者稱為ROLAP(關係性線上分析處理- Relational Online Analytical Processing),後者稱為MOLAP(多維度線上分析處理- Multidimensional Online Analytical Processing)。

ROLAP從關係性資料庫管理系統中取得資料,MOLAP則從多維度資料庫系統中取得資料。

關係性線上分析處理(ROLAP)
資料庫以關係性表格組成

ROLAP適用於資料庫很大,而分析為中等
MOLAP適用於資料庫較小,而分析較複雜

關連式 OLAP 系統(Rational OLAP, ROLAP):
ROLAP 他的運作是基於將來源資料(通常是數個關連式資料庫)透過 ETL 處理儲存於 Meta Data Repository,再動態的去產生查詢語言(SQL Script)去查詢這個 Meta Data Repository,以達到管理者所需的資訊。優點是不需要再去建置一個資料倉儲系統,不過缺點是效能差、以及受限於 SQL 查詢語言本身的限制。

1.ROLAP(Relational OLAP)
資料並不放在ROLAP伺服器上,而是另外存放在關聯式資料庫或其他檔案系統,當使用者分析查詢時, ROLAP伺服器會參考之前已定義好的資料模型,
將其需求轉換為經過最佳化SQL(Structured Query Language)的指令去讀取資料回來。其優點是不需要額外的儲存空間,較具有延展性,但速度反應較慢。

MOLAP 是藉由一個陣列基礎(Array-base)的多維度儲存引擎(稱之為Cube),透過這個 Cube 來對資料作分析,它背後需要一個資料倉儲作為分析的基礎。他的優點是:速度快、可應付複雜的查詢及從多角度去觀察相關資料的呈現,不過缺點是分析 Cube 的規則路徑是無法動態調整的,對於分析資料與企業所關心的主題不清楚的人,往往有規劃不及的情況。

2.MOLAP(Multidimentional OLAP)
資料是以多維度的資料立方體(Data Cube)的型式存放在MOLAP伺服器,事先都已彙總運算好並把結果寫入Cube,當使用者分析查詢時, MOLAP伺服器就直接回傳其所需要的資料。其優點是查詢速度快,但需要比較多的儲存空,若資料立方體是呈現稀疏狀態,也會浪費儲存空間。

沒有留言:

張貼留言