Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: Rollback Segment Philosophy
A point that is often overlooked in the
'large enough to have no 1555 errors'
is that a 1555 error protects you from
slow-down. I suspect that's what you
meant by 'jobs blowing up' - but just
in case it wasn't:
IF (and that's a very heavily emphasised IF)
you have a job that is resumable, and it doesn't
matter whether it is performed as one transaction
or 1,000 transactions
THEN
If you perform it as 1,000 transactions, you
probably pay a penalty in extra undo and redo.
But if you perform it as 1 transaction, you may
find that the rate at which it goes decreases as
the transaction progresses because the nature of
the job requires it to apply its own rollback for
read consistency purposes.
Therefore there may be a point where the number of transactions you use keeps the sum of undo, redo, and read consistency work to a minimum.
Historically, of course, keeping the total size of the undo segments low could reduce the total I/O of the system. This is no longer likely to be true in the world of automatic undo and continuous checkpointing.
Regards
Jonathan Lewis
http://www.jlcomp.demon.co.uk/faq/ind_faq.html The Co-operative Oracle Users' FAQ
http://www.jlcomp.demon.co.uk/seminar.html Optimising Oracle Seminar - schedule updated July 20th
Kevin,
My philosophy about Rollback Segments is to have enough and the correct size so that we never experience a "Snapshot too old".
Beyond that, it all comes down to implementation. I end up sizing the rollbacks so that 99% of the time, everything works fine. If a job blows up because of rollback problems, I ask the application folks to redesign it - change the commit strategy so that it doesn't happen again.
It's all a balance between reserving (wasting) too much space in Rollback Segments and getting the job done. Sometimes you have to add rollback segment space, and sometimes the applications folks need to alter the job being run.
Hope this helps.
Tom Mercadante
Oracle Certified Professional