16 de Agosto del 2005
Under Oracle7 and 8.0, in order to get up-to-date statistics so
that the Cost-Based Optimizer can generate accurate execution plans,
the DBA must gather regular statistics (DBMS_STATS.GATHER_xx_STATS) whenever
significant new amounts of data are created, as there is no way of knowing
which tables have been updated and therefore which tables need to gather agin statistics.
This is expensive.
Under Oracle8i, the DBA can set a table to be automatically detected
when any modification occurs. When enabled, whenever any modification
(insert, update, delete, and direct load) occurs on the table or on
one of its partitions, the server maintains information in the SGA
about how many rows are affected. Therefore, the DBA is now able to
re-analyze tables only when changes have occurred on a table.