Oracle and I/O performance.

From: Lee Wen, Sheldon (sheldon.leewen@cgi.com)
Date: Wed Jun 08 2005 - 10:27:31 EDT


Hi Guys,
 
I have a Tru64 machine (ES45, 2CPU's 4GB of RAM) that has 2 volumes
mounted from a SAN (1 2GB fiber link to an EVA5000) for Oracle. The
dba's are complaining about performance of importing a database export.
The export is on one filesystem, the files for the database that they
are exporting into are on the other filesystem. (I know that we need
another path to the SAN so that both volumes are on separate paths but I
can't do anything about that).

Both filesystems are AdvFS.

Oracle is running DirectI/O, asynchronous. (I confirmed that the files
are being accessed asynchronously using the showfile command).

While watching the advfs domain with "advfsstat -v 3 -i 5 domain" I
notice that for the volume doing the writes, the number of writes is
usually exactly the same as the number of blocking I/O's (in the blk
column).
Occasionally I'll get rd around 750, wr around 500 and blk at 1k.

While watching the volume doing the reads the number of reads (rd) is
usually constant around 45-49, rg is exactly the same, args is 256 and
blk is around 750.

An iostat on the two disks shows the bps and tps for the disk doing the
writes at an average of 3000 and 500 respectively, but the numbers
occasionally jump to ~22000 and 1500. For the disk doing reads the bps
is around 1300 and tps around 10, but can jump up to 3500 and 30
respectively

I've ruled out CPU and memory pressures, cpu usage is low, no paging is
going on.

What should I be looking at to reduce the amount of blocking I/O or am I
going down the wrong path all together?

Thanks,

Sheldon



This archive was generated by hypermail 2.1.7 : Sat Apr 12 2008 - 10:50:19 EDT