Re: "DB Link are Inherently Slow" -- True or False?

From: Nigel Thomas <nigel.cl.thomas_at_googlemail.com>
Date: Wed, 16 Jul 2008 20:04:57 +0100
Message-ID: <53258cd50807161204l37c52cf6o353933bab43266b5@mail.gmail.com>


A traditional way of improving the performance of processes involving bulk data transfer over database links is to parallelize them. Queries (or insert into local select from remote) over a DB link are NOT parallelized by the Parallel Query Option (the remote query might be, but the network transport isn't).

Typically a single stream does not soak up all the available network (or cpu or i/o) bandwidth (because of the chattiness of SQL*Net). So you can
(manually, externally, in your client application) partition the process
into a few sub-processes.

Of course the right number of sub-processes is a matter for testing, taking into account
a) Cary's rule (of thumb) of 2
b) the limitations imposed on concurrent connections across a database link
(eg OPEN_LINKS_PER_INSTANCE parameter).

Your mileage will vary...

Regards Nigel

--
http://www.freelists.org/webpage/oracle-l
Received on Wed Jul 16 2008 - 14:04:57 CDT

Original text of this message