SQL索引过滤器 - 不索引旧数据

时间:2011-03-23 21:54:02

标签: sql-server sql-server-2008

如果我有一个可追溯到2007年的500米行的表,并且很少访问2009年之前的所有内容(历史数据),那么将过滤器应用于索引以仅在2009年之后对数据进行索引是明智的吗?

从我看到的

  1. 索引要小一些
  2. 索引对于经常访问的数据表现更好
  3. 较旧数据的检索速度较慢
  4. 如果需要滑动日期,则需要更改索引(将其调整为仅显示过去2年,每年一次)
  5. 我错过了什么?有什么负面影响?

    @Ryk让我想到了另一个问题。我们计划对表格进行分区。应该在分区之前还是之后应用过滤器?

2 个答案:

答案 0 :(得分:2)

Technet: Filtered Index Design Guidelines

与没有索引相比,确实没有任何缺点。

通过对最近的数据建立指数,上涨是你获得的所有好处,并且有一个指数的缺点是相同的(除了它是完全下行的百分比),例如维护(插入/更新)成本,存储成本等。

答案 1 :(得分:0)

您是否考虑过对表格进行分区?