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