sql server中的索引,内部工作和索引结构

时间:2011-03-23 07:37:24

标签: sql-server-2005 indexing internal clustered-index

当我们在列上创建聚簇索引 CIX_FirstNames 时,比如 FirstNames ,那么SQL Server内部实际发生了什么?

我已经读过聚集索引创建数据的副本。

所以,sql server是否会创建一个新的索引表 IndexTable ,并将表中的所有FirstNames复制到 IndexTable 中,当搜索到firstname时,从索引表中显示它?

这是聚集索引的实际工作吗?

2 个答案:

答案 0 :(得分:2)

这是一个太大的主题,无法在这里快速回答 - 你需要自己解决:

Microsoft SQL Server 2008 Internals

enter image description here

非常详细地介绍了这一点。

但只是简单地说: NO!创建聚簇索引 NOT 重复数据!你是从哪里得到的?

聚簇索引的作用是对数据进行重新排序(根据键),聚簇索引的叶级节点是数据页 - 但这些只存在一次。

更多感兴趣的资源:

答案 1 :(得分:0)

索引视图将重复数据。

  

“这样做的缺点是索引视图是完整的副本   来自基础表格的数据[...]“

http://strangenut.com/blogs/dacrowlah/archive/2008/11/26/creating-an-indexed-view-in-sql-server-2005-and-2008.aspx