什么方法是有用于识别多余的列报指标:列从来没有搜查对,因此可能提取到包括,或者甚至完全删除,而不影响适用性的指数?

有帮助吗?

解决方案

澄清事情
的想法 一个复盖指标 是,它还包括列不可能搜索(用于其中的条款和这类),但是可以选择(第一部分的选择列,列表)。

似乎没有任何简单的方法来断言存在的未使用列在一个复盖指标.我只能想到一个艰苦的过程如下:

  • 一个有代表性的时期内,记录所有查询都是在服务器上运行(或者在发表期望)
  • 过滤出(通过定期表达)查询不涉及潜在的表
  • 对于剩余的查询,得到查询的计划;丢弃的查询不涉及指数的问题
  • 对于剩余的查询,或者说对于每个"模板"的查询(多的查询都是相同的,但用于检索的标准值),请名单所列的索引,无论是在选择或其中的条款(或者在加入...)
  • 所列的指标中找不到这列表是正好去。

现在,有可能一些更多的[列删除]因为这个过程上不检查在这方面的复盖指数是使用(这是可能的,它将用于解决那里,但是,基础表还访问以及(例如,获得分列的不在复盖指数...)

上述临床方法,而没有吸引力。 一种分析方法可能优:

找到所查询的"模板",可以用于所有应用服务器。对于每个这些模式,发现那些可以使用的复盖指数。这些(再几个小孔...)查询:

  • 包括参照基础表
  • 不援引任何方式列从基本表未列的索引
  • 不要使用一个搜索标准的基础表被更有选择性的,所列的索引(在他们非常了...)

或者...甚至没有要的应用程序: 想想所有的使用情况, 和如果查询这将有助于这些情况下将有利于不从所有列在索引中。这样做将意味着你有一个较好的选择性的指数,关于其第一数列。

其他提示

如果你做你的使用情况和数据点审核,显然任何未使用或夹在审计是删除的候选。如果数据库缺乏这样一个彻底的审核,可以保存通过运行跟踪并保存它击中了数据库查询的时间窗的价值。您可以分析跟踪,看看什么类型的查询都命中数据库,并从那里忒哪些列可以被删除。

跟踪分析通常用于查找的丢失的指标,但我猜测它也可以用于分析使用趋势的候选人。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top