:)

I didn't study that stuff very much in my last five years at Oracle.
Fast-full index scans weren't around when I was digging in the dirt.
Anyway, things change across versions, and it's impossible to remember
everything in one brain anyway...

So,... test!


Cary Millsap
Hotsos Enterprises, Ltd.
http://www.hotsos.com

Upcoming events:
- Performance Diagnosis 101: 10/28 Phoenix, 11/19 Sydney
- SQL Optimization 101: 12/8-12 Dallas
- Hotsos Symposium 2004: March 7-10 Dallas
- Visit www.hotsos.com for schedule details...


-----Original Message-----
[EMAIL PROTECTED]
Sent: Friday, October 24, 2003 12:30 PM
To: Multiple recipients of list ORACLE-L
analytic function?

you worked for oracle for 10 years and you have to guess? how secret do
they keep these internals documents on the algorithms? 
> 
> From: "Cary Millsap" <[EMAIL PROTECTED]>
> Date: 2003/10/24 Fri PM 01:19:25 EDT
> To: Multiple recipients of list ORACLE-L <[EMAIL PROTECTED]>
> Subject: RE: index full scan over an index fast full scan in an
analytic function?
> 
> The FF index scan reads all the block in the index, using multiblock
> reads. The kernel then discards the branch blocks. If sorting of the
> result set is required, then this is a separate row source operation,
> because the rows don't come out of the segment in sorted order.
> 
> To see why, imagine the following index "picture", which I'll draw
> sideways, using indentation to denote the parent-child relationship.
> It's a pretty stupid-looking index (Oracle can have many more children
> per branch block than I'll draw), but it'll work to illustrate. I'll
> label each block in the index with file#:block#.
> 
> 23:14
>       23:15
>               23:18
>               23:19
>               23:22
>       23:20
>               23:17
>               23:25
>       23:24
>               23:21
>               23:16
>               23:23
> 
> To range-scan the rows in the index, the kernel would read the
following
> blocks from file 23 using 'db file sequential read', in this order:
> 
>       18, 19, 22, 17, 25, 21, 16, 23.
> 
> To FF scan the index, Oracle would read the following blocks using 'db
> file scattered read' (assume a value of 8 for my example), in this
> order:
> 
>       14-21, 22-25
> 
> In using the results, the kernel would discard blocks 14, 15, 20, and
> 24. As I said, if the kernel needed the rows in the remaining blocks
to
> be in logical order (as opposed to the physical order in which they
were
> obtained), then the kernel would have to sort them.
> 
> This is how I think FF scan works. To be sure, trace a simple FF scan,
> using extended SQL trace (event 10046 level 8).
> 
> 
> Cary Millsap
> Hotsos Enterprises, Ltd.
> http://www.hotsos.com
> 
> Upcoming events:
> - Performance Diagnosis 101: 10/28 Phoenix, 11/19 Sydney
> - SQL Optimization 101: 12/8-12 Dallas
> - Hotsos Symposium 2004: March 7-10 Dallas
> - Visit www.hotsos.com for schedule details...
> 
> 
> -----Original Message-----
> Mladen Gogala
> Sent: Thursday, October 23, 2003 10:34 PM
> To: Multiple recipients of list ORACLE-L
> function?
> 
> B*tree indexes are ALWAY ordered. That's the way they're created and
> searched.
> I don't know the difference between full index scan and fast full
index
> scan.  
> I know that the latter is used when the tble rows are not needed.
Sounds
> like
> both methods are reading all leaf blocks, from start to finish, using

