数据库设计原则

 

高效数据库的设计原则

  1. 读写分离原则。这里的读写分离是指,读多写少的字段与写多读少的字段分开存放于不同的表。按照磁盘的工作原理,磁盘是以扇区为单位存放数据的,并且有写缓冲、排队、延迟写入的特点。数据库是以记录为单位的,每次访问,总是将整行记录读入缓冲区,再依命令所需的字段从中筛选数据,组成返回的记录行。读写分离原则能显著改善磁盘和记录的缓存性能。
  2. 高频与低频字段分离原则。高频字段是指访问较频繁的字段,低频字段是指访问频度较低的字段。不管是高频字段还是低频字段,数据库总是读取整行记录,然后筛选。命令中不访问到的字段,同样要先读入内存。高低频分开存放,能减少记录行读入的字节数(写入也一样),减少不必要的读写。如果部署分布式数据库,按这个原则作垂直划分,其效果比单机数据库的效果更明显。
  3. 为最常用的字段建立索引。当命令中涉及的字段都在某个索引中时,命令执行过程中不需要访问表数据,仅从索引中获得所需的字段值,组成记录返回。
  4. 为经常搜索的字段建立索引。当要搜索的字段都存在某个索引中时,索引过程只需在索引中作匹配运算,仅当匹配到某个记录,并且要返回的字段不在索引中时,才从表数据中取回这行记录。
  5. 主键越短越好,并且最好是整型。索引是以区为单位存放的,类似于磁盘的扇区。索引树节点也是以区为单位的。索引的大小,与索引项的大小成正比。索引项的字节数越少越好。索引项总是定长的,如果索引字段包含可变长字段(varchar,nvarchar之类的),那么索引该字段的字节数是这个字段的最大可能字节数。另一方面,在IA-32架构的CPU中,读写一个32位(4字节)整型值的速度是读取一个字节的2倍!如果读取一个100字节的字符串,耗时是读一个32位整型的200倍。可见,主键的选型,对检索记录的性能有非常大的影响。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值