1. 程式人生 > >資料倉庫的幾種 資料模型

資料倉庫的幾種 資料模型

資料倉庫中常見的模型有:正規化建模,雪花模型,星型建模,事實星座模型.

星型模型

星型模型是資料集市維度建模中推薦的建模方法。星型模型是以事實表為中心,所有的維度表直接連線在事實表上,像星星一樣。星型模型的特點是資料組織直觀,執行效率高。因為在資料集市的建設過程中,資料經過了預處理,比如按照維度進行了彙總,排序等等,資料量減少,執行的效率就比較高。

image

雪花模型

雪花模型也是維度建模中的一種選擇。雪花模型的維度表可以擁有其他維度表的,雖然這種模型相比星型模型更規範一些,但是由於這種模型不太容易理解,維護成本比較高,而且效能方面需要關聯多層維表,效能也比星型模型要低。所以一般不是很常用。

image

正規化建模

第三正規化建模是在資料庫建模中使用的建模方法,特點是體系化,擴充套件性好,避免冗餘,避免更新異常。所以,在資料倉庫的EDW層建模中,我們也提倡使用第三正規化建模。但是資料倉庫的整合和反映歷史變化的特徵意味著資料量非常之大,表和表之間的關聯效率比較低,所以有些時候完全規範的正規化建模並不是最好的選擇,通常我們會選擇非規範化處理,增加一些冗餘的欄位來避免表之間關聯的次數,這樣會節約大量的時間。

雪花模型是介於星型模型和正規化建模之間的。個人理解,正規化建模和雪花模型的區別在於雪花模型在維度上也是有冗餘的。例如雪花模型例圖的地域維度不符合第三正規化,因為地域維度中存在傳遞依賴,城市-省級-國家-地域。

星座模型

星座模型是星型模型延伸而來,星型模型是基於一張事實表的,而星座模型是基於多張事實表的,而且共享維度資訊。 通過構建一致性維度,來建設星座模型,也是很好的選擇。比如同一主題的細節表和彙總表共享維度,不同主題的事實表,可以通過在維度上互相補充來生成可以共享的維度。

image

其實網上這種資料已經很多啦,今天特意在網上找到一些,供小夥伴們參考,但願能幫助得到需要幫助的小夥伴們,路雖遠,但心不變 。為未來的自己創造一個更好的今天吧