Gather_table_stats始终更新统计信息

时间:2015-01-23 15:34:44

标签: oracle oracle-data-integrator

在ODI中,我们使用DBMS_STATS.GATHER_SCHEMA_STATS仅在表格使用选项(options =>'GATHER AUTO')更改某个百分比时重新计算统计数据。 (http://docs.oracle.com/cd/B19306_01/appdev.102/b14258/d_stats.htm#i1036456

现在我想将统计信息的计算移到表级别(在IKL中),但DBMS_STATS.GATHER_TABLE_STATS似乎没有设置只在需要更新时重新计算统计信息(由Oracle确定)。 (http://docs.oracle.com/cd/B19306_01/appdev.102/b14258/d_stats.htm#i1036461

总是重新计算我们所有表格的统计数据太昂贵了。

有没有人知道检查表是否需要更新其统计信息或DBMS_STATS.GATHER_TABLE_STATS中的隐藏选项的方法。

2 个答案:

答案 0 :(得分:3)

DBMS_STATS.GATHER_SCHEMA_STATS可以选择LIST STALE对象;你可以先运行它,然后决定你的表是否在返回的对象列表中。

答案 1 :(得分:2)

检查USER_TAB_STATISTICS / ALL_TAB_STATISTICS / DBA_TAB_STATISTICS

中的STALE_STATS列