Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> RE: data block waits

RE: data block waits

From: Gaja Krishna Vaidyanatha <gajav_at_yahoo.com>
Date: Wed, 30 Aug 2000 17:48:34 -0700 (PDT)
Message-Id: <10604.115921@fatcity.com>


Bob,

Just to add a couple of points to your note. From Oracle 8.1.6, you can alter the number of freelists without having to "reorg" the table, using the ALTER TABLE command.

Also, the "age old" recommendation (from Oracle Docs. and other published material), that the number of freelists for a table should be equal to the "number of concurrent inserts" is not feasible on most systems. It probably can be classified as "folklore" on most production systems today.

For e.g., if you have an environment with 400 concurrent sessions inserting data into a table, creating 400 freelists is unreasonably high. This is because, the potential overhead incurred in tracking and accessing so many freelists when concurrent inserts occur on the system, is very high.

Also, configuring too many freelists, will have the effect of "artificially increasing the high water mark" of a table. An "artificially high" high-water-mark for a table, will cause Oracle to perform more I/O on the table than required for full-table scans, there by imposing an undesired stress on the I/O sub-system.

Realize, that if you have multiple freelists, when an extent gets allocated, the blocks of the allocated extent, get disbursed across the number of freelists for the table. An optimal value of "2 x # of CPUs", is more than adequate on most systems.

Best Regards,

Gaja


Gaja Krishna Vaidyanatha
Director, Storage Management Products
Quest Software Inc.
(972)-304-1170
gajav_at_yahoo.com Received on Wed Aug 30 2000 - 19:48:34 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US