在基于临时会话的表上创建索引后运行统计信息

时间:2015-04-10 10:15:04

标签: stored-procedures db2 temporary-objects

数据库: - DB2
我编写了一个操作数据以获得最终输出的程序 基于临时会话的表用于相同的 由于这些临时表中的数据量很高,因此会创建索引。

我可以在创建索引后获取有关运行统计信息的建议吗?

我读到某个地方,运行统计数据是数据库级别而不是会话级别 调整大型临时表的正确方法是什么?

2 个答案:

答案 0 :(得分:1)

由于您创建索引,因此可以假设您已执行性能分析并确定需要这些索引。如果是这种情况,那么对这些索引进行当前统计是明智的,否则它们可能没那么有用。

您可以在创建索引时生成索引统计信息:CREATE INDEX ... UPDATE STATISTICS

如果在您的环境中启用了自动RUNSTATS,您也可以依赖它自动运行RUNSTATS,但是,鉴于临时表的瞬态特性,自动维护可能无法为您的目的尽早启动。

答案 1 :(得分:0)

我发现你也标记了 Oracle

在Oracle中,您不需要在创建新索引之后收集统计信息

来自documentation

  

Oracle数据库现在会在索引期间自动收集统计信息   创造和重建。