海量数据的查询优化(二)


(二)何时使用聚集索引或非聚集索引 

下面的表总结了何时使用聚集索引或非聚集索引(很重要)。
动作描述 
使用聚集索引 
使用非聚集索引 

列经常被分组排序 
应 
应 

返回某范围内的数据 
应 
不应 

一个或极少不同值 
不应 
不应 

小数目的不同值 
应 
不应 

大数目的不同值 
不应 
应 

频繁更新的列 
不应 
应 

外键列 
应 
应 

主键列 
应 
应 

频繁修改索引列 
不应 

事实上,我们可以通过前面聚集索引和非聚集索引的定义的例子来理解上表。如:返回某范围内的数据一项。比如您的某个表有一个时间列,恰好您把聚合索引建立在了该列,这时您查询2004年1月1日至2004年10月1日之间的全部数据时,这个速度就将是很快的,因为您的这本字典正文是按日期进行排序的,聚类索引只需要找到要检索的所有数据中的开头和结尾数据即可;而不像非聚集索引,必须先查到目录中查到每一项数据对应的页码,然后再根据页码查到具体内容。 




评论: 0 | 引用: 0 | 查看次数: 108
发表评论
昵 称:
密 码: 游客发言不需要密码.
验证码:
内 容:
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 100 字 | UBB代码 开启 | [img]标签 开启