행위

10384 event

DB CAFE

Dbcafe (토론 | 기여)님의 2024년 8월 22일 (목) 18:24 판 (10384 event 트레이스)
thumb_up 추천메뉴 바로가기


10384 event 트레이스[편집]

alter session set events '10384 trace name context forever , level 16384';

<your parallel query goes here>

alter session set events '10384 trace name context off';
  1. 10384 이벤트에서 쿼리는 여전히 병렬 실행 계획을 가지고 있지만, 쿼리 코디네이터(QC)만 이 SQL 명령을 실행하고 병렬 슬레이브가 시작되지 않습니다.
  2. 따라서 1개의 프로세스만 실행되므로 실제 행과 같은 정보를 더 쉽게 수집할 수 있습니다.
  • 다음 명령은 직렬실행계획(serial paln)을 만들고 병렬 실행 계획과 다르다.
    alter session disable parallel query;
  • 이 예시는 차이를 보여주기 위해 gather_plan_statistics 힌트를 사용
SQL> set linesize 150
SQL> set pagesize 2000
SQL> alter session set events '10384 trace name context forever , level 16384';
SQL>  select /*+  gather_plan_statistics  */ * from emp e;
SQL> select * from TABLE(dbms_xplan.display_cursor( null, null, 'ALL IOSTATS LAST'))
SQL> alter session set events '10384 trace name context off';
Here is the output with the event 16384
------------------------------------------------------------------------------------------
|Id|Operation            |Name|Start|E-Row|E-Byte|Cost| TQ  |IN-OU|PQ Distr |A-Row|Buffer|
------------------------------------------------------------------------------------------
| 1| PX COORDINATOR      |    | 1   |     |      |    |     |     |         | 14  |   9  |
| 2|  PX SEND QC (RANDOM)|:TQ1| 1   | 14  | 518  |  2 |Q1,00|P->S |QC (RAND)| 14  |   9  |
| 3|   PX BLOCK ITERATOR |    | 1   | 14  | 518  |  2 |Q1,00|PCWC |         | 14  |   9  |
|*4|    TABLE ACCESS FULL|EMP | 1   | 14  | 518  |  2 |Q1,00|PCWP |         | 14  |   9  |
------------------------------------------------------------------------------------------
and here is the output without the event 10384
 
------------------------------------------------------------------------------------------
|Id|Operation            |Name|Start|E-Row|E-Byte|Cost| TQ  |IN-OU|PQ Distr |A-Row|Buffer|
------------------------------------------------------------------------------------------
| 1| PX COORDINATOR      |    | 1   |     |      |    |     |     |         | 14  |   2  |
| 2|  PX SEND QC (RANDOM)|:TQ1| 0   | 14  | 518  |  2 |Q1,00|P->S |QC (RAND)|  0  |   0  |
| 3|   PX BLOCK ITERATOR |    | 0   | 14  | 518  |  2 |Q1,00|PCWC |         |  0  |   0  |
|*4|    TABLE ACCESS FULL|EMP | 0   | 14  | 518  |  2 |Q1,00|PCWP |         |  0  |   0  |
------------------------------------------------------------------------------------------
  • 차이점은 2단계에서 4단계까지 볼 수 있는 이벤트가 없으면 A-Row 열이 숫자 0을 보여준다는 것입니다.
  • /*+ gather_plan_statistics */ 힌트는 쿼리 코디네이터의 정보만 수집하고 병렬 슬레이브와 쿼리 코디네이터의 통계를 결합하지 않습니다.