Db file scattered reads vs. direct path reads

  • From: Josh Collier <Josh.Collier@xxxxxxxxxxxx>
  • To: "oracle-l@xxxxxxxxxxxxx" <oracle-l@xxxxxxxxxxxxx>
  • Date: Wed, 20 Feb 2008 12:20:01 -0800


I've got a conundrum. We've got a new disk system. When I full scan a table 
with the nocache hint the trace files record lots of reads like this

WAIT #1: nam='db file scattered read' ela= 38471 file#=777 block#=238789 
blocks=64 obj#=2805234 tim=359927798919

And the query takes 11 minutes for a 19gb table, much slower than our old system

When I enforce direct path reads with the following parameter
:alter session set "_serial_direct_read" = true

The trace files record lots of reads like this

WAIT #1: nam='direct path read' ela= 5 file number=777 first dba=238789 block 
cnt=64 obj#=2805234 tim=343398354853

And the query returns in 3 minutes

What would cause the scattered reads to be so much slower than the direct path 

I've enabled direct io on the db and verified it via truss.

Version is
Solaris 10

Other related posts: