一对一、一对多和多对多关系性能计算



我已经为我正在进行的当前项目创建了一个数据库设计。我是数据库的新手,所以我阅读了《Mere Morals的数据库设计》一书以寻求帮助,它帮助我创建了我的第一个数据库设计。我的问题是,我如何能够估计所有关系(一对一、一对多和多对多)的表现?谢谢你的帮助!

关系数据库中的任何关系原则上都不存在性能问题。查询数据时会出现性能问题。因此,您需要知道要运行什么类型的查询。一旦知道了这一点(以及受影响表中的数据量),就可以创建有助于查询的索引。

当您发现一个执行不好的查询时,您可以使用现有的工具来分析查询并显示其执行计划。如果幸运的话,一些工具(SQL Server中的SSMS)可以很好地提示哪些索引会有所帮助,但不存在。如果你没有可以做到这一点的工具,你必须研究这个计划,并找出为什么它是读取1000万行表中的每一行,而不仅仅是最后得到的5行。(后一种情况可能是由于用于限制返回行的列上缺少索引,无论是JOIN子句还是WHERE子句,或者两者都有。)

如果一开始就有合理的设计,那么索引就是DB的性能所在。

最新更新