On Tue, May 03, 2005 at 04:28:10PM -0700, Job Miller wrote:
> the lack of it really limits perl's utility for any serious data loading 
> operations that require performance.  if you look at the extended sql trace 
> of a:
>  
> parse
> loop
> execute(x)
> end loop;
>  
> you will see that it using single row executes. Unfortunately there is
> no magic going on behind the scenes for batching(JDBC) or adding
> Iterations (OCCI), that make working with arrays possible.  I am sure
> it isn't real easy to do, otherwise Tim would have done it long ago.

Actually I've been moving the code in that direction for several
releases. It's (possibly) most of the way there. Patches welcome.

> OCCI makes passing arrays to pl/sql slightly clumsy also, since you have to 
> use the C data types.

The DBD::Oracle code uses callbacks so it's relatively simple.

> the performance differences are huge.  As an example, I saw 60 seconds
> of database cpu time from inserting 10k rows (row by row or slow by
> slow) in C++ go to 2 seconds with an array insert instead.

Like I said, patches welcome.

Tim.

Reply via email to