Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Mailing Lists -> Oracle-L -> Partition Statistics
I created an index as follows:
CREATE UNIQUE INDEX iname ON tname(col1,col2,col3) LOCAL (
PARTITION P20030101 TABLESPACE tname PCTFREE 0 NOLOGGING COMPUTE
STATISTICS,
PARTITION P20030102 TABLESPACE tname PCTFREE 0 NOLOGGING COMPUTE
STATISTICS,
...
PARTITION P20041231 TABLESPACE tname PCTFREE 0 NOLOGGING COMPUTE
STATISTICS);
When I query dba_ind_partitions all the stats are there but the value in
the global_stats column was 'NO' so I did this:
EXEC =
dbms_stats.gather_index_stats(ownname=3D>'oname',indname=3D>'iname', -
partname=3D>'P20041207',granularity=3D>'PARTITION');
After the above the value in the global_stats column is 'YES' for the specific partition recalc'd so now my question is what changed? Does the optimizer look at the dba_ind_partitions.global_stats column and does it make a difference?=20
On another experiment I tried this:
EXEC =
dbms_stats.gather_index_stats(ownname=3D>'oname',indname=3D>'iname', -
partname=3D>'P20041206',granularity=3D>'DEFAULT');
With this granularity the system was churning away a long time so I interrupted it. What was it doing? Was it gathering "global" status by looking at all 700+ partitions even though I specified a single partition? (There is just the one index on the table and it will be exceeding 100,000,000 rows sometime next week.)
Any good white papers on partitioning you would recommend? TIA!
Curious,
Steve Orr
Bozeman, Montana
-- http://www.freelists.org/webpage/oracle-lReceived on Wed Dec 08 2004 - 09:59:09 CST