数据库设计原则以及索引原理

2017-12-27  本文已影响0人  VayneP

基本表的完整性

  1. 原子性。基本表中的字段不可再分解
  2. 原始性。基本表记录的是原始数据的记录
  3. 演绎性。由基本表与代码表中的数据能够派生出所有的输出数据
  4. 稳定性。基本的结构是相对稳定的

三个范式

索引的优缺点

优点:

缺点:

应该建立索引的列

不应该建立索引的列

第一,对于那些在查询中很少使用或者参考的列不应该创建索引。这是因为,既然这些列很少使用到,因此有索引或者无索引,并不能提高查询速度。相反,由于增加了索引,反而降低了系统的维护速度和增大了空间需求。
第二,对于那些只有很少数据值的列也不应该增加索引。这是因为,由于这些列的取值很少,例如人事表的性别列,在查询的结果中,结果集的数据行占了表中数据行的很大比例,即需要在表中搜索的数据行的比例很大。增加索引,并不能明显加快检索速度。
第三,对于那些定义为text, image和bit数据类型的列不应该增加索引。这是因为,这些列的数据量要么相当大,要么取值很少。
第四,当修改性能远远大于检索性能时,不应该创建索引。这是因为,修改性能和检索性能是互相矛盾的。当增加索引时,会提高检索性能,但是会降低修改性能。当减少索引时,会提高修改性能,降低检索性能。因此,当修改性能远远大于检索性能时,不应该创建索引。

B树基本性质

B+树

B+树是B-树的变体,也是一种多路搜索树,其定义基本与B-树同,除了:

image.png

非叶子结点命中),其性能也等价于在关键字全集做一次二分查找;

局部性原理和磁盘预读

B-/B+树性能分析

上一篇 下一篇

猜你喜欢

热点阅读