Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: What is Parallel DML?
Take a table of 16,000 blocks where 50%
of the blocks are buffered. Assume a 16
block mbrc
If the first 50% are buffered, then the scan will skip them and use 500 read requests to get the rest of the table.
If every other block is buffered, the scan
will read one, skip one, read one, skip one ...
and use 8,000 read requests to get the
rest of the data.
NB This is the traditional approach -
however Oracle has now introduced the
'non-contiguous multiblock read count'
and prefetching for index scans - and
I haven't checked if it makes use of the
same trick in this tablescan case.
-- Jonathan Lewis Host to The Co-operative Oracle Users' FAQ http://www.jlcomp.demon.co.uk/faq/ind_faq.html Author of: Practical Oracle 8i: Building Efficient Databases See http://www.jlcomp.demon.co.uk/book_rev.html Seminars on getting the best out of Oracle See http://www.jlcomp.demon.co.uk/seminar.html Screensaver or Lifesaver: http://www.ud.com Use spare CPU to assist in cancer research. Galen Boyer wrote in message ...Received on Fri Jul 27 2001 - 02:28:36 CDT
>On Thu, 26 Jul 2001, jonathan_at_jlcomp.demon.co.uk wrote:
>
>> Another factor which could help to explain the
>> difference, though:
>> The serial scan may have found numerous blocks
>> in the buffer already, and therefore had to skip them
>> on the serial scan, hence producing much smaller
>> multiblock reads.
>
>I don't understand this one. Shouldn't skipping them because
>they are in memory speed the single cpu query up?
>
>--
>Galen Boyer
>It seems to me, I remember every single thing I know.
![]() |
![]() |