读书频道 > 网站 > 网页设计 > SQL Server性能调优实战
2.4.1 好的性能出自好的设计
15-11-02    下载编辑
收藏    我要投稿   

本文所属图书 > SQL Server性能调优实战

本书是一线DBA技术专家精心之作,积作者多年的经验结晶和最佳实践,也是目前市场上为数不多通过存储原理来讲解性能优化,剖析SQL Server架构,从而帮助读者快速高效调优数据库的图书。书中首先简要介绍了SQL S立即去当当网订购

2.4 数据库结构的设计

2.4.1 好的性能出自好的设计

性能优化贯穿在整个软件生命周期,故而在进行需求分析和设计的时候就应该考虑数据库的性能。

举个例子:假设某电子商务网站需要记录订单的信息,每个订单可能会有若干个商品,同时订单有不同的状态,状态的处理包括了若干个流程。若此时新增一个表,命名为Order_Bad,并将订单及订单中的商品全部都存放在Order_Bad这个表中,那么,当订单数量达到百万级时,订单中的商品可能就会达到千万级了。在这种情况下,若需要查找某些订单的状态,就不得不从这些大量的订单商品数据中去“吃力”地查找,并且由于表结构比较混乱,在为表创建索引的时候,将会有许多不确定因素,这会使得表的维护成本很高。若在进行表设计时使用的是两张主子级关系的表,那么在查找订单信息时,就只需要从这百万级量的数据中去检索数据,从而避免了从千万级表中去检索数据,性能自然而然地也就提升了。所以请牢记“好的性能出自好的设计”,且“优化贯穿着整个软件的生命周期”!

笔者的日常维护工作有很大一部分就是审阅开发人员提交的表结构变更。下面分享一下相应的经验。

1)尽可能地添加数据完整约束,例如非空约束、默认值约束、check约束、唯一约束、外键约束等,这些约束的添加将有助于数据库关系引擎分析执行计划。

2)使用尽可能小的字段类型,特别是大表,尽量小的空间将可以带来更佳的性能。

3)表结构的设计应考虑业务需求带来的操作(查询、更新、删除等)及频率,尽可能地使业务逻辑实现简洁,使用简单的SQL语句,可避免过多的表关联。

点击复制链接 与好友分享!回本站首页
分享到: 更多
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:1.3 功能
下一篇:1.5 小结
相关文章
图文推荐
JavaScript网页动画设
1.9 响应式
1.8 登陆页式
1.7 主题式
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做最好的IT技术学习网站