Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: explain plan
"Michele Campagni" <michele.campagni_at_libero.it> wrote in message
news:4411a025$0$29096$5fc30a8_at_news.tiscali.it...
>I have the following execution plan for a parallel query but I can't find
>any information about the "TQ" field. Someone can tell me where I can found
>informations about it's meaning? I try Oracle manual (Performance tuning
>guide) but found
>nothing...-----------------------------------------------------------------------------------------------------------------|
>Id | Operation | Name | Rows | Bytes | Cost (%CPU)|
>Time | TQ |IN-OUT| PQ Distrib
>|-----------------------------------------------------------------------------------------------------------------|
>0 | SELECT STATEMENT | | 1505K| 476M| 7400 (1)|
>00:01:29 | | | || 1 | PX COORDINATOR | |
>| | | | | | || 2 | PX
>SEND QC (RANDOM) | :TQ10002 | 1505K| 476M| 7400 (1)| 00:01:29 |
>Q1,02 | P->S | QC (RAND) ||* 3 | HASH JOIN | |
>1505K| 476M| 7400 (1)| 00:01:29 | Q1,02 | PCWP | || 4 |
>PX RECEIVE | | 150K| 27M| 499 (1)| 00:00:06 |
>Q1,02 | PCWP | || 5 | PX SEND HASH | :TQ10001 |
>150K| 27M| 499 (1)| 00:00:06 | Q1,01 | P->P | HASH || 6 |
>PX BLOCK ITERATOR | | 150K| 27M| 499 (1)| 00:00:06 |
>Q1,01 | PCWC | || 7 | TABLE ACCESS FULL| CUSTOMER |
>150K| 27M| 499 (1)| 00:00:06 | Q1,01 | PCWP | || 8 |
>BUFFER SORT | | | | | |
>Q1,02 | PCWC | || 9 | PX RECEIVE | |
>1500K| 205M| 6893 (1)| 00:01:23 | Q1,02 | PCWP | || 10 |
>PX SEND HASH | :TQ10000 | 1500K| 205M| 6893 (1)| 00:01:23 | |
>S->P | HASH ||* 11 | TABLE ACCESS FULL| ORDERS | 1500K|
>205M| 6893 (1)| 00:01:23 | | |
>|-----------------------------------------------------------------------------------------------------------------
>
>
The TQ column is a derived value in this output. The different layers of parallel slaves communicate through "virtual tables" called table queues.
The names of these table queues appear in the name column of the plan_table output with names like :TQn000m
The rows of the plan table which participate in creating a table queue are labelled in the output as Qn,m. (The values come from the object_node column of the plan table, where the format is Qn000m)
The "n" is the data flow operation, and the "m" is the table queue within data flow. (Parallel queries often have only one data flow operation, so you tend to see only Q1, m).
The numbering of the table queues usually indicates the order of generation of virtual tables - but I am a little puzzled by what your query execution plan is showing. Can you post the original query.
-- Regards Jonathan Lewis http://www.oracle.com/technology/community/oracle_ace/ace1.html#lewis The Co-operative Oracle Users' FAQ http://www.jlcomp.demon.co.uk/faq/ind_faq.html Cost Based Oracle: Fundamentals http://www.jlcomp.demon.co.uk/cbo_book/ind_book.htmlReceived on Fri Mar 10 2006 - 17:22:58 CST
![]() |
![]() |