日本欧美中文字幕|免费久久一级欧美大黄|欧美日韩成人在线观看|亚洲欧美日韩国产一区精品|亚洲精品美女777777|国产嫩草AV一区二区三区|色婷婷色综合一区二区在线观看|爆乳护士一区二区三区在线播放

全國- 「切換城市」 培訓家旗下培訓平臺
手機版
網(wǎng)站導航

數(shù)據(jù)庫中的范式和反范式區(qū)別詳解

2020.03.20

發(fā)布者:網(wǎng)上發(fā)布

??范式是關系數(shù)據(jù)庫理論的基礎,也是我們在設計數(shù)據(jù)庫結構過程中所要遵循的規(guī)則和指導方法。數(shù)據(jù)庫的設計范式是數(shù)據(jù)庫設計所需要滿足的規(guī)范。只有理解數(shù)據(jù)庫的設計范式,才能設計出率、優(yōu)雅的數(shù)據(jù)庫,否則可能會設計出錯誤的數(shù)據(jù)庫。
??反范式,不滿足范式的模型,就是反范式模型。反范式跟范式所要求的正好相反,在反范式的設計模式,我們可以允許適當?shù)臄?shù)據(jù)的冗余,用這個冗余去取操作數(shù)據(jù)時間的縮短。本質(zhì)上就是用空間來換取時間,把數(shù)據(jù)冗余在多個表中,當查詢時可以減少或者是避免表之間的關聯(lián)。RDBMS模型設計過程中,常常使用范式約束我們的模型,但在NOSQL模型中則大量采用反范式。數(shù)據(jù)庫中范式和反范式的的主要區(qū)別在于:
??在范式化的數(shù)據(jù)庫中,每個事實數(shù)據(jù)會出現(xiàn)并且只出現(xiàn)一次;相反,在反范式化的數(shù)據(jù)庫中,信息是冗余的,可能會存儲在多個地方。
??范式化的優(yōu)點:
??1)范式化的更新操作通常比反范式化要快。
??2)當數(shù)據(jù)較好地范式化時,就只有很少或者沒有重復數(shù)據(jù),所以只需要修改更少的數(shù)據(jù)。
??3)范式化的表通常更小,可以更好地放在內(nèi)存里,所以執(zhí)行操作會更快。
??4)很少有多余的數(shù)據(jù)意味著檢索列表數(shù)據(jù)時更少需要DISTINCT或者GROUP BY語句。
??范式化設計的schema的缺點是通常需要關聯(lián),較多的關聯(lián)可能使得一些索引策略無效,例如,范式化可能將列存放在不同的表中,而這些列如果在一個表中本可以屬于同一個索引。
??反范式的schema因為所有數(shù)據(jù)都在一張表中,可以很好地避免關聯(lián)。缺點是update操作的代價高,需要更新多個表,至于這會不會是一個問題,需要考慮更新的頻率以及更新的時長,并和執(zhí)行select查詢的頻率進行比較。從另一個父表冗余一些數(shù)據(jù)到子表的理由通常是排序的需要。
??緩存衍生值也是有用的。如果需要顯示每個用戶發(fā)了多少消息,可以每次執(zhí)行一個昂貴的子查詢來計算并顯示它;也可以在user表中建一個num_messages列,每當用戶發(fā)新消息時更新這個值。

上一篇:學了健康管理師工作好不好找 下一篇:服裝設計手繪學習課程有哪些

推薦機構

熱門課程

本站展示的所有信息內(nèi)容系由機構或個人用戶發(fā)布,可能存在發(fā)布者所發(fā)布的信息,并未獲得品牌所有人有效授權。本平臺會加強審核,但無法完全排除差錯或疏漏。鄭重聲明:本平臺僅為免費注冊用戶提供免費的信息發(fā)布渠道,但不對其發(fā)布信息的真實性、準確性和合法性負責,對此也不承擔任何法律責任。對于從本網(wǎng)站或本網(wǎng)站的任何有關服務所獲得的資訊、內(nèi)容或廣告,您接受或信賴任何信息所產(chǎn)生之風險應自行承擔,本網(wǎng)對任何使用或提供本網(wǎng)站信息的商業(yè)活動及其風險不承擔任何責任。,如果侵犯,請及時通知我們,發(fā)送郵件至15610150293@126.com本網(wǎng)站將在第一時間及時刪除。