OLAP:聯(lián)機(jī)分析處理
OLAP:Online Analytical Processing
聯(lián)機(jī)分析處理(OLAP)指的是對(duì)存儲(chǔ)在數(shù)據(jù)庫或數(shù)據(jù)倉庫中的數(shù)據(jù)提供分析的一種軟件。OLAP 工具能快速提供復(fù)雜數(shù)據(jù)庫查詢的答案,并幫助用戶分析多維數(shù)據(jù)中的各維情況。通常 OLAP 應(yīng)用于
數(shù)據(jù)倉庫中的數(shù)據(jù)處理過程,即所謂的“數(shù)據(jù)挖掘”(Data Mining)。
關(guān)系數(shù)據(jù)庫中,是將經(jīng)過規(guī)范化的實(shí)體存放在分散的表格中。該結(jié)構(gòu)非常適用于操作型數(shù)據(jù)庫,但該結(jié)構(gòu)對(duì)于復(fù)雜的、包含多個(gè)表的查詢,速度相對(duì)較慢。多維數(shù)據(jù)庫是一種更好的查詢模式,但其操作性能較差。
OLAP 的主要組成部件是 OLAP 服務(wù)器,它位于客戶機(jī)和數(shù)據(jù)庫管理系統(tǒng)(DBMS)之間。OLAP 服務(wù)器清楚數(shù)據(jù)如何被組織成數(shù)據(jù)庫,并具有關(guān)于數(shù)據(jù)分析的特定功能。例如,OLAP 軟件獲取關(guān)系數(shù)據(jù)庫的一個(gè)映像后,重新構(gòu)建一個(gè)多維數(shù)據(jù),然后便可重新對(duì)此查詢。
由操作型數(shù)據(jù)創(chuàng)建而來的 OLAP 結(jié)構(gòu)被稱之為 OLAP 數(shù)據(jù)集(OLAP cube)。OLAP 數(shù)據(jù)集中可能包含每個(gè)查詢的所有答復(fù)。OLAP 數(shù)據(jù)集采用的星型模式指:事實(shí)表列出關(guān)鍵事實(shí),然后由中心進(jìn)行查詢的一種方式。大量的維度表與事實(shí)表相鏈接。為避免計(jì)算所有可能的數(shù)集,所以只對(duì)預(yù)先確定的數(shù)進(jìn)行完全的計(jì)算,其它的作為備用。
OLAP 具有三種類型:
多維 OLAP(MOLAP) ― MOLAP 是 OLAP 中較為“流行”的一種。它使用摘要型數(shù)據(jù)庫,具有一個(gè)專用數(shù)據(jù)庫引擎,并且按照需求創(chuàng)建包含基本數(shù)據(jù)和數(shù)據(jù)集合的多緯度模式。MOLAP 在小型數(shù)據(jù)設(shè)置方面占有一定優(yōu)勢(shì),集合計(jì)算和返回答案的速度都比較快,但同時(shí)也能快速創(chuàng)建海量數(shù)據(jù)。
關(guān)系 OLAP(ROLAP) ― ROLAP 與關(guān)系數(shù)據(jù)庫直接相關(guān),基本數(shù)據(jù)和緯度表代表關(guān)系表,此外創(chuàng)建一個(gè)包含數(shù)據(jù)集合信息的新表。ROLAP 是較 MOLAP 更為高級(jí)的一種類型,優(yōu)點(diǎn)是占有空間小,但其預(yù)處理和查詢性能也是最低的。
混合 OLAP(HOLAP) ― 混合 OLAP 使用關(guān)系表表示基本數(shù)據(jù)和緯度表。在所有領(lǐng)域中 HOLAP 介于 MOLAP 和 ROLAP 之間,但它能提供快速預(yù)處理和良好的衡量。
實(shí)現(xiàn) OLAP 的主要難點(diǎn)是查詢構(gòu)成、基本數(shù)據(jù)選擇和模式開發(fā)。這使得大多數(shù)現(xiàn)代 OLAP 產(chǎn)品與大型預(yù)置查詢庫結(jié)合使用。另一個(gè)問題是基本數(shù)據(jù)必須完全一致。