12 优化物理设计

在逻辑设计向物理设计转化的过程中, 必须做出四个决定

1. 对于每个表, 不仅需要决定是否使用堆表, 聚簇, 索引组织表, 也需要决定是否对表进行分区

2. 需要考虑是否采用冗余的访问结构, 比如索引或物化视图

3. 需要决定如何实现数据约束

4. 必须决定如何将数据保存在数据块中, 包括字段的顺序, 何种数据类型, 每个数据块可以保存多少条记录

最佳字段顺序

将访问频繁的字段放在前面

image

存储在数据块中每一行记录的格式(H=行头, Ln=字段长度, Dn=字段数据), 数据库引擎不知道一条记录中每个字段的偏移量, 例如, 如果需要定位字段3, 必须从字段1开始, 根据字段1的长度定位字段2, 根据字段2的长度, 定位字段3, 依此类推.

例如: 我们有一个250列的表, 当我们执行 select count(column N) 时, count第一列, count第2列, count第250列, 查询所需要的响应时间为:

image

最优的数据类型

原文地址:https://www.cnblogs.com/moveofgod/p/4252568.html