ここで示す例では、「動的パフォーマンス・ビューを使用したパラレル実行パフォーマンスの監視」で説明した動的パフォーマンス・ビューを使用します。
GV$PX_SESSIONを使用して、パラレルで実行するサーバー・グループの構成を判別します。この例では、セッション9が問合せコーディネータ、セッション7および21が最初のセットの最初のグループにあります。セッション18および20は2番目のセットの最初のグループです。この問合せでリクエストされたOPと与えられたDOPはどちらも2です。これは、次の問合せによる出力に示されます。
SELECT QCSID, SID, INST_ID "Inst", SERVER_GROUP "Group", SERVER_SET "Set", DEGREE "Degree", REQ_DEGREE "Req Degree" FROM GV$PX_SESSION ORDER BY QCSID, QCINST_ID, SERVER_GROUP, SERVER_SET;
出力は次のようになります。
QCSID SID Inst Group Set Degree Req Degree
---------- ---------- ---------- ---------- ---------- ---------- ----------
9 9 1
9 7 1 1 1 2 2
9 21 1 1 1 2 2
9 18 1 1 2 2 2
9 20 1 1 2 2 2
シングル・インスタンスの場合、SELECT FROM V$PX_SESSIONを使用します。列名Instance IDは含めません。
GV$PX_SESSIONを使用した前の例の出力に表示されるプロセスが、同じタスクを完了するために連携します。次の例は、物理読取りに関してこれらのプロセスの進捗を判別するための、結合問合せの実行を示します。次の問合せを使用して特定の統計を追跡できます。
SELECT QCSID, SID, INST_ID "Inst", SERVER_GROUP "Group", SERVER_SET "Set", NAME "Stat Name", VALUE FROM GV$PX_SESSTAT A, V$STATNAME B WHERE A.STATISTIC# = B.STATISTIC# AND NAME LIKE 'PHYSICAL READS' AND VALUE > 0 ORDER BY QCSID, QCINST_ID, SERVER_GROUP, SERVER_SET;
出力は次のようになります。
QCSID SID Inst Group Set Stat Name VALUE
------ ----- ------ ------ ------ ------------------ ----------
9 9 1 physical reads 3863
9 7 1 1 1 physical reads 2
9 21 1 1 1 physical reads 2
9 18 1 1 2 physical reads 2
9 20 1 1 2 physical reads 2
このタイプの問合せを使用して、V$STATNAMEの統計を追跡します。問合せサーバー・プロセスの進捗を確認するには、この問合せを必要な回数繰り返します。
次の問合せは、V$PX_PROCESSを使用して問合せサーバーのステータスを調べます。
SELECT * FROM V$PX_PROCESS;
出力は次のようになります。
SERV STATUS PID SPID SID SERIAL# IS_GV CON_ID ---- --------- ------ --------- ------ ------- ----- ------- P002 IN USE 16 16955 21 7729 FALSE 0 P003 IN USE 17 16957 20 2921 FALSE 0 P004 AVAILABLE 18 16959 FALSE 0 P005 AVAILABLE 19 16962 FALSE 0 P000 IN USE 12 6999 18 4720 FALSE 0 P001 IN USE 13 7004 7 234 FALSE 0