IBM DB2 Data Warehouse Edition 是一套產品,它結合了 DB2 資料服務器的長處和來自 IBM 的強大的商業智慧基礎設施。DB2 DWE 整合了用於倉庫管理、資料轉換、資料採礦以及 OLAP 分析和報告的核心組件。在本文中,我們主要關注 DB2 DWE 提供的 OLAP 服務。
什麼是 OLAP 服務?
On-Line Analytical ProcessingOLAP)是一類軟體技術,它們使使用者商務分析師、經理和執行官)能夠以互動形式快速、一致地探查資料,使用者看到的是經過轉換後的未經處理資料的各種資訊視圖,它們可以反映業務的真實維數。
OLAP 的功能是
多維的 —— OLAP 服務通過支援空間彙總路徑dimensional aggregation path)或階層和/或多重階層,提供了大量資料檢視或多維的概念性視圖。
容易理解 —— 為 OLAP 分析設計的資料超市可以處理與應用程式和開發人員相關的任何商務邏輯和統計分析,同時使它對於目標使用者而言足夠簡單。
互動性 —— OLAP 協助使用者通過對比性的個人化查看方式,以及對各種 “what-if” 資料模型情境中的曆史資料和預計資料進行分析,將商務資訊綜合起來。使用者可以在分析中定義新的專用 計算,並可以以任何希望的方式報告資料。
快速 —— OLAP 服務常常以多使用者的客戶機/伺服器模式實現,而且無論資料庫的規模和複雜性有多大,都能夠對查詢提供一致的快速響應。合并的業務資料可以沿著所有維度中的階層預先進行彙總,從而減少構建 OLAP 報告所需的運行時計算。
為什麼要執行 OLAP?
傳統的SQL 或其他)基於指令碼的資料分析報告的構建方式常常是從兩維關聯式資料庫表中擷取資料。先對這些報告進行格式化,然後將它們呈現給使用者。兩維報告的缺點是:
報告是預定義的,內建在製作報告的應用程式中。在許多情況下,無法輕鬆地修改它們來適應業務報告需求的變化。
修改報告或建立新的報告需要 IT 專業人員。
報告使用者與業務資料是分離的。
另一方面,OLAP 報告將業務資料結構、過程、演算法和邏輯的複雜性整合到了它的多維資料結構中,然後向終端使用者呈現容易理解的維資訊視圖,讓他們能夠以非常自然的方式探索業務資料。多維度結構聽起來非常複雜,其實不然。OLAP 並不在業務資料上添加額外的資料結構或維。它只是以維的方式識別複雜資料,並以非常容易理解的方式向資料消費者呈現資料。
利用 OLAP 服務,使用者可以輕鬆地找到預定義的報告並探索業務資料,以建立新的專用 業務報告,而這些都不需要 IT 專業人員的協助。OLAP 報告使使用者非常接近業務資料,使他們能夠認識到業務資料維的存在並理解哪些業務問題可以得到回答。
OLAP 報告在當今非常流行,它廣泛地用作向顧客提供資料倉儲解決方案的基礎。
OLAP 資料超市
在談到資料超市時,許多人可能會立即想到多維或 OLAP 分析。根據定義,資料超市是資料倉儲的一個子集,是專門針對特定的使用者群或特定的主題領域設計的。OLAP 是對資料超市中的資料進行分析的方法之一。在本文中,我們將專門為多維分析設計的資料超市稱為 OLAP 資料超市。DB2 DWE OLAP 資料超市是一種具有以下性質的資料庫:
它具有星形或雪花形的維資料庫模式設計。
資料庫可以儲存 OLAP 中繼資料,包括 OLAP 模型和Cube。
資料庫可以包含物化查詢表MQT),即用於 DWE OLAP 模型和Cube的預連接和預彙總的表。
OLAP 和資料倉儲
OLAP 是大多數資料倉儲解決方案中使用的報告實現之一。OLAP 解決方案有時候被錯誤地稱為資料倉儲解決方案。在為某個部門或有限的使用者群開發 OLAP 解決方案時,這種說法尤其容易引起誤解。
資料倉儲最重要的特性是Data Integration,而資料倉儲最重要的用途是資訊資料呈現。OLAP 服務並不是主要針對Data Integration而設計的;但是,它是一種強大的資料呈現方法,在大多數資料倉儲解決方案中都使用 OLAP。
典型的 OLAP 服務常常源自一個或多個專門設計的資料超市。OLAP 服務應該被看作資料倉儲解決方案的一部分,參見圖 1。
圖 1. 資料倉儲中的 OLAP 報告
OLAP 維和階層
OLAP 服務涉及許多概念。我們會根據內容相關的需要介紹它們。但是,在 DB2 Online Information Center 中也可以找到所有 OLAP 概念請參閱本文的 參考資料 部分)。
OLAP 維dimension) 能夠對描述業務度量的某一方面的一組相關資料屬性進行分類。維根據地區、產品或時間等邏輯類別對事實對象中的資料進行組織。
OLAP 維引用零個或更多的階層hierarchy)。階層描述引用的資料屬性的關係和結構,這些資料屬性被劃分為幾個層級比如時間維中的年、月和日),從而提供一種在維中進行移動的可導航且可計算的方式。
OLAP 模型和 OLAP Cube
OLAP 模型和 OLAP Cube是 DB2 DWE OLAP 服務中的兩個重要概念。Cube模型代表 OLAP 資料超市中的資料結構和關係。Cube模型包含中繼資料對象,這些對象描述基表資料中的關係以及相關資料位元於什麼地方。Cube模型讓資訊消費者能夠從一個新的視角理解資料。
圖 2. OLAP 模型對象
OLAP Cube具有一組特定的、類似但卻更多限制性的、衍生自父Cube模型的中繼資料對象,這些對象包括Cube維、Cube階層、Cube層和一個Cube事實對象。對於每個Cube維,一個Cube只能定義一個Cube階層;但是在Cube模型中,一個維可以有多個階層。
可以使用Cube對Cube模型進行最佳化,使它更適應最活躍、最重要的Cube模型地區。可以指定最佳化切片,切片定義Cube中最常被查詢的特定部分。在為Cube模型建立了最佳化比如 MQT)之後,從這個模型派生的所有Cube都會因此受益。
DB2 Data Warehouse 和 OLAP 服務
IBM DB2 Data Warehouse EditionDWE)V9.1 是一個完全整合的強大且靈活的資料倉儲平台,提供了中繼資料和運行時基礎設施的深度整合。DWE 整合了資料倉儲的核心組件,以及用於即時資料探索和決策的改進了效能和易用性的商業智慧BI)特性,從而協助使用者實現隨需利用資訊。
可以使用 DWE 建立完整的資料倉儲解決方案,其中包括可高度伸縮的關聯式資料庫、資料訪問功能、商業智慧分析和前端分析工具。DWE 整合了用於倉庫管理、資料採礦、OLAP 和內聯分析和報告的核心組件。
DB2 Data Warehouse Enterprise Edition 中提供了以下產品:
DWE Design Studio,它包含 IBM Rational® Data Architect 的子集
DWE SQL Warehousing Tool
DWE Administration Console
DB2 Universal Database™ Enterprise Server Edition, Version 8.2,它包含 DB2 Data Partitioning Feature
DWE Cube Views™, Version 8.2.3
DB2 Query Patroller, Version 8.2.3
DWE Intelligent Miner™
DB2 Alphablox, Version 8.4
WebSphere® Application Server Version 6.0.2
DWE 組件分成三個邏輯組。通常將這三個組件組安裝在三台不同的電腦上,但是也可以安裝在兩台電腦上。例如,可以將 Data Warehousing Server 組件和 Application Server 組件安裝在同一台電腦上,也可以將它們安裝在兩台電腦上。中顯示了這些組。
圖 3. DWE 運行時體繫結構
在 DB2 Data Warehouse Edition 9.1 的目前的版本中的 9 個軟體組件中,有 8 個都以某種方式提供了 OLAP 服務。DB2 Cube Views、SQL Warehousing ToolSQW)和一個 IBM Rational Data Architect 子集已經整合到了 DWE Design Studio 中,這使 Design Studio 組件成為商業智慧開發人員理想的工作平台。
DB2 DWE Design Studio
DWE Design Studio 內建在 Eclipse 工作台中,Eclipse 工作台是一個很容易定製的強大的開發環境。可以結合使用 DB2 Alphablox 和 Design Studio 來開發端到端 OLAP 解決方案。
我們來看看開發 DB2 DWE OLAP 解決方案的基本過程以及在這個過程中如何使用 Design Studio:
收集並分析業務需求。
在開發所有 OLAP 解決方案時,首先應該收集並分析顧客的業務需求。在分析業務需求時使用的最重要的方法之一是資料建模。DWE Design Studio 為資料建模提供了豐富的邏輯和物理資料建模功能。
設計和實現 OLAP 資料超市。
除了使用邏輯和物理資料建模功能建立 OLAP 資料庫之外,還可以通過反向工程功能從現有的資料庫中提取出中繼資料,然後通過前向工程功能產生物理資料庫,從而研究、修改和重用現有的資料庫模型。
設計資料流過程來填充 OLAP 資料超市。
Design Studio SQL operators 的庫提供了資料流和控制流程設計,可以控制將資料從資料來源移動到 OLAP 資料超市中的表所需的資料操作。
設計 OLAP Cube模型和Cube。
Design Studio 不但可以用來設計、管理和部署 OLAP 模型和Cube,還可以用來與其他商業智慧工具交換 OLAP 中繼資料。Cube模型在 DB2 中定義之後,就可以供 Alphablox 和其他 ISV 商業智慧工具使用。共用的中繼資料套件括彙總公式和計算,所以跨業務產生的分析結果具有更強的一致性。
最佳化 OLAP 模型和Cube。
在 DWE Design Studio 中,可以為 OLAP 模型和Cube設計和部署物化查詢表MQT)。DB2 最佳化器會利用這些預串連pre-joined)和預彙總pre-aggregated)的 MQT,重寫輸入的查詢並將適當的 OLAP 查詢轉到適當的 MQT,從而顯著加快查詢的執行。
設計和產生 OLAP 報告。
OLAP Cube可以從 Design Studio 匯出到 Alphablox,從而根據業務需求產生 OLAP 報告。可以在 DB2 Alphablox 中修改 OLAP Cube並將它匯入 Design Studio 進行中繼資料管理。
圖 4. DWE Design Studio 在 OLAP 服務開發中的作用
這是一個反覆進行的過程,理解這一點非常重要。來自方案提供者和顧客的領域專家應該積極地參與 OLAP 設計和測試階段,這樣才能提交讓顧客滿意的 OLAP 解決方案。
(