首页 > 代码库 > SQL Server 索引知识-概念

SQL Server 索引知识-概念

概念篇

索引概念(index concept)

一种表或视图中相关的B-tree的数据结构.索引键列由一列或多列组成.可拥有包含性列(sql2005).用于提升Sql Server 查找相关数据行效率.

 

聚集索引(Clustered index)

表或索引视图数据行按照聚集索引键排序.每个表只能有一个聚集索引(聚集表中数据只能按一种方式组织).表中有聚集索引则表称为聚集索引表,无聚集索引则称为堆表.

 

非聚集索引(Nonclustered index)

独立于数据行之外的一种数据结构.用于快速检索数据.每个索引键值包含一个指向包含其键值的数据行的”指针”.聚集表中”指针”为聚集索引键.堆表中”指针”为行位置指针.

 

索引包含性列(Index with included columns)

非聚集索引中包含除索引键之外的数据列.这些数据列不进行排序维护.用户覆盖查询.

 

聚集表(Clustered table)

表中含有聚集索引的表,数据有序组织

 

堆表(heap table)

表中不包含聚集索引,数据无序堆放.

 

索引视图(index View)

视图被组织起来,包含索引.其中第一个所建索引必须是聚集唯一索引,之后可建非聚集索引.用于提升复杂查询速度,简化查询应用逻辑.

 

全文索引(Full-text Index)

一种特殊的基于记号的功能索引.Sql Server中由Full-Text引擎创建维护.Sql08后有数据库引擎集成,取代了之前版本的文件系统.08后全文目录为虚拟对象,可以不属于任何文件组.

 

空间索引(Spatial index)

08引入的一种支持特殊数据类型(spatial data 如地理数据)的索引.

 

过滤索引(Filtered index)

一种可以加谓词条件的非聚集索引.用于优化特殊查询.

 

XML索引(XML索引)

一种针对XML数据类型的BLOB对象索引.