> multiblock read. I am not aware of any difference between the two
> methods.
> This sounds like a question for asktom or ixora (Tom Kyte or Steve
> Adams).
> Wolfgang Breitling and J. Lewis might also know.
> 
> On 2003.10.23 23:14, Larry Elkins wrote:
> > Because when doing an index range scan things are read ordered? Very
> > different from an index fast full scan where blocks are simply
grabbed
> where
> > they might lie?
> > 
> > Regards,
> > 
> > Larry G. Elkins
> > The Elkins Organization Inc.
> > [EMAIL PROTECTED]
> > 214.954.1781
> > 
> > > -----Original Message-----
> > > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Behalf
> Of
> > > Ryan
> > > Sent: Thursday, October 23, 2003 9:34 PM
> > > To: Multiple recipients of list ORACLE-L
> > > Subject: Re: index full scan over an index fast full scan in an
> analytic
> > > function?
> > >
> > >
> > > why would you not need a sort with a full index scan and need one
> with a
> > > fast full scan?
> > > ----- Original Message -----
> > > To: "Multiple recipients of list ORACLE-L" <[EMAIL PROTECTED]>
> > > Sent: Thursday, October 23, 2003 5:19 PM
> > > function?
> > >
> > >
> > > > Possibly to avoid a sort operation (assuming that you might be
> > > able to get
> > > > away with a NOSORT when doing the full index scan)? It might be
> deciding
> > > > that the benefit of the multi-block reads for the fast full
> > > scan are more
> > > > than offset by the sort operation that would be needed (and
might
> not be
> > > > needed when doing the full index scan).
> > > >
> > > > Regards,
> > > >
> > > > Larry G. Elkins
> > > > The Elkins Organization Inc.
> > > > [EMAIL PROTECTED]
> > > > 214.954.1781
> > > >
> > > > > -----Original Message-----
> > > > > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> Behalf Of
> > > > > [EMAIL PROTECTED]
> > > > > Sent: Thursday, October 23, 2003 2:39 PM
> > > > > To: Multiple recipients of list ORACLE-L
> > > > > Subject: Re: index full scan over an index fast full scan in
> > > an analytic
> > > > > function?
> > > > >
> > > > >
> > > > > i cant attach the 10053 trace. it has proprietary info. There
> > > > > isnt much in analytic explain plan either.
> > > > >
> > > > > does anyone know in general why a full scan would be faster
than
> > > > > a fast full scan?
> > > > > >
> > > > > > From: <[EMAIL PROTECTED]>
> > > > > > Date: 2003/10/23 Thu PM 03:09:26 EDT
> > > > > > To: Multiple recipients of list ORACLE-L
> <[EMAIL PROTECTED]>
> > > > > > Subject: index full scan over an index fast full scan in an
> > > > > analytic function?
> > > > > >
> > > > > > I have an index on the two columns used in this query. Why
> > > > > would the optimizer choose an index full scan over an index
fast
> > > > > full scan?
> > > > > >
> > > > > > My question isnt why an index is used, but the type of index
> scan?
> > > > > >
> > > > > > select *
> > > > > >     from (select col1, col2,
> > > > > >           dense_rank()
> > > > > >           over (partition by col1
> > > > > >                 order by col2 desc)tab
> > > > > >           from mytable)
> > > > > >    where tab = 1
> > > > > >
> > > > > > --
> > > > > > Please see the official ORACLE-L FAQ: http://www.orafaq.net
> > > > > > --
> > > > > > Author: <[EMAIL PROTECTED]
> > > > > >   INET: [EMAIL PROTECTED]
> > > > > >
> > > > > > Fat City Network Services    -- 858-538-5051
> http://www.fatcity.com
> > > > > > San Diego, California        -- Mailing list and web
> > > hosting services
> > > > > >
> > >
> ---------------------------------------------------------------------
> > > > > > To REMOVE yourself from this mailing list, send an E-Mail
> message
> > > > > > to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru')
> and in
> > > > > > the message BODY, include a line containing: UNSUB ORACLE-L
> > > > > > (or the name of mailing list you want to be removed from).
> You may
> > > > > > also send the HELP command for other information (like
> subscribing).
> > > > > >
> > > > >
> > > > > --
> > > > > Please see the official ORACLE-L FAQ: http://www.orafaq.net
> > > > > --
> > > > > Author: <[EMAIL PROTECTED]
> > > > >   INET: [EMAIL PROTECTED]
> > > > >
> > > > > Fat City Network Services    -- 858-538-5051
> http://www.fatcity.com
> > > > > San Diego, California        -- Mailing list and web hosting
> services
> > > > >
> ---------------------------------------------------------------------
> > > > > To REMOVE yourself from this mailing list, send an E-Mail
> message
> > > > > to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru')
and
> in
> > > > > the message BODY, include a line containing: UNSUB ORACLE-L
> > > > > (or the name of mailing list you want to be removed from).
You
> may
> > > > > also send the HELP command for other information (like
> subscribing).
> > > > >
> > > >
> > > > --
> > > > Please see the official ORACLE-L FAQ: http://www.orafaq.net
> > > > --
> > > > Author: Larry Elkins
> > > >   INET: [EMAIL PROTECTED]
> > > >
> > > > Fat City Network Services    -- 858-538-5051
> http://www.fatcity.com
> > > > San Diego, California        -- Mailing list and web hosting
> services
> > > >
> ---------------------------------------------------------------------
> > > > To REMOVE yourself from this mailing list, send an E-Mail
message
> > > > to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and
> in
> > > > the message BODY, include a line containing: UNSUB ORACLE-L
> > > > (or the name of mailing list you want to be removed from).  You
> may
> > > > also send the HELP command for other information (like
> subscribing).
> > >
> > > --
> > > Please see the official ORACLE-L FAQ: http://www.orafaq.net
> > > --
> > > Author: Ryan
> > >   INET: [EMAIL PROTECTED]
> > >
> > > Fat City Network Services    -- 858-538-5051
http://www.fatcity.com
> > > San Diego, California        -- Mailing list and web hosting
> services
> > >
> ---------------------------------------------------------------------
> > > To REMOVE yourself from this mailing list, send an E-Mail message
> > > to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and
in
> > > the message BODY, include a line containing: UNSUB ORACLE-L
> > > (or the name of mailing list you want to be removed from).  You
may
> > > also send the HELP command for other information (like
subscribing).
> > >
> > 
> > --
> > Please see the official ORACLE-L FAQ: http://www.orafaq.net
> > --
> > Author: Larry Elkins
> >   INET: [EMAIL PROTECTED]
> > 
> > Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
> > San Diego, California        -- Mailing list and web hosting
services
> >
---------------------------------------------------------------------
> > To REMOVE yourself from this mailing list, send an E-Mail message
> > to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
> > the message BODY, include a line containing: UNSUB ORACLE-L
> > (or the name of mailing list you want to be removed from).  You may
> > also send the HELP command for other information (like subscribing).
> >
> 
> -- 
> Mladen Gogala
> Oracle DBA
> -- 
> Please see the official ORACLE-L FAQ: http://www.orafaq.net
> -- 
> Author: Mladen Gogala
>   INET: [EMAIL PROTECTED]
> 
> Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
> San Diego, California        -- Mailing list and web hosting services
> ---------------------------------------------------------------------
> To REMOVE yourself from this mailing list, send an E-Mail message
> to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
> the message BODY, include a line containing: UNSUB ORACLE-L
> (or the name of mailing list you want to be removed from).  You may
> also send the HELP command for other information (like subscribing).
> 
> -- 
> Please see the official ORACLE-L FAQ: http://www.orafaq.net
> -- 
> Author: Cary Millsap
>   INET: [EMAIL PROTECTED]
> 
> Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
> San Diego, California        -- Mailing list and web hosting services
> ---------------------------------------------------------------------
> To REMOVE yourself from this mailing list, send an E-Mail message
> to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
> the message BODY, include a line containing: UNSUB ORACLE-L
> (or the name of mailing list you want to be removed from).  You may
> also send the HELP command for other information (like subscribing).
> 

-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.net
-- 
Author: <[EMAIL PROTECTED]
  INET: [EMAIL PROTECTED]

Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
San Diego, California        -- Mailing list and web hosting services
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).

-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.net
-- 
Author: Cary Millsap
  INET: [EMAIL PROTECTED]

Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
San Diego, California        -- Mailing list and web hosting services
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).

Reply via email to