Re: Single RBS for DS system

From: Kevin Jernigan <kjerniga_at_emergent.com>
Date: 1995/04/25
Message-ID: <kjerniga-2504950859220001_at_slipkevinj.emergent.com>#1/1


In article <D7K4uL.KFL_at_eskimo.com>, lparsons_at_eskimo.com (Lee Parsons) wrote:

> Kevin Jernigan <kjerniga_at_emergent.com> wrote:
> >lparsons_at_eskimo.com (Lee Parsons) wrote:
> >
> >> Remember we have 50 query users and the only updates are done by a single
> >> process with no other users on.
> >
> >It makes sense to have only on rollback segment, though even that won't be
> >used if you are doing direct path loads. The direct path option of
> >SQL*Loader bypasses the Oracle buffer cache to write data directly to disk
> >- rollback is accomplished by not moving the highwater mark for the table
> >being loaded until after the load is complete (or after the specified
> >number of rows is loaded).
>
> This is only true if you have the UNRECOVERABLE keywork in the control file.
> I only mention it because I expected it to be a command line option but
> find that I have to delta all my control files and make them in compatable
> with regular (non-direct) loads. Uhg.
>
> Also, I do need a reasonable sized RBS when the load process does some
> data massaging and creates indexes.
>
> --
> Regards,
>
> Lee E. Parsons
> Systems Oracle DBA lparsons_at_world.std.com

Actually, UNRECOVERABLE refers to the redo logs, not to the rollback segments. If you do an UNRECOVERABLE load, that means that no records are written to the redo log files for the loaded data, and it is advisable to back up your database once the load is done. Whether or not you specify UNRECOVERABLE, rollback segments are NOT used for the data being loaded in a direct path load. By specifying UNRECOVERABLE, you are probably improving the performance of your loads at the expense of possible loss of data if you have to recover from a backup made before the load.

Data massaging done by SQL*Loader is usually done on the client side, before the data is sent to the server side, and doesn't involve database access, so it wouldn't require any rollbac segments. Index creations done by direct path SQL*Loader will require temp space within the database for the sort phase, and because they are temp segments until the index is completely built, again no rollback segment space is needed. This is because the temp segments will be deleted automatically if the transaction fails for some reason, leaving the old index as it was.

Kevin J

~~~~~~~~~~~~~~~ emergent: the parallel systems experts ~~~~~~~~~~~~~~~

Kevin Jernigan                                        415-567-8915 (p)
emergent corporation                                  415-265-0785 (c)
kjerniga_at_emergent.com    http://www.emergent.com      415-367-6414 (f)
Received on Tue Apr 25 1995 - 00:00:00 CEST

Original text of this message