Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Explain plan help

Re: Explain plan help

From: Walt <walt_askier_at_SPAMDAMyahoo.com>
Date: Thu, 06 May 2004 16:16:00 -0400
Message-ID: <409A9D00.349DAA91@SPAMDAMyahoo.com>


Chuck wrote:
>
> I have the following showing up in an explain plan. There's not much
> good documentation on the FILTER operation. Can someone tell me exactly
> how this filter is getting it's results? Is it joining the two tables?
> If so is it a hash join, sort/merge, or is it as I suspect doing a
> nested loops, scanning table B for every row in table A?

Unfortunately, it's the latter. TABLE ACCESS FULL is generally a bad thing in an Explain Plan unless the table is really small. If I'm reading this right and you're joining a 300 Million row table with a 13 thousand row table, and the plan is for full table scans, you've got a performance problem.

I'm hardly an expert on tuning, but I've found that the cost-based optimizer with properly indexed and analyzed tables usually provides adequate performance. I only resort to hints if cost-based is not giving me what I want. Of course, I don't tend to deal with 300 million record tables, so your mileage may vary.

So, do you have indexes on the following fields? olm_report_perform_to_category.scorecard_id olm_report_perform_to_category.category_id score.scorecard_id
score.category_id
NOTE: a composite index on more than one field may not be enough.

Have you analyzed the tables? (necessary so that the optimizer has a chance to act inteligently)

Is your instance set to use cost-based optimization?

What Oracle version? What OS?

-- 
//-Walt
// 
//
Received on Thu May 06 2004 - 15:16:00 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US