| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1384 人关注过本帖
标题:大家请看--聚集索引与非聚集索引的解释
取消只看楼主 加入收藏
chali
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2005-1-11
收藏
 问题点数:0 回复次数:0 
大家请看--聚集索引与非聚集索引的解释
 聚集索引
  每个表中只能有一个聚 在 SQL Server 文档中通常 树的下半部分是与表相关的 集索引。物理原因很简单。尽管 称为非叶级)与非聚集索引 B 实际的 8 KB 数据页。这里暗含 聚集索引 B 树结构的上半部分( 树的结构相似,但是聚集索引 B 着两种性能:
  通过聚集索引基于关键字搜索来检索 不连续改变)就可以获得相关的数据页, SQL 数据时不需要指针跳动(类似于硬盘上位置的 因为叶级聚集索引已经是相关的数据页。
  聚集索引的叶级按照组 据页,这意味着整个表的行 据聚集索引的值从这个表中 使用的是连续磁盘 I/O(除 PAD_INDEX 的重要性”中讨 列来提取表中的聚集索引很 成聚集索引的列排序。因为聚集 数据在物理上按照聚集索引确定 提取大量行时,这种排列提供了 非该表上发生了页拆分,我们将 论这个问题)。这就是根据执行 重要的原因。 索引的叶级包含表的实际 8 KB 数 的顺序排列在磁盘驱动器上。当根 一种潜在的 I/O 性能优势,因为 在后面的“FILLFACTOR 和 范围扫描检索大量的行时所使用的
  非聚集索引
  如果要根据键值从大型 用。以前已提到过,非聚集 包含组成该索引的列中的所 个索引 B 树,直到在索引 分,则会发生指针跳动。该 及它相应的索引 B 树很大 个 8 KB 数据页,则对 I/O 。如果某个 SQL 查询涉及 次指针跳动。这些指针跳动 SQL 查询,而聚集索引更适 SQL Server 表提取具有良好选 索引是由 8 KB 索引页组成的 B 有数据。当用非聚集索引检索表 叶级找到一个与键值匹配的值。 指针跳动可能需要在磁盘上进行 ,甚至可能要求从另一个磁盘中 性能的影响比较小,因为只须 到要用非聚集索引进行搜索,那 可以解释为什么非聚集索引更适 合于要求返回许多行的查询。 择性的少数几行,非聚集索引最有 树。索引页的 B 树的底部或叶级 中与键值匹配的信息时,将搜索整 如果需要的列不是索引组成的一部 一个不连续 I/O 操作。如果表以 读取数据。如果多个指针指向同一 将该数据页读入数据高速缓存一次 么对于所返回的每一行,均需要一 合于只返回表中一行或几行的
搜索更多相关主题的帖子: 索引 SQL 物理 FONT content 
2005-03-24 22:10
快速回复:大家请看--聚集索引与非聚集索引的解释
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016105 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved