SQL SERVER分区注意事项

1、交换分区是需要索引对齐的,而索引对齐有两种:索引对齐、按存储位置对齐的表

索引对齐:假如你想让数据与索引分开到不同的文件,可以使用两个不同的分区方案,但是使用同一个分区函数,这样就把索引分开了。

存储位置对齐:创建非聚集索引的时候设置[数据空间规范],两个索引对象可以使用相同的分区架构,并且具有相同分区键的所有数据行最后将位于同一个文件组中,这就叫做存储位置对齐。数据和索引在同一个文件中。

2、索引分区

对聚集索引进行分区时,聚集键必须包含分区依据列。

对非唯一的聚集索引进行分区时,如果未在聚集键中明确指定分区依据列,默认情况下SQL Server 将在聚集索引列表中添加分区依据列。
如果聚集索引是唯一的,则必须明确指定聚集索引列包含分区依据列。

对唯一的非聚集索引进行分区时,默认情况下SQLSERVER 将分区依据列添加为索引的非键(包含性)列,以确保索引与基表对齐。
如果索引中已经存在分区依据列,SQL SERVER 将不会向索引中添加分区依据列。

3、全文索引分区

如果在分区上创建全文索引,那么创建分区的时候就需要注意了,因为全文索引需要唯一索引的支持,而且这个唯一索引不能施复合索引,只能是单个字段的唯一索引。这个索引的要求:“unique、sigle-column、non-nullable index”

4、其它

文件组只是一个逻辑上的存在

分区文件数〉=文件组数,一个文件不能属于两个不同的分组中,一个分组可以包含多个文件。

分区方案包含了一个分区函数和一个或者多个文件组

一个分区方案可以被多张表引用

两个分区方案可以使用同一个分区函数

 

posted @ 2016-11-04 21:51  saratearing  阅读(608)  评论(0)    收藏  举报