| |
 |
|
Oracle RAC block size & cache size Configuration tips
Oracle Tips by Burleson Consulting
January 27, 2004 - Updated January 22, 2008
|
All Oracle DEFAULT caches and block sizes in a RAC environment (as
defined by db_block_size) must be identical, but there are other
important differences between the configuration of a RAC database and a
single-instance Oracle database, especially when using grid server
blades.
Beginning with Oracle9i RAC Oracle
allowed sub-caches to be configured that have different blocksizes than
the default db_block_size, allowing db_2K_block_size,
db_4k_block_size, db_8k_block_size, db_16k_block_size and
db_32k_block_size (not available on all platforms) as sub-caches.
For
example, if your default db_block_size is 4K, you could define a
db_2k_cache_size to hold additional objects. However, all RAC
nodes must have the sub-cache defined.
We must remember that the rules for caching in a
RAC instance are very different than for a standard Oracle system. For
example,
numerous studies have shown that Oracle indexes often benefit from
using the largest supported blocksize. This is not always true in RAC
systems.
With Oracle system now employing
RAM-SAN instead of disk, and systems having giant db_cache_size
regions, it is tempting to configure RAC with large data buffers.
However, we must remember that multi-instance Oracle is very different
from a single-instance system:
-
Blade clusters have small buffer caches – Most
blade servers have only 2-gig or 4-gig of RAM. Hence, each RAC node is
limited in the available db_cache_size.
-
RAC likes small blocksizes – Because of the
inter-instances block transfer via Cache Fusion, smaller block sizes
minimize pinging of blocks between instances. Most RAC DBA’s will
define the default db_block_buffers to 2k and then add a 4k buffer ton
isolate data objects.
-
RAC scales by the sum of RAM caches –
Unlike a single Oracle database with a 32 gigabyte RAM data cache,
RAC system achieve high caching by the sum of the individual RAM
caches. Hence, a 32 node RAC cluster with a 2 gigabyte RAM cache on each node would
effectively have a total cache of 128 gigabytes.
See my related notes on RAC caching and block sizes:
 |
If you like Oracle tuning, you
might enjoy my book "Oracle
Tuning: The Definitive Reference", with 950 pages of tuning tips and
scripts.
You can buy it direct from the publisher for 30%-off and get instant
access to the code depot of Oracle tuning scripts. |
 |
Is your RAC database Healthy?
Get the experts at Burleson Consulting to conduct a two day
RAC
health check and ensure the health of your RAC database.
Why guess? Have your RAC database certified by experienced RAC
experts. |
|
|