维度建模和ER模型的对比
從業(yè)務(wù)角度出發(fā)來(lái)考慮
ER模型是用實(shí)體加關(guān)系描述的數(shù)據(jù)模型描述企業(yè)業(yè)務(wù)架構(gòu),在范式理論上符合3NF,是以業(yè)務(wù)功能為出發(fā)構(gòu)建數(shù)據(jù)模型,而不是針對(duì)某個(gè)具體業(yè)務(wù)流程的,面向功能性模塊開發(fā)。
維度建模以分析決策的需求為出發(fā)點(diǎn)構(gòu)建模型,一般有較好的大規(guī)模復(fù)雜查詢的響應(yīng)性能,更直接面向業(yè)務(wù),典型的代表是我們比較熟知的星形模型,常用就是事實(shí)表關(guān)聯(lián)很多維度表、退化維度形成寬表、根據(jù)某主題下的業(yè)務(wù)過程進(jìn)行建模,往往是維度建模友好度更高,面向分析式模型開發(fā)。
從易用性和交付效率方面來(lái)考慮
ER模型是規(guī)范性好、冗余少、但缺點(diǎn)是需要全面了解企業(yè)業(yè)務(wù)、數(shù)據(jù)和關(guān)系,對(duì)于建模人員要求很高,實(shí)施周期非常長(zhǎng),人力成本昂貴,對(duì)于一個(gè)新人來(lái)說不可能在短時(shí)間上手的,對(duì)于運(yùn)營(yíng)人員來(lái)說,如果他們想要自己進(jìn)行查數(shù)據(jù)的話,難度會(huì)有些高。
維度建模相對(duì)能快速上手,快速交付,運(yùn)營(yíng)人員只需要根據(jù)我們的數(shù)據(jù)字典,查詢自己所屬的業(yè)務(wù)模塊對(duì)應(yīng)的業(yè)務(wù)過程,一個(gè)簡(jiǎn)單的select語(yǔ)句就可以搞定所有事情,但缺點(diǎn)是冗余會(huì)較多,不過在當(dāng)今時(shí)代,存儲(chǔ)存儲(chǔ)可以忽略不計(jì)。
從存儲(chǔ)和計(jì)算層面來(lái)考慮
ER模型是完全遵守3NF,當(dāng)查詢數(shù)據(jù)時(shí),需要進(jìn)行多表關(guān)聯(lián)查詢,這時(shí)候隨著數(shù)據(jù)量幾百億幾千億的情況下,會(huì)大大的降低執(zhí)行效率并且算力越來(lái)越多,最終導(dǎo)致計(jì)算成本都要不斷的累加,在存儲(chǔ)方法由于規(guī)范性好,數(shù)據(jù)冗余比較小。
維度模型是面向業(yè)務(wù)過程,由于所有主題數(shù)據(jù)和業(yè)務(wù)過程數(shù)據(jù)都已經(jīng)提前處理好了,在進(jìn)行查詢數(shù)據(jù)的時(shí)候,相對(duì)ER模型來(lái)講,就不需要那么多的關(guān)聯(lián)查詢,大大提高了執(zhí)行效率和減低算力、人力成本,但是數(shù)據(jù)冗余可能會(huì)較多,但是將多個(gè)源的數(shù)據(jù)以文本的形式存儲(chǔ)在分布式系統(tǒng)中,存儲(chǔ)成本(列式存儲(chǔ))并不需要那么多成本。但是從存儲(chǔ)、計(jì)算、成本、交付、易用性等多方面考慮取平衡值,還是維度模型更實(shí)用。
從應(yīng)用系統(tǒng)出發(fā)來(lái)考慮
ER模型更適應(yīng)于OLTP系統(tǒng),維度模型更適用于OLAP系統(tǒng)。
總結(jié)
以上是生活随笔為你收集整理的维度建模和ER模型的对比的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux复制文件夹排除文件,【linu
- 下一篇: 怎样用好XMind中的鱼骨图