《維度模型系列》-1初識維度模型

更多技術文章請關注公衆號:


前言

數據模型就是數據的組織和存儲方法,它強調從業務,數據存取,和使用角度合理的存儲數據。

模型設計是數據倉庫的必備技能和主要工作之一。模型設計的好壞直接影響數倉整體的性能,存儲成本,使用效率,數據質量等等。

數倉典型的模型方法論有以下幾種:ER模型,維度模型,Data Vault模型,Anchor模型,目前互聯網行業應用最廣泛的應屬於維度模型。

本系列文章對維度模型理論做完整的介紹,通過實例讓大家對維度建模有更加深入的理解。本人經驗有限,文章中有理解錯誤或不同觀點,歡迎指正。

 

什麼是維度建模

維度建模是一種將數據結構化的邏輯設計方法。首先介紹兩個最重要的概念:事實,維度。

維度建模將業務過程分爲度量和上下文。度量是由業務過程和支持它們的業務源系統獲取的,常常以數值形式體現,我們稱它們爲“事實”。

事實由大量的文本形式的上下文包圍着,這些文本形式的上下文是伴隨着事實產生而確定的。這些上下文被直觀的分割成多個獨立的模塊我們將其稱作“維”。維度描述了事實的相關信息,比如who,what,when,where,why等等。

舉個栗子:

小明在淘寶上下單100元買了兩箱牛奶,100元和2箱就是事實,而小明,牛奶,時間,配送地址等等這些信息就是維

如下圖就是按照維度建模方式來組織的數據結構,看上去像個星狀結構,也經常被稱作星型模型。中間藍色的就是事實表有若干維度鍵和度量值組成,黃色就是維度表,維度表由維度鍵和若干屬性組成(如用戶維度表可以包含姓名,性別,年齡,住址,學歷等等信息)

 

維度建模的好處

  • 易於理解使用

相對於業務系統的規範化(3NF)模型,維度建模更易於業務用戶理解,因爲相同類別的信息已經放到對應的維度表中,對於使用分析來說意義都很明確。業務分析人員很容易就能找出分析操作所需的信息

  • 查詢性能

維度建模的反規範化維度層次結構,減少了查詢的關聯操作,而關聯查詢是非常耗時的查詢操作。

  • 一致性

維度建模強調維度一致性和事實一致性,數據倉庫總線架構要求所有事實共用一套維度表,這樣保證了數據一致性

  • 快速迭代

基於一致性維度的總線架構,其實施過程可以按照不同業務過程進行拆分,快速滿足業務需求

 

未來內容

前面對維度建模進行了簡單介紹,其中很多技術細節和專業數據沒有展開細講,只是讓大家對維度建模有一個初步的認識。未來文章會對維度建模做更加詳細的介紹,包括數據倉庫總線架構概念,事實表和維度表技術細節的討論,以及維度設計過程詳解

 

更多技術文章請關注公衆號:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章