SQL笔记(4)_第四章 规格化过程

这篇博客探讨了数据库规格化的三个主要阶段——第一、第二和第三规格形式,旨在减少冗余数据,增强数据一致性和引用完整性。规格化虽然提高了数据库的组织性和安全性,但也可能导致性能下降。去规格化作为应对策略,通过接受一定范围内的数据冗余来提升性能,但需谨慎操作以平衡性能和冗余。
第四章 规格化过程
1.规格化数据库
规格化就是去除数据库里冗余数据的过程,在设计和重新设计数据库时使用。它是一组减少数据冗余来优化数据库的指导方针,具体的方针被称为规格形式。对于初学者来说过于复杂。
2.原始数据库,数据库的逻辑设计(逻辑建模)(应该减少甚至完全消除数据重复)
3.规格形式:
规格形式是衡量数据库被规格化级别(或深度)的一种方式。
数据库的规格化级别是由规格形式确定的。

4.最常见的3中规格形式:

(1)第一规格形式

第一规格形式的目标是把原始数据分解到表中。在所有表都设计完成之后,给大多数表或全部表设置一个主键。

概念:主键也可以由表里的多个列组成。自然主键:数据库自然产生的具有逻辑意义的数据,例如书名和ISBN编号。

(2)第二规格形式

第二规格形式的目标是提取对主键仅有部分依赖的数据把它们保存到另一个表里。

第二规格形式是以第一规格形式为基础,把两个表进一步划分为更为明确的单元。

(3)第三规格形式

第三规格形式的目标是删除表里不依赖于主键的数据。

5.命名规范

6.规格化的优点

  • 更好的数据库整体组织性
  • 减少冗余数据
  • 数据库内部的数据一致性
  • 更灵活的数据库设计
  • 更好的处理数据库安全
  • 加强引用整体性的概念

引用的完整性一般是通过主键和外键来控制的。

规格化过程把数据从逻辑上分解为由主键引用的子集,从而有助于加强和坚持这种约束。

7.规格化的缺点:

降低数据库性能

8.去规格化数据库

去规格化是修改规格化数据库的表的构成,在可控制的数据冗余范围内提高数据库的性能。

尝试提高性能是去规格化数据库的唯一原因。去规格化的数据库与没有进行规格化的数据库不一样,去规格化是在数据库规格化基础上进行一些调整,因为规格化的数据库需要频繁的进行表的结合而降低了性能。去规格化会把一些独立的表结合成在一起,或是创建重复的数据,从而减少在数据检索时需要结合的表的数量,进而减少所需的I/O和CPU时间。

Q:数据库问题需要进行一定程度的规格化,但到什么程度才不至于严重影响性能呢?


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值