PEPPLER.ORG
Michael Peppler
Sybase Consulting
Menu
Home
Sybase on Linux
Install Guide for Sybase on Linux
General Sybase Resources
General Perl Resources
Freeware
Sybperl
Sybase::Simple
DBD::Sybase
BCP Tool
Bug Tracker
Mailing List Archive
Downloads Directory
FAQs
Sybase on Linux FAQ
Sybperl FAQ
Personal
Michael Peppler's resume

sybperl-l Archive

Up    Prev    Next    

From: Michael Peppler <mpeppler at MBAY dot NET>
Subject: Re: Performance Question
Date: Feb 18 1998 9:58PM

Jamie Thingelstad wrote:
> 
> I've just completed writing a data loader using Sybase::DBlib and want
> to get more performance out of it. It does an INSERT, UPDATE then a
> stored procedure for each line, there are >25,000 lines. This
> currently takes 40mins to run and I believe the bottleneck is
> Sybase::DBlib or the method I am calling it with since CPU on the
> client is low, and the server doesn't have much load at all while this
> runs.

Do you mean that the CPU usage on the client is high?

Are you retrieving a lot of rows from the server when you do this, or
is this purely an insert operation?

Do you do a lot of processing of the data before you send it
to Sybase?

Have you checked the CPU usage on the server?
Are the indexes, etc. correct on the tables that you load?

 
> The way I am currently doing this is building each statment in a
> scalar then using dbcmd, dbsqlexec, dbresults, dbcancel.
> 
> Couple of questions:
> 
> * Is there a significant performance improvement if I put all commands
> in the scalar then loop through Sybase::DBlib executing each one?

Probably not - you will gain a little by calling fewer subs in the
Sybase::DBlib module, but I doubt that that is where you are spending
your time.

> 
> * Is there a performance advantage to using Sybase::CTlib over
> Sybase::DBlib?

Not that I know of - they are approximately identical, at least
for OC 11.x.

Michael
-- 
Michael Peppler       -||-  Data Migrations Inc.
mpeppler@datamig.com  -||-  http://www.mbay.net/~mpeppler