首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Sybase/SQLServer数据库上使用过期的表统计信息意味着什么?

在Sybase/SQLServer数据库上使用过期的表统计信息意味着什么?
EN

Stack Overflow用户
提问于 2009-02-12 23:29:46
回答 3查看 473关注 0票数 0

例如,对于使用率很高的表,其数据量约为1000万行,每月会增加100万行,如果统计数据是6-8个月前的数据,这对数据库的性能会有多大的影响?您应该多久刷新一次统计数据?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-02-12 23:35:18

统计数据由查询规划器保存和使用,它们具有明显的影响。我不能给你确切的指导方针,你应该多久刷新一次。这将取决于刷新它们需要多少工作,以及新的统计数据对您的查询有多大的影响。真正的答案是进行良好的测量,并根据结果来判断选项。在没有测量的情况下修修补补是掷骰子。

票数 2
EN

Stack Overflow用户

发布于 2009-02-15 10:26:17

我们每晚都会刷新数据。如果每晚都能刷新统计数据,那么等待周末就没有意义了--到周五,数据将比周一更糟糕……

问题是,如果时间太长怎么办?

对于有这个问题的数据库,我们每晚都会刷新某些表的统计数据--所以一些表每晚都会刷新,而另一些则不那么频繁。(我们有一个数据库表,其中记录了要在何时执行的表,以及重新生成Stat所用时间的历史记录,并相应地调整了计划)

如果统计数据是6-8个月前的数据,那么

对数据库性能的影响会有多大

如果它对一个每月增加一百万行的表没有产生巨大的影响,我会非常惊讶

如果这是您的实际状态,我希望表也需要碎片整理

票数 0
EN

Stack Overflow用户

发布于 2009-02-15 19:52:40

其影响是可怕的。您应该尽可能频繁地刷新它们,以便为优化器提供做出决策的最佳信息。通过运行optdiag实用程序,您将能够了解统计信息有多糟糕。分析输出并再次运行,在几天或一周内进行比较,可以让您确切地知道情况有多糟糕。我建议您尽早删除并重新创建索引,然后在有问题的表上运行'update index statistics‘。这应该是足够的信息让你通过。我假设您能够分析optdiag的输出。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/544007

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档