0

我们有一个大型数据仓库数据库,我们不断地在 5 个不同的表中插入新行,位于 b 树的左侧(编辑:右侧)(=在表的末尾)

这意味着对于新数据,普通统计数据很快就会过时。所以我们改变了我们的插入过程,也使用覆盖最新两百万行的 WHERE 子句执行 CREATE STATISTICS FST_xxx。

这确保了我们不会得到不正确的执行计划。现在我们被数百个这样的人困住了。我们有一个每天运行一次的清理作业,它将删除不需要的统计信息。

但这会导致很多死锁。

有没有办法禁用过滤统计信息或删除过滤统计信息而不会导致死锁?

(编辑:)该表聚集在 Bigint Identity(1,1) asending 上。

4

2 回答 2

1

你能澄清一下插入行的位置吗?您说的是 b-tree 的左侧,但您也说的是表的末尾。假设这是您正在谈论的聚集索引是否正确?而不管是否聚集,索引键是升序的吗?谢谢。

于 2013-10-07T13:31:41.763 回答
1

为什么不尝试更新统计信息而不是每次都创建一个新统计信息?

于 2013-10-04T12:58:38.697 回答