微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sql – 如何提高集群索引搜索的性能

我正在努力提高运行速度很慢的查询性能.经过实际执行计划;我发现集群索引寻求占82%.有什么办法可以提高Index Index的表现吗?以下是执行计划以及索引和表所使用的Index Seek问题的图像.

alt text http://img340.imageshack.us/img340/1346/seek.png

指数:

/****** Object:  Index [IX_Stu]    Script Date: 12/28/2009 11:11:43 ******/
CREATE CLUSTERED INDEX [IX_Stu] ON [dbo].[stu] 
(
 [StuKey] ASC
)WITH (PAD_INDEX  = OFF,SORT_IN_TEMPDB = OFF,DROP_EXISTING = OFF,IGnorE_DUP_KEY = OFF,ONLINE = OFF) ON [PRIMARY]

表(为简洁起见,省略了一些列):

CREATE TABLE [dbo].[stu](
 [StuCertKey] [int] IDENTITY(1,1) NOT NULL,[StuKey] [int] NULL
 CONSTRAINT [PK_Stu] PRIMARY KEY NONCLUSTERED 
(
 [StuCertKey] ASC
)WITH (PAD_INDEX  = OFF,FILLFACTOR = 80) ON [PRIMARY]
) ON [PRIMARY]

解决方法

在这里推广,但…

聚集索引搜索在很大程度上是最佳情况.我可以想到改善表现的唯一方法是:

>如果可能,更新查询以返回较少的行/列;
>碎片整理或重建索引;
>在多个磁盘/服务器之间划分索引.

如果它只返回138行,这是慢的…也许被其他进程阻止?您是否在隔离测试,还是在线同时进行其他用户/进程?或者也许是硬件问题,比如磁盘故障.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