监控视图 oracle,Oracle“并行执行”之四——监控视图
摘自《VLDB and Partitioning Guide》
1、視圖介紹
V$PX_BUFFER_ADVICE
提供所有并行查詢的BUFFER的歷史使用情況,以及相關的建議規劃。對于并行執行過程中的內存不足等問題,可以查詢這個視圖以便能夠重新配置一下SGA。
V$PX_SESSION
提供關于并行進程會話、服務器組、服務器集合、服務器數量的信息,也提供實時的并行服務器進程信息。同時可以通過這個視圖查看并行語句的請求DOP和實際DOP等信息。
V$PX_SESSTAT
將V$PX_SESSION和V$SESSTAT進行JOIN操作,所以此視圖可以提供所有并行會話的統計信息。
V$PX_PROCESS
提供所有并行process的信息,包括狀態、會話ID、進程ID以及其它信息。
V$PX_PROCESS_SYSSTAT
提供并行服務器的狀態信息及BUFFER的分配信息。
V$PQ_SLAVE
列出所有并行服務器的統計信息。
V$PQ_SYSSTAT
列出并行查詢的系統統計信息。
V$PQ_SESSTAT
列出并行查詢的會話統計信息。只有并行語句執行完畢后,才能查看到此視圖的會話統計信息。
V$PQ_TQSTAT
提供并行操作的統計信息,能夠顯示每個階段的每個并行服務器處理的行數、字節數。
只有并行語句執行完畢后,才能查看到此視圖的會話統計信息,而且只能保留到會話的有效期。對于并行DML,只有提交或回滾后方能顯示此視圖的相關統計信息。
2、常用腳本
1)查看系統中并行統計信息,是否實際使用了請求的DOP,以及這些操作是否發生降級:
SELECT NAME,VALUE FROM v$sysstat t WHERE t.NAME LIKE '%Parallel%';
NAME VALUE
Parallel operations not downgraded 4
Parallel operations downgraded to serial 0
Parallel operations downgraded 75 to 99 pct 0
Parallel operations downgraded 50 to 75 pct 0
Parallel operations downgraded 25 to 50 pct 0
Parallel operations downgraded 1 to 25 pct 0
2)查看V$PQ_SYSSTAT視圖中并行從屬服務器統計信息。通過查看這些信息,可以看出數據庫中的并行設置是否正確。如果看到服務器關閉(Servers Shutdown)和服務器啟動值較高,則可能表明PARALLEL_MIN_SERVERS參數的設置值過低,因為持續不斷啟動和關閉并行進程需要相應的成本支出。
SELECT * FROM V$PQ_SYSSTAT;
STATISTIC VALUE
Servers Busy 8
Servers Idle 8
Servers Highwater 16
Server Sessions 59
Servers Started 35
Servers Shutdown 19
Servers Cleaned Up 0
Queries Queued 0
Queries Initiated 4
Queries Initiated (IPQ) 0
DML Initiated 0
DML Initiated (IPQ) 0
DDL Initiated 0
DDL Initiated (IPQ) 0
DFO Trees 4
Sessions Active 1
Local Msgs Sent 41706
Distr Msgs Sent 0
Local Msgs Recv'd 78048
Distr Msgs Recv'd 0
3)查詢V$PQ_TQSTAT視圖,可以確定各個并行服務器之間如何拆分工作的,也可以顯示時間使用的DOP。不過查詢此視圖時,需要在并行操作同一個會話中執行方可顯示信息。
SELECT * FROM V$PQ_TQSTAT;
DFO_NUMBER TQ_ID SERVER_TYPE NUM_ROWS BYTES OPEN_TIME AVG_LATENCY WAITS TIMEOUTS PROCESS INSTANCE
1 0 Producer 1 36 0 0 13 0 P001 1
1 0 Producer 1 36 0 0 12 0 P004 1
1 0 Producer 1 36 0 0 13 0 P003 1
1 0 Producer 1 36 0 0 13 0 P000 1
1 0 Producer 1 36 0 0 13 0 P002 1
1 0 Producer 1 36 0 0 13 1 P006 1
1 0 Producer 1 36 0 0 13 0 P007 1
1 0 Producer 1 36 0 0 14 1 P005 1
1 0 Consumer 8 288 0 0 154 42 QC 1
4)查詢V$SYSTEM_EVENT或者V$SESSION_EVENT視圖,可以知道數據庫中與并行相關的等待。
sql> SELECT event,wait_class,total_waits FROM V$SYSTEM_EVENT WHERE event LIKE 'PX%';
EVENT WAIT_CLASS TOTAL_WAITS
------------------------------ ---------- -----------
PX Deque wait Idle 3
PX Idle Wait Idle 94
PX Deq: Join ACK Idle 59
PX Deq Credit: need buffer Idle 1009
PX Deq Credit: send blkd Idle 4609
PX Deq: Parse Reply Idle 56
PX Deq: Execute Reply Idle 323
PX Deq: Execution Msg Idle 376
PX Deq: Table Q Normal Idle 77772
PX qref latch Other 14
PX Deq: Signal ACK RSG Other 8
EVENT WAIT_CLASS TOTAL_WAITS
------------------------------ ---------- -----------
PX Deq: Signal ACK EXT Other 11
PX Deq: Slave Session Stats Other 22
13 rows selected.
總結
如果覺得編程之家網站內容還不錯,歡迎將編程之家網站推薦給程序員好友。
本圖文內容來源于網友網絡收集整理提供,作為學習參考使用,版權屬于原作者。
總結
以上是生活随笔為你收集整理的监控视图 oracle,Oracle“并行执行”之四——监控视图的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mac 如何配置mysql_MAC下安装
- 下一篇: ENSP配置 实例七 DHCP配置