三十六、数据仓库的实现
1. 數(shù)據(jù)倉庫的實現(xiàn)
1.1 數(shù)據(jù)倉庫的基本內(nèi)容
數(shù)據(jù)倉庫包含海量數(shù)據(jù)。OLAP服務器要在數(shù)秒內(nèi)回答決策支持查詢。因此,至關(guān)重要的是,數(shù)據(jù)倉庫系統(tǒng)要支持高校的數(shù)據(jù)立方體技術(shù)、存取方法和處理技術(shù)。本節(jié),我們主要關(guān)注的是數(shù)據(jù)倉庫的有效實現(xiàn)方法。
- 數(shù)據(jù)立方體的有效計算
- 索引OLAP數(shù)據(jù):位圖索引和鏈接索引
- OLAP查詢的有效處理
- OPAP的服務器結(jié)構(gòu)
2 數(shù)據(jù)立方體的有效計算
2.1 compute cube操作與維災難
多維數(shù)據(jù)分析的很想是有效地計算許多維集合上的聚集。用SQL的屬于,這些聚集稱為分組(group-by)。每個分組可以用一個方體表示,而分組的集合形成定義數(shù)據(jù)立方體的方體的格。
- 數(shù)據(jù)立方體是方體格:假設相對ALLElectronics的銷售創(chuàng)建一個數(shù)據(jù)立方體、包含city、item、year、sales_in_dollars。
- 按city和item分組計算銷售總和
- 按city分組計算銷售和。
- 按item分組計算銷售和。
2.2 數(shù)據(jù)立方體可以被看成是方格體
- 最底層的方體是基本方體
- 最上層方體(頂點方體)只包含一個元
- 那麼一個具有L層的n維立方體有多少個方體?
- Li是維i(除去虛擬的頂層all,因為概化到all等價于去掉一個維)的層次數(shù)。
2.3 數(shù)據(jù)立方體的物化
-
方體的物化有三種選擇
- 不預先計算任何“非基本”方體(不物化)
- 預先計算所有方體(全物化)
- 在整個可能的方體集中有選擇地物化一個適當?shù)淖蛹?#xff08;部分物化)
特點 - 第一種選擇導致在運行時計算昂貴的多維聚集,可能很慢。
- 第二種選擇可能需要海量存儲空間,存放所有預先計算的方體。
- 第三種選擇在存儲空間和響應時間二者之間提供了很好的折衷。
立方體在DMQL中的定義和計算
3 索引OLAP數(shù)據(jù):位圖索引
3.1 位圖索引
- 在特定欄上的索引
- 這一欄上的每一個值都對應于一個位向量
- 位向量的長度:基本表中特定欄屬性值的個數(shù)。
- 如果基本表中的給定行的屬性值為v,則在位圖索引的對應行,表示該值的位為1,該行的其它位均為0
- 對于基數(shù)較大的域不大適合
3.2 連接索引
- 如果兩個關(guān)系R(RID ,A)和S(B,SID )在屬性A和B上連接,則連接索引記錄包含JI(RID,SID)對,其中RID和SID分別來自R和S的記錄標識符。
- 傳統(tǒng)的索引將給定列上的值映射到具有該值的列表上,而連接索引登記來自兩個關(guān)系數(shù)據(jù)庫的可連接行
- 在數(shù)據(jù)倉庫中,連接索引把星形模式的維值連接到事實表中的行,事實表和它對應維表的連接屬性是事實表的外關(guān)鍵字和維表的主關(guān)鍵字
- 連接索引可以跨越多維,形成復合連接索引
4 OLAP的有效處理
4.1 典型的數(shù)據(jù)倉庫設計過程
-
物化方體和構(gòu)造OLAP索引結(jié)構(gòu),目的是加快數(shù)據(jù)立方體中的查詢處理。
-
給定物化的視圖,查詢處理應按如下步驟進行
-
確定哪些操作應當在可利用的方體上執(zhí)行
- 將查詢中的下鉆,上卷等轉(zhuǎn)換成對應的SQL 和/或OLAP操作, 例如, 數(shù)據(jù)立方體上的切片和切塊可能對應于物化方體上的選擇和/或投影操作
-
確定相關(guān)操作應當使用那些物化的方體
- 涉及找出可能用于回答查詢的所有物化方體,使用方體之間的“支配”聯(lián)系知識,剪去上集合,估計使用剩余物化方體的代價,并選擇代價最低的方體。
5 OLAP的服務結(jié)構(gòu)
從邏輯上講,OLAP服務器為商戶用戶體哦那個倉庫火數(shù)據(jù)集市的多維數(shù)據(jù),而不必關(guān)心數(shù)據(jù)如何存放和存放在何處。然后OLAP服務器的物理結(jié)構(gòu)和實現(xiàn)必須考慮數(shù)據(jù)存放問題。用于OLAP處理的數(shù)據(jù)倉庫服務器的實現(xiàn)包括
- 關(guān)系OLAP(ROLAP)服務器
- 多維OLAP(MOLAP)服務器
- 混合OLAP(HOLAP)服務器
- 特殊的SQL服務器
5.1 OLAP的服務結(jié)構(gòu)的比較
- 關(guān)系OLAP(ROLAP)服務器:這是一種中間服務器,介于關(guān)系的后端服務器和客戶前端中間。
- 多維OLAP(MOLAP)服務器:這些服務器通過基于數(shù)組的多維存儲引擎,支持數(shù)據(jù)的多維視圖。
- 混合OLAP方法結(jié)合ROLAP和MOLAP技術(shù),得益于ROLAP較大的可伸縮性和MOLAP的快速計算。
- 特殊的SQL服務器:為了滿足關(guān)系數(shù)據(jù)庫中日益增長的哦OLAP處理的需要,一些數(shù)據(jù)庫系統(tǒng)提供商實現(xiàn)了特殊的SQ服務器,提供高級查詢語言和查詢處理,在只讀環(huán)境下,在星形和雪花形模式上支持SQL查詢。
5.2 AP的快速計算
- 特殊的SQL服務器:為了滿足關(guān)系數(shù)據(jù)庫中日益增長的哦OLAP處理的需要,一些數(shù)據(jù)庫系統(tǒng)提供商實現(xiàn)了特殊的SQ服務器,提供高級查詢語言和查詢處理,在只讀環(huán)境下,在星形和雪花形模式上支持SQL查詢。
總結(jié)
以上是生活随笔為你收集整理的三十六、数据仓库的实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 三十五、数据仓库的设计和应用
- 下一篇: 三十七、数据泛化(面向属性的归纳)