mysql数据库业务逻辑_Mysql业务设计(逻辑设计)
邏輯設(shè)計
數(shù)據(jù)庫設(shè)計三大范式
數(shù)據(jù)庫設(shè)計第一大范式
數(shù)據(jù)庫表中所有的字段都只具有單一屬性
單一屬性的列是由基本數(shù)據(jù)類型所構(gòu)成
設(shè)計出來的表都是簡單的二維表
數(shù)據(jù)庫設(shè)計的第二大范式
要求表中只有一個業(yè)務(wù)主鍵,也就是說符合第二范式的表不能存在非主鍵列,只對部分主鍵的依賴關(guān)系
數(shù)據(jù)庫設(shè)計的第三大范式
指每一個非非主屬性既不部分依賴于也不傳遞依賴于業(yè)務(wù)主鍵,也就是在第二范式的基礎(chǔ)上相處了非主鍵對主鍵的傳遞依賴
反范式化設(shè)計
為啥要有這個東西呢,就是因為如果過分的依賴于三大范式,設(shè)計出來的表雖然很符合規(guī)范,但是SQL的查詢性能將會很差,所以才有了反范式設(shè)計
什么叫反范式化設(shè)計:
反范式化是針對范式化而言的,在前面介紹的三大范式
所謂的反范式化就是為了性能和讀取效率的考慮而適當(dāng)?shù)膶?shù)據(jù)庫設(shè)計范式的要求進行違反
允許存在少量冗余,換句話來說反范式化就是用空間換時間
邏輯設(shè)計總結(jié)
不能完全按照范式的要求進行設(shè)計
考慮以后如何使用表
范式化設(shè)計優(yōu)缺點
優(yōu)點:
可以盡量的減少數(shù)據(jù)冗余
范式化的更新操作比反范式化更快
范式化的表通常比反范式化的表要小
缺點:
對于查詢需要多個表進行關(guān)聯(lián)
更難進行索引優(yōu)化
反范式化設(shè)計的優(yōu)缺點:
優(yōu)點:
可以減少表的關(guān)聯(lián)
可以更好的進行索引優(yōu)化
缺點:
存在數(shù)據(jù)冗余及數(shù)據(jù)維護異常
對數(shù)據(jù)修改需要更多的成本
作者:彼岸舞
時間:2020\07\08
內(nèi)容關(guān)于:Mysql
本文來源于網(wǎng)絡(luò),只做技術(shù)分享,一概不負(fù)任何責(zé)任
總結(jié)
以上是生活随笔為你收集整理的mysql数据库业务逻辑_Mysql业务设计(逻辑设计)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机算法在生物信息学中的应用,计算机算
- 下一篇: linux安装mysql后怎么进去_li