索引和性能
主要内容包括:
索引使用标准(Index Usage Criteria)
索引的选择(Index Selection)
索引统计(Index Statistics)
索引设计指南(Index Design Guidelines)
索引视图(Indexed Views)
索引计算列(Indexed on Computed Columns)
索引优化向导(The Index Tuning Wizard)
选择索引:查询 & 修改性能(Choosing Indexes: Query Versus update Performance)
有众多原因导致SQL Server的性能比理想情况差些,但大多数情况下,是由于差的索引设计,或者缺乏合适的索引而造成的。所以在你的应用中,通过设计正确的索引来支持 SQL Server 的查询和操作,以此就可获得性能的大幅度提高。这种方法的
最大优点就是你的应用代码不需要重写(rewirte)就可以迅速从索引中获益。
你需要近距离仔细地检查表中定义的索引,保证索引的合适性,这样当优化器解析查询时,可避免进行表扫描(table scan)和减少I/O代价(I/O Cost)。同时,你也需要理解当SQL Server决定使用一个索引的标准。
要时刻牢记,尽管表上的更多的索引可以帮助提高查询和报表的响应时间,但是太多的索引也能损害插入、修改和删除的性能,这一点也很重要。在有些时候,你的其它索引设计决定,比如在哪一列上创建聚集索引,可能会受到数据如何插入和修改和可能有怎样的locking implications的影响。
显然,
正确的索引设计是实现SQL Server对你的应用性能优化的关键问题。在第33章,“SQL Server 内幕”中,你了解了索引的结构和SQL Server如何维护索引。在本章中,主要讲述如何评价索引和SQL Server如何使用索引来提高查询的响应时间。本章运用这些技术,探索影响索引设计的问题和因素。