520 likes | 745 Views
第 四 章 OLAP 技術 4.1 OLAP 技術概述 4.2 OLAP 與多維度分析 4.3 OLAP 的執行 4.4 多維度與關聯式 OLAP 4.5 OLAP 技術評估 習題. OLAP 技術主要有兩個特色: 線上( On_Line ),其呈現方式為對客戶申請的快速回應和互動式操作,它的執行是由客戶端 ╱ 伺服器架構完成的; 多維分析( Multi_Analysis ),這也是 OLAP 技術的重點所在。. 4.1.1 OLAP 的發展. 在 1960 年代末期, E.P.Codd 提出關聯式資料模型,促進了關聯式資料庫與線上交易處理的發展。
E N D
第 四 章 OLAP技術4.1 OLAP技術概述4.2 OLAP與多維度分析 4.3 OLAP的執行4.4 多維度與關聯式OLAP4.5 OLAP技術評估習題
OLAP技術主要有兩個特色: • 線上(On_Line),其呈現方式為對客戶申請的快速回應和互動式操作,它的執行是由客戶端╱伺服器架構完成的; • 多維分析(Multi_Analysis),這也是OLAP技術的重點所在。
4.1.1 OLAP的發展 • 在1960年代末期,E.P.Codd提出關聯式資料模型,促進了關聯式資料庫與線上交易處理的發展。 • E.F.Codd在1993年將這類技術稱為OLAP。 • OLAP主要是針對特定問題的線上資料查詢和分析。
4.1.2 OLAP的特色 • 快速性 需求系統能在數秒內對客戶的多數分析需求作出反 應。 • 可分析性 OLAP系統應能處理與應用有關的邏輯及統計分 析。
多重維度性 多維性是OLAP的關鍵屬性。系統能夠提供對資料分 析的多維視覺圖和多維分析。 • 資訊性 不論資料量有多大.也不管資料儲存在何處,OLAP 系統應能即時獲得資料,並且管理大容量資訊。
4.2 OLAP與多維度分析4.2.1 多維基本概念 • 維度(Dimension) • 資料倉儲中的維度,一般具有水平階層和垂直階層。水平階層由維度階層中相同級別的欄位值構成,例如圖4.1中的北部、中部和南部階層。 • 垂直階層則由為度階層架構中具有不同級別的字元值所構成,例如圖4.1中的北部、台北階層。
多維度資料集合 多維度資料集合是決策支援的支柱,也是0LAP的重 點,有時也稱為立方體或超立方。OLAP展現在客戶 面前的是一幅幅多維度視覺圖。
維度成員 • 維度成員是維度的一個取值,如果維度已經分成了若干個維度,那麼維度成員就是不同維度階層取值的組合。例如,某一公司的銷售資料有市、區、里地理維度的三個階層,那麼”台北市”就構成了地理維度的一個維度成員。
維度成員並不是一定要在維度的每一個階層上都取值。例如,“台北市”、“文山區”都是地理位置維度的維度成員。維度成員的值並不是人們在資料倉儲中所關心的物件,人們常常是用這些維度成員去描述他所關心的主題。維度成員並不是一定要在維度的每一個階層上都取值。例如,“台北市”、“文山區”都是地理位置維度的維度成員。維度成員的值並不是人們在資料倉儲中所關心的物件,人們常常是用這些維度成員去描述他所關心的主題。
多維資料集的度量值 在多維資料集中有一組度量值,這些值是多維資料 集中事實表導向的一列或多列,這些值應該是數 字。
群集(Agrregation) 群集或聚合是指收集了基本交易資料的結構。在一 個立方體中包括很多階層,這些階層可以向客戶提 供某一階層的一般化資料。
4.2.2 多維分析 • 多維的切片 在切片的概念中,有兩個重要的概念必須確實掌 握: • 一個是多維資料集的切片數量的多少 是由所選 定的那個維的維成員數量的多寡所決定的。 • 另一個是進行切片操作的目的是使人們能夠更好地了解多維資料集。
多維的切塊 實際上,切塊操作也可以看成是進行了多次切片操 作之後,將每次切片操作所得到的切片重疊在一起 而形成的。
旋轉 在對資料倉儲中的多維資料集進行顯示操作過程 中,客戶常常希望能夠對多維資料集改變其顯示的 維度方向,也就是說進行多維度資料的旋轉(rotate) 操作。
其他OLAP操作 在OLAP的分析中,還有”上捲”(roll_up)、”下鑽” (drill_down)、”鑽過”(drill_across)和”鑽透” (drill_through)等鑽取操作。
從OLAP使用效率的角度考量,在設計資料倉儲時應該考量這樣一些因素:從OLAP使用效率的角度考量,在設計資料倉儲時應該考量這樣一些因素: • 可能使用星形架構,如果採用雪花結構,就要最小化事實表底層維度表之後的維度表的數量。 • 為客戶設計包含事實表的維度表,這些維度表應該包含有意義的、客戶希望瞭解的資訊。 • 維度表的設計應該符合通常意義上的範式限制,維度表中不要出現相關的資訊。
事實表中不要包含匯總資料,事實表中所包含的客戶需要存取的資料應該具有必須的粒度,這些資料應該是同一階層的資料。事實表中不要包含匯總資料,事實表中所包含的客戶需要存取的資料應該具有必須的粒度,這些資料應該是同一階層的資料。 • 對事實表和維度表中的關鍵字必須建立索引,同一種資料可能使用一個是事實表。 • 保證資料的參考完備性,史事時表中的所有資料都出現在所有的維度表中,避免事實表中的某些資料行在立方體進行群集運算時沒有加進來。
4.3 OLAP的執行 這種三層客戶端╱伺服器的架構通常將資料倉儲、 OLAP伺服器與客戶端區隔分開。系統的主要處理 (例如資料存取、後端資料處理、報表的預先處 理)都是由OLAP伺服器上的應用完成,而不是由客 戶端完成。
4.4 多維度與關聯式OLAP 如果採用多維度資料庫(MDDB-Multi Dimensional DataBase)儲存、顯示資料,那麼這種OLAP系統就 是多維度導向的OLAP,即MOLAP。
4.4.2 多維度資料庫的資料儲存 在MDDB中。其資料的儲存是由許多類似於陣列的 物件來完成的。在這些物件中包含了經過高度壓縮 的索引和指標,利用這些索引和指標將許多儲存資 料的單元連接在一起。
4.4.3 多維度資料庫與資料倉儲 在OLAP的實際應用中,有不少人希望直接從交易處 理系統中萃取資料,也就是將圖4.6中的第三層去 掉,將第二層的OLAP伺服器直接與交易處理系統連 接。這樣在OLAP的應用中,系統設計就十分簡便, 但是此種OLAP的架構在實際應用中有下列一些很嚴 重的問題:
增加資料萃取部分的工作量 • 缺乏統一的資料來源和結論 • 加大系統的維護工作量 • 缺乏對超資料的有效管理 • 加大OLAP系統的開發投入
4.4.4 MOLAP的創建與功能 • MOLAP的創建 • 選擇功能 • 確定分析數值 • 架構分析維度 • 定義邏輯模型
MOLAP的功能 • 快速回應能力 • 與多維度資料庫進行互動的能力 • 採掘資訊之間的關係 • 多樣化模型 • 資料導覽能力
4.4.5 ROLAP執行的三個規則 ROLAP的執行必須遵照這樣三個規則: • 支援OLAP原則 ROLAP是將資料儲存在關聯式資料庫中,但是它的 基本功能依然是線上分析處理。 • 資料儲存在某一個關聯式資料庫中
支援某種形式的群集導覽 所謂的群集導覽是一種能夠為客戶的不同查詢,選 擇一個最小可用列表的軟體,因為在資 倉儲中除了 基本事實表以外,還包含了一些概況表。
4.4.6 ROLAP的多維度表示法 事實表運用每一個維度的主鍵值與維度表聯結在一 起,這樣就構成了如圖4.8所示的“星型模式”。在圖 中心的銷售情況表是一個事實表,在表中儲存了產 品ID、經銷商ID、地址ID、時間ID四個維度表的主 鍵。
雪花模式在關聯式資料庫中的表示法 在產品維度上劃分產地類別、銷售地類別、用途類 別、產品類別等若干類別,這樣在星型模式的角上 就出現了分支,也就是說星型模式變成了“雪花”模 式。在圖4.9中所示的“雪花模式”就是在圖4.8的星型 模式上的產品維度上演變而來的。
4.4.7 ROLAP的創建與功能 • ROLAP的創建 ROLAP的創建首先與MOLAP一樣需要執行選擇功 能、確定分析數值、建構分析維度、定義邏輯模 型,然後還需要根據ROLAP執行的準則完成。 • 資料添加 • 資料管理 • 超資料儲存 • 應用工具建構
ROLAP的功能 • 關聯式資料的商業視覺圖 • 維度階層支援 • 模型的自訂定義 • 細剖細節性階層 • 資料的備份、恢復和安全功能 • 超資料導覽航 • OLAP伺服器性能的協調
4.5 OLAP技術評估4.5.1 MOLAP與ROLAP的比較 • 查詢性能 MOLAP的查詢能力一般較好,因為在多維度資料庫 中常常根據客戶的需求事先做好了許多計算。 • 資料載入性能 在許多MOLAP中多維度資料庫的載入往往是一個月 才進行一次。而對於ROLAP來說,在資料載入過程 中所要完成的操作僅是資料載入、索引和概況表的 創建。
分析能力 ROLAP的分析結果往往由於SQL語言的限制,使 ROLAP的分析效果往往不如MOLAP。 • 資料市集的大小 ROLAP中所使用的關聯式資料庫,一般不會出現稀 疏矩陣的情況。而且在實際應中,ROLAP資料庫可 以支持無限成長的資料儲存要求,只要硬碟空間足 夠大,而大多數多維度資料庫的容量不能無限成 長。
維度的管理 ROLAP資料庫由於採用了星型模式構建,星型模式 的維度表可能很寬,可以包含很多列。 • 維護能力 OLAP在建構成功以後,需要不斷地對其進行維護。 MOLAP能夠較好地進行自我維護。
4.5.2 OLAP的衡量標準 • 多維度性 • 具體性 • 可存取性 • 解讀性整批處理萃取 • OLAP分析模型 • 客戶端/伺服器結構性 • 透明性或開放性 • 多重客戶性
處理非正規資料性 • 儲存OLAP結果 • 萃取遺漏值 • 處理遺漏值 • 彈性報表 • 一致性能報表 • 對實體層的自動調整 • 通用維度 • 無限制跨維度操作
4.5.3 OLAP伺服器和工具的評估標準 • OLAP功能 OLAP作為一種資料分析技術,主要是透過對現有的 資料進行計算、轉換產生新的資訊,並顯示給客 戶。 例如在不同維度之間進行成本分配或在電子試算表 中按照不同維度進行損益表的計算。
存取性能 管理人員所組成的OLAP客戶,在使用OLAP時,希 望能夠得到多種存取資料工具的選擇,能夠將客戶 所熟悉的存取工具整合進OLAP中。 例如 VisualBasic、PowerBuilder、Visual C等應用環境 或OLE.DDE.CORBA等介面,也是衡量OLAP工具存 取性能的一個評估標準。