I'm looking for ideas regarding measuring the bandwidth of an existing Oracle DB connection (perl DBI) without any changes to database server side. Right now I'm running a
select * from table;
against a table with approximately known amount of data and timing the response. I'm running it manually from shell and I'm considering implementing similar functionality in the application's admin/debug section for admins to look at. Specifically, I'm looking at running prepare first and then running execute while timing performance using Time::HiRes.
Questions:
- Is there a better SQL statement to use for the benchmark? Perhaps some query could generate a specific amount of non-meaningful data on the fly, much like
dd if=/dev/zero bs=1k count=1k
- Can someone think of another approach to measuring bandwidth that might be integratable to the web UI? A non-interactive shell command would work fine.
A little background. My application is accessing Oracle DB over an internal network. The network has bandwidth problems. On a bad day it's as bad as a dial-up. Implementation environment is RHEL / Oracle Instantclient / Perl DBI.