I threw together the following little benchmark in order to get some numbers on DBD::ODBC peroformance, which is just what I'm working with. I'm running both server and client on a PIII 500 PC with 128 MB of RAM, IDE hard drive, NT Server 4.0 and MSSQL 7.0. No optimization or tunning whatsoever. I would say this numbers are close to the minimum you could expect from a similar system. Performance aside I'd reccommend DBD::ODBC for maximum portability. I would also because I didn't have any problems installing it and it has behaved exactly as expected during development.
#!/usr/bin/perl -w
use strict;
use DBI;
my $dbh;
my $time = time;
for(1..999) {
$dbh = DBI->connect('DBI:ODBC:sqlkranon', 'sa', '') || die $dbh->err
+str;
$dbh->disconnect;
}
$dbh = DBI->connect('DBI:ODBC:sqlkranon', 'sa', '') || die $dbh->errst
+r;
print "1000 connects in ", time - $time, " seconds\n";
$time = time;
my $rows;
for(1..10000) {
my $sth = $dbh->prepare("select CveAsegSeguro,CveSeguro from C_Asegu
+radorasSeguros");
$sth->execute();
while (my @row = $sth->fetchrow_array ) {
$rows++;
}
}
$dbh->disconnect;
print "10000 selects fetching $rows rows in ", time - $time, " seconds
+\n";
__END__
Results:
1000 connects in 15 seconds
10000 selects fetching 30000 rows in 17 seconds
Good luck!
Brother Greg
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|