導讀:Online Analytical Processing(OLAP)是一種流行且強大的數據分析方法。它探索復雜的數據結構並以一種優雅且容易理解的方式呈現信息。IBM DB2 Data Warehouse Edition(DWE)為 OLAP 解決方案開發人員和信息消費者提供了一套全面的 OLAP 工具。本文將介紹 IBM DB2 Data Warehouse Enterprise Edition 9.1 提供的 OLAP 服務,並解釋它給開發人員和目標用戶帶來的價值。
簡介
IBM DB2 Data Warehouse Edition 是一套產品,它結合了 DB2 數據服務器的長處和來自 IBM 的強大的商業智能基礎設施。DB2 DWE 集成了用於倉庫管理、數據轉換、數據挖掘以及 OLAP 分析和報告的核心組件。在本文中,我們主要關注 DB2 DWE 提供的 OLAP 服務。什麼是 OLAP 服務?
On-Line Analytical Processing(OLAP)是一類軟件技術,它們使用戶(業務分析師、經理和執行官)能夠以交互形式快速、一致地探查數據,用戶看到的是經過轉換後的原始數據的各種信息視圖,它們可以反映業務的真實維數。
OLAP 的功能
多維的—— OLAP 服務通過支持空間聚合路徑(dimensional aggregation path)或層次結構和/或多重層次結構,提供了大量數據視圖或多維的概念性視圖。
容易理解—— 為 OLAP 分析設計的數據市場可以處理與應用程序和開發人員相關的任何業務邏輯和統計分析,同時使它對於目標用戶而言足夠簡單。
交互性—— OLAP 幫助用戶通過對比性的個性化查看方式,以及對各種 “what-if” 數據模型場景中的歷史數據和預計數據進行分析,將業務信息綜合起來。用戶可以在分析中定義新的專用計算,並可以以任何希望的方式報告數據。
快速—— OLAP 服務常常以多用戶的客戶機/服務器模式實現,而且無論數據庫的規模和復雜性有多大,都能夠對查詢提供一致的快速響應。合並的業務數據可以沿著所有維度中的層次結構預先進行聚合,從而減少構建 OLAP 報告所需的運行時計算。為什麼要執行 OLAP?
傳統的(SQL 或其他)基於腳本的數據分析報告的構建方式常常是從兩維關系數據庫表中獲取數據。先對這些報告進行格式化,然後將它們呈現給用戶。兩維報告的缺點是:
另一方面,OLAP 報告將業務數據結構、過程、算法和邏輯的復雜性集成到了它的多維數據結構中,然後向最終用戶呈現容易理解的維信息視圖,讓他們能夠以非常自然的方式探索業務數據。多維結構聽起來非常復雜,其實不然。OLAP 並不在業務數據上添加額外的數據結構或維。它只是以維的方式識別復雜數據,並以非常容易理解的方式向數據消費者呈現數據。
利用 OLAP 服務,用戶可以輕松地找到預定義的報告並探索業務數據,以建立新的專用業務報告,而這些都不需要 IT 專業人員的幫助。OLAP 報告使用戶非常接近業務數據,使他們能夠認識到業務數據維的存在並理解哪些業務問題可以得到回答。
OLAP 報告在當今非常流行,它廣泛地用作向顧客提供數據倉庫解決方案的基礎。OLAP 數據市場
在談到數據市場時,許多人可能會立即想到多維或 OLAP 分析。根據定義,數據市場是數據倉庫的一個子集,是專門針對特定的用戶群或特定的主題領域設計的。OLAP 是對數據市場中的數據進行分析的方法之一。在本文中,我們將專門為多維分析設計的數據市場稱為 OLAP 數據市場。DB2 DWE OLAP 數據市場是一種具有以下性質的數據庫:
它具有星形或雪花形的維數據庫模式設計。
數據庫可以存儲 OLAP 元數據,包括 OLAP 模型和多維數據集。
數據庫可以包含物化查詢表(MQT),即用於 DWE OLAP 模型和多維數據集的預聯結和預聚合的表。OLAP 和數據倉庫
OLAP 是大多數數據倉庫解決方案中使用的報告實現之一。OLAP 解決方案有時候被錯誤地稱為數據倉庫解決方案。在為某個部門或有限的用戶群開發 OLAP 解決方案時,這種說法尤其容易引起誤解。
數據倉庫最重要的特性是數據集成,而數據倉庫最重要的用途是信息數據呈現。OLAP 服務並不是主要針對數據集成而設計的;但是,它是一種強大的數據呈現方法,在大多數數據倉庫解決方案中都使用 OLAP。
典型的 OLAP 服務常常源自一個或多個專門設計的數據市場。OLAP 服務應該被看作數據倉庫解決方案的一部分,參見圖 1。圖 1. 數據倉庫中的 OLAP 報告
OLAP 維和層次結構
OLAP 服務涉及許多概念。我們會根據上下文的需要介紹它們。但是,在 DB2 Online Information Center 中也可以找到所有 OLAP 概念(請參閱本文的 參考資料部分)。
OLAP 維(dimension)能夠對描述業務度量的某一方面的一組相關數據屬性進行分類。維根據區域、產品或時間等邏輯類別對事實對象中的數據進行組織。
OLAP 維引用零個或更多的層次結構(hierarchy)。層次結構描述引用的數據屬性的關系和結構,這些數據屬性被劃分為幾個級別(比如時間維中的年、月和日),從而提供一種在維中進行移動的可導航且可計算的方式。OLAP 模型和 OLAP 多維數據集
OLAP 模型和 OLAP 多維數據集是 DB2 DWE OLAP 服務中的兩個重要概念。多維數據集模型代表 OLAP 數據市場中的數據結構和關系。多維數據集模型包含元數據對象,這些對象描述基表數據中的關系以及相關數據位於什麼地方。多維數據集模型讓信息消費者能夠從一個新的視角理解數據。圖 2. OLAP 模型對象
OLAP 多維數據集具有一組特定的、類似但卻更多限制性的、衍生自父多維數據集模型的元數據對象,這些對象包括多維數據集維、多維數據集層次結構、多維數據集層和一個多維數據集事實對象。對於每個多維數據集維,一個多維數據集只能定義一個多維數據集層次結構;但是在多維數據集模型中,一個維可以有多個層次結構。
可以使用多維數據集對多維數據集模型進行優化,使它更適應最活躍、最重要的多維數據集模型區域。可以指定優化切片,切片定義多維數據集中最常被查詢的特定部分。在為多維數據集模型創建了優化(比如 MQT)之後,從這個模型派生的所有多維數據集都會因此受益。DB2 Data Warehouse 和 OLAP 服務
IBM DB2 Data Warehouse Edition(DWE)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 Tool(SQW)和一個 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 多維數據集模型和多維數據集。
Design Studio 不但可以用來設計、管理和部署 OLAP 模型和多維數據集,還可以用來與其他商業智能工具交換 OLAP 元數據。多維數據集模型在 DB2 中定義之後,就可以供 Alphablox 和其他 ISV 商業智能工具使用。共享的元數據包括聚合公式和計算,所以跨業務生成的分析結果具有更強的一致性。
優化 OLAP 模型和多維數據集。
在 DWE Design Studio 中,可以為 OLAP 模型和多維數據集設計和部署物化查詢表(MQT)。DB2 優化器會利用這些預連接(pre-joined)和預聚合(pre-aggregated)的 MQT,重寫輸入的查詢並將適當的 OLAP 查詢轉到適當的 MQT,從而顯著加快查詢的執行。
設計和生成 OLAP 報告。
OLAP 多維數據集可以從 Design Studio 導出到 Alphablox,從而根據業務需求生成 OLAP 報告。可以在 DB2 Alphablox 中修改 OLAP 多維數據集並將它導入 Design Studio 進行元數據管理。圖 4. DWE Design Studio 在 OLAP 服務開發中的作用
這是一個反復進行的過程,理解這一點非常重要。來自解決方案提供商和顧客的領域專家應該積極地參與 OLAP 設計和測試階段,這樣才能提交讓顧客滿意的 OLAP 解決方案。通過本文的閱讀,希望大家都能對DB2數據倉庫OLAP服務有了大體的了解,對大家以後的工作能起到一定的作用。