拆書稿-數據倉庫結構設計與實施
本篇文章內容目錄
第一部分:數據倉庫總體結構(原書第二章)
1 金字塔結構
2 元數據與模型
3 映像
4 數據倉庫三要素
5 多維總計方陣
6 方陣和數據集市的區別
第二部分:數據倉庫設計與應用開發(原書第五章)
數據倉庫層次結構
數據倉庫概念設計
數據倉庫邏輯設計
數據倉庫物理設計
正文開始
第一部分:數據倉庫總體結構(原書第二章)
1 金字塔結構
金字塔從底層向上,體現出強大的收斂與聚合功能,層面越高越能高度地概括更豐富、更有意義的信息;層面越低,數據體量越大,細節程度越高,信息越具體。每個層面相互依託又互相關聯。
數據倉庫的金字塔結構和層次1
數據倉庫的金字塔結構和層次2
數據倉庫結構生態圖
其中上圖中有一個概念叫:過渡區,它爲什麼存在?並且有什麼存在的價值?
① 爲什麼存在?
- 提前可以做數據預處理
來自數據源的數據在到達數據倉庫之前,需要經過一些中間處理過程,而ETL常常是批量執行,是一些通用任務,無法完成定製化個性統計需求。而在數據源到數據倉庫中間建立過渡區,可以針對特定數據進行預處理。例如:過濾空值、過濾多餘字段、進行數據類型轉換等等。
② 存在的價值?
- 第一、數據源和數據倉庫進行隔離
- 第二、過渡區可作爲數據接收切面,接納不同數據源,數據倉庫只需要從過度區獲取數據。架構清晰
- 第三、過度區可以在數據允許的條件下提供數據支持,減少數據源數據提取的壓力。
2 元數據與模型
分類:元數據主要有兩種類型的模型
- 數據模型
- 應用模型
元數據定義: 說明數據的數據。像數據庫中的數據字典,或者數據表與表之間的關係。
作用:用於描述從操作型系統到分析型系統的映射,描述數據源、數據更新、總計數據的算法和數據提取的頻率。
模型的建立流程: 概念模型 、邏輯模型、物理模型
3 映像
映像是一系列結構化處理過程,能夠引導數據從一個或者多個源系統到達目標系統。在這一過程當中存在一系列必要的轉換處理。
映像包括:
- 源定義
- 目標定義
- 轉換定義
在轉換過程中就可以添加數據預處理,過濾多餘數據項,也可以完成數據轉換映射。
個人理解:在此過程中,通過此元數據管理,可以做一部分的規範化處理。例如: 源表和目標表的格式規範化(統一格式:數據庫模式名_表名),完成轉換後輸出的數據集命名規範,轉換過程中數據集的分隔符規範等等。
數據映像從數據源到目標
4 數據倉庫三要素
5 多維總計方陣
是從數據倉庫的事實表和有關維表中通過彙總、運算處理產生出來的綜合數據,從結構和形式上更接近於最終用戶對管理決策支持分析的要求,是爲用戶提供的具有多維數據查詢和分析能力的視圖。
創建方陣是將綜合信息帶給用戶的必經之路,通過預先費時的計算和鏈接操作而生成的完好方陣系列,而不是在聯機執行時間臨時處理。方陣的存在大大減少了訪問時間和複雜性,也降低了成本。
方陣的類型
- 多維聯機分析處理方陣
- 虛擬方陣
- 奠基石式方陣–基礎方陣
- 嵌入式方陣
- 稀疏方陣
6 方陣和數據集市的區別
數據集市
- 數據集市是按照需求定製化建立的,代表的數據價值只侷限於需求的邊界範圍內。
- 針對性較強,可能在市場,營銷,賬務等業務線的數據集市都是不同的。不可重用,沒有靈活性。並且容易產生數據孤島,數據價值表現的很侷限。
- 數據集市的種類統計粒度可能不同,不利於數據分析
從上面定義可知,數據集市的統計邊界更小一點,可能只是針對某個業務線,某個部門。而方陣是基於整個數據倉庫,通過整個數據倉庫的相關表來進行統計彙總。
第二部分:數據倉庫設計與應用開發(原書第五章)
數據倉庫層次結構
數據倉庫概念設計
概念模型是建立模型的初始階段,主要描述與業務有關的重要實體以及相互之間的關係。
該階段主要是確定系統建模的邊界和範圍。和行業經驗和業務流程息息相關,在建模範圍內,確定實體有哪些,梳理實體間的關係
具體方法可以參照5W1H: who、what、when、where、why、how
結果:實體關係圖(不需要添加實體的屬性)
數據倉庫邏輯設計
梳理業務規則,對概念模型做進一步細化
確定實體的詳細屬性,實體間關係以及是否存在關係約束
數據倉庫物理設計
從性能、訪問、開發等多個方面考慮,做系統的實現。
該階段完成:
- 類型長度的定義
- 字段的其他詳細定義: 飛空,默認值
- 約束的定義: 主鍵,外鍵