表和索引分区
我打算对我现有的一个数据库使用表分区。数据库中的所有表都具有聚簇索引和非唯一的非聚集索引。非唯一的非聚集索引构建在我想用作分区列的列上。分区列不是主键或聚簇索引的一部分。我正在使用SQL Server 2016 SP1。
我在阅读时遇到了这些观点,“使用SQL Server 2008分区表和索引策略”
这些要点是否仍适用于SQL Server 2016 SP1?
因为,当我使用Create Partition向导时,它没有将主键转换为非聚集索引并为分区列添加聚簇索引。
在分区表中,分区列必须是以下内容的一部分:
聚集索引键。 主键。 唯一索引和唯一性约束键。 在SWITCH操作期间,索引还有一些重要的要求:
必须对齐所有索引。 没有外键可以引用分区表。 我想要分区的所有tabled也有外键。我必须执行SWITCH操作。在保留外键的同时执行SWITCH是否有任何变通方法?
Filtered Index我必须根据一列(分区列)和另一列(UserId)清除数据库以过滤数据。例如:获取UserId 1的7天数据。数据库最多可包含100个用户的数据。在UserId上已经创建了非聚集索引,但查询性能很差。请建议在UserId列上创建辅助非群集筛选索引是否会提高查询性能。