Mar 02, 2008 - 04:31 AM  
Orcl-Experts  
 
           

ORA- Search ( Press GO)

9i R1 9i R2
10g R1 10g R2
11g R1

Doc Search (Press Go)

Search Oracle Docs

Metalink 11g R1
9i R1 9i R2
10g R1 10g R2

SGA - System Global Area: composed of shared memory structures, created at the database instance startup. Memory structures hold information about the database instance and control instance behavior

SGA is mainly divided into 3 parts : Share Pool ( Library Cache + Dictionary Cache + optional memory structures) , Database Buffer Cache , Redo Log Buffer

Share Pool - SHARED_POOL_SIZE

Library cache has memory distribution as SQL or procedural code is run, based on the individual users’ sessions and in accordance with the least recently used (LRU) algorithm.

Dictionary Cache provides information about object structures from the data dictionary and provides to the SQL statements being parsed

Datase Buffer Cache - DB_CACHE_SIZE

Database Buffer Cache holds copies of data requested by SQL and reduces requests to disk drive by having data in memory

Redolog Buffer - LOG_BUFFER

Redo Log Buffer holds changes made to data and allows for the reconstruction of data in the case of failure. Log buffer improves I/O by buffering the redo entries that are written to the online redo logs

Rule:DAMICO - ( M - Memory Structure)

Library Cache

SELECT (SUM(PINS - RELOADS)) / SUM(PINS) "LIB CACHE" FROM V$LIBRARYCACHE;

If the ratios are close to 1, you do not need to increase the pool size

Interpreting the V$LIBRARYCACHE Table

Examining the data returned by the sample query leads to these observations:
* The sum of the EXECUTIONS column indicates that SQL statements, PL/SQL blocks, and object definitions were accessed for execution a total of 320,871 times.
* The sum of the CACHE MISSES WHILE EXECUTING column indicates that 549 of those executions resulted in library cache misses causing Oracle to implicitly reparse a statement or block or reload an object definition because it aged out of the library cache.
* The ratio of the total misses to total executions is about 0.17%. This value means that only 0.17% of executions resulted in reparsing.Total misses should be near 0. If the ratio of misses to executions is more than 1%, try to reduce the library cache misses through the means discussed in the next section.
Reducing Library Cache MissesYou can reduce library cache misses by: * Allocating additional memory to the library cache
* Writing identical SQL statements whenever possible

Dictionary Cache

SELECT (SUM(GETS - GETMISSES - USAGE - FIXED)) / SUM(GETS) "ROW CACHE" FROM V$ROWCACHE;

the ratio of total GETMISSES to total GETS should be less than 10% or 15%, depending on the application

Increasing the amount of memory available to the cache if all of the following are true:

Your application is using the shared pool effectively. See "Using the Shared Pool Effectively" .

Your system has reached a steady state, any of the item-specific hit ratios are low, and there are a large numbers of gets for the caches with low hit ratios.

Increase the amount of memory available to the data dictionary cache by increasing the value of the initialization parameter SHARED_POOL_SIZE

Database Buffer Cache SELECT name, block_size,
100*(1 - (physical_reads /
decode((db_block_gets+consistent_gets),
0,1,null,1,(db_block_gets+consistent_gets))))
buffer_hit_ratio
FROM v$buffer_pool_statistics;
buffer_hit_ratio of 95% or greater is considered to be a good hit ratio for OLTP systems.The hit ratio for DSS (Decision Support System) may vary depending on the database load. A lower hit ratio means Oracle is performing more disk IO on the server

1.Capture the actual statistic values before you run a workload through the database.
2 Capture the ending statistics after the workload running.
3 Subtract the beginning hit ratio from the ending hit ratio to find the buffer hit ratio for
the workload period.

 

Redo Log Buffer select name, value
from v$sysstat
where name='redo buffer allocation retries';
If the returned value is any value other than zero, the system has been unable to obtain
space in the log buffer.
alter the parameter LOG_BUFFER or improve the placement of the files associated with the online redo logs (the storage array is unable to handle the I/O requests in relation to where the online redo logs exist)


 

 

 

 

 

 

 

Login





 


 Log in Problems?
 New User? Sign Up!

Script



FAQ



Forum


G r e a t D e a l s

Copyright Reserved Orcl-Experts.info

Valid CSS!