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: Inserts slowing down on OLTP systems

RE: Inserts slowing down on OLTP systems

From: John Kanagaraj <john.kanagaraj_at_hds.com>
Date: Tue, 08 May 2001 12:22:35 -0700
Message-ID: <F001.002FCC20.20010508113100@fatcity.com>

Hi Vikas,

In simple words, a block split happens when an INSERT needs to add an entry into a leaf block and finds it full, requiring it to 'split' and balance itself by migrating half the index entries into the new block (at's why it's called a B Tree or 'Balanced' tree). More details in the oh-so-rarely-read Server Concepts manual...

As far as specific events go, you may need to look at 'latch free' waits - trace the p2 values from v$session_wait (usually 'cache buffer chains') using the following sqls

select event, count(*) from v$session_wait group by event

select p2, count(*) from v$session_wait where event = 'latch free'
group by p2

select * from v$latchname where latch# in (<list of latches>)

V$SYSTEM_EVENT will tell about the system as a whole while V$SESSION_WAIT will tell you what that particular process is waiting for. Are many INSERTs doen in parallel? There could also be an issue with FREELISTS (that's a different ballgame altogether).

What you should probably do is to investigate your 'Index badness' using the following:

    ANALYZE INDEX &&index_name VALIDATE STRUCTURE;

    col name         heading 'Index Name'          format a30
    col del_lf_rows  heading 'Deleted|Leaf Rows'   format 99999999
    col lf_rows_used heading 'Used|Leaf Rows'      format 99999999
    col ibadness     heading '% Deleted|Leaf Rows' format 999.99999

    SELECT name,       del_lf_rows,       lf_rows - del_lf_rows
lf_rows_used,
       to_char(del_lf_rows / (lf_rows)*100,'999.99999') ibadness
    FROM index_stats       where name = upper('&&index_name');

    undefine index_name

As a rule of thumb if 10-15% of the table data changes, then you should consider rebuilding the index.

Hth,
John Kanagaraj
Oracle Applications DBA
Hitach Data Systems, Santa Clara
Work : (408) 970 7002

>-----Original Message-----
>From: Vikas Kawatra [mailto:VKawatra_at_innoventry.com]
>Sent: Tuesday, May 08, 2001 10:52 AM
>To: Multiple recipients of list ORACLE-L
>Subject: RE: Inserts slowing down on OLTP systems
>
>
>What specific events should I look for in these tables ! -
>atleast the imp
>ones -
>And What's a block split ?
>
>vikas
>
>-----Original Message-----
>Sent: Tuesday, May 08, 2001 6:32 AM
>To: Multiple recipients of list ORACLE-L
>
>
>instead of checking hit ratios, try looking at wait events in
>v$session_event, v$system_event and v$session_wait.
>
>also -- how many indexes are on these tables? How much data is in the
>tables? If the indexes are doing constant block splits on the
>insert you are
>
>basically rebuilding the index each time.. this can have a
>major impact on
>performance.
>
>Rachel
>
>
>>From: Vikas Kawatra <VKawatra_at_innoventry.com>
>>Reply-To: ORACLE-L_at_fatcity.com
>>To: Multiple recipients of list ORACLE-L <ORACLE-L_at_fatcity.com>
>>Subject: Inserts slowing down on OLTP systems
>>Date: Mon, 07 May 2001 16:55:28 -0800
>>
>>Anyone have ideas on why OLTP database inserts would slow
>down by 100% from
>>levels 15 days ago ?
>>
>>We alreay checked hit ratios in shared pool , checked for any storage
>>issues
>>etc
>>
>>thanks
>>
>>vikas
>>--
>>Please see the official ORACLE-L FAQ: http://www.orafaq.com
>>--
>>Author: Vikas Kawatra
>> INET: VKawatra_at_innoventry.com
>>
>>Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051
>>San Diego, California -- Public Internet access / Mailing Lists
>>--------------------------------------------------------------------
>>To REMOVE yourself from this mailing list, send an E-Mail message
>>to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in
>>the message BODY, include a line containing: UNSUB ORACLE-L
>>(or the name of mailing list you want to be removed from). You may
>>also send the HELP command for other information (like subscribing).
>
>_________________________________________________________________
>Get your FREE download of MSN Explorer at http://explorer.msn.com
>
>--
>Please see the official ORACLE-L FAQ: http://www.orafaq.com
>--
>Author: Rachel Carmichael
> INET: carmichr_at_hotmail.com
>
>Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051
>San Diego, California -- Public Internet access / Mailing Lists
>--------------------------------------------------------------------
>To REMOVE yourself from this mailing list, send an E-Mail message
>to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in
>the message BODY, include a line containing: UNSUB ORACLE-L
>(or the name of mailing list you want to be removed from). You may
>also send the HELP command for other information (like subscribing).
>--
>Please see the official ORACLE-L FAQ: http://www.orafaq.com
>--
>Author: Vikas Kawatra
> INET: VKawatra_at_innoventry.com
>
>Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051
>San Diego, California -- Public Internet access / Mailing Lists
>--------------------------------------------------------------------
>To REMOVE yourself from this mailing list, send an E-Mail message
>to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in
>the message BODY, include a line containing: UNSUB ORACLE-L
>(or the name of mailing list you want to be removed from). You may
>also send the HELP command for other information (like subscribing).
>

-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: John Kanagaraj
  INET: john.kanagaraj_at_hds.com

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
San Diego, California        -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).
Received on Tue May 08 2001 - 14:22:35 CDT

Original text of this message

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