 |
|
Oracle 10g changes to dbms_stats
Oracle Database Tips by Donald Burleson
|
With Oracle Database 10g, there are some new arguments available
for the dbms_stats package subprograms. Those parameters are
granularity and degree.
granularity
This parameter is used in subprograms such as
gather_table_stats and gather_schema_stats. This
parameter indicates the granularity of the statistics that you want
to collect, particularly for partitioned tables. As an example, you
can gather the global statistics on a partitioned table, or you can
gather global and partition-level statistics. It has two options.
They are: AUTO and GLOBAL AND PARTITION.
- When the AUTO option is specified, the procedure determines
the granularity based on the partitioning type. Oracle collects
global, partition-level, and sub-partition level statistics if
sub-partition method is LIST. For other partitioned tables, only
the global and partition level statistics are generated.
- When the GLOBAL AND PARTITION option is specified, Oracle
gathers the global and partition level statistics. No
sub-partition level statistics are gathered even it is composite
partitioned object.
degree
With this parameter, you are able to specify the
degree of
parallelism. In general, the degree parameter allows you to
parallelize the statistics gathering process. The degree parameter
can take the value of auto_degree.
When you specify the auto_degree, Oracle will determine
the degree of parallelism automatically. It will be either 1 (serial
execution) or default_degree (the system default value based
on number of CPUs and initialization parameters), according to the
size of the object. Take care if Hyper Threading is used, as you
will have less computational power than Oracle assumes.
10g DML Table Monitoring Changes
With Oracle Database 10g, the
statistics_level initialization
parameter functions as a global option for the table monitoring
mechanism. This mechanism overrides the table level MONITORING
clause. In other words, the [NO] MONITORING clauses are now obsolete.
The statistics_level parameter was available in 9i.
If the statistics_level parameter is set to BASIC, the
monitoring feature is disabled. When it is set to TYPICAL (which is
the default setting) or ALL, then the global table monitoring is
enabled.
These changes are aimed at simplifying operations and also
making them consistent with other related statistics. The
modification monitoring mechanism is now enabled by default, and
users of the GATHER AUTO or STALE feature of dbms_stats no longer
have to enable monitoring explicitly for every table under the
default settings.
[NOTE: You can still use the [NO] MONITORING clauses in the
{CREATE | ALTER } TABLE statements as well as the
alter_schema_tab_monitoring and alter_database_tab_monitoring
procedures of the dbms_stats package, but these clauses and
procedures are now considered as no operation. They execute without
giving any error, but have no effect.]
[NOTE: There is also no table monitoring for temporary
tables.]
Also see:
Oracle
11g changes to dbms_stats
|