Oracle 11g direct path read 等待事件的理解
direct path read較高的可能原因有:
1. 大量的磁碟排序操作,order by, group by, union, distinct, rollup, 無法在PGA中完成排序,需要利用temp表空間進行排序。 當從臨時表空間中讀取排序結果時,會產生direct path read.
2. 大量的Hash Join操作,利用temp表空間儲存hash區。
3. SQL語句的並行處理
4. 大表的全表掃描,在中,全表掃描的演算法有新的變化,根據表的大小、快取記憶體的大小等資訊,決定是否繞過SGA直接從磁碟讀Oracle11g取資料。而 10g則是全部透過快取記憶體讀取資料,稱為table scan(large)。11g認為大表全表時使用直接路徑讀,可能比10g中的資料檔案雜湊讀(db file scattered reads)速度更快,使用的latch也更少。
大量的direct path read等待時間最可能是一個應用程式問題。 direct path read事件由SQL語句驅動,這些SQL語句執行來自臨時的或常規的表空間的直接讀取操作。 當輸入的內容大於PGA中的工作區域時,帶有需要排序的函式的SQL語句將排序結果寫入到臨時表空間中,臨時表空間中的排序順序串隨後被合併,用於提供最 終的結果。讀取排序結果時,Oracle會話在direct path read等待事件上等待。DB_FILE_DIRECT_IO_COUNT初始化引數可能影響direct path read的效能。
一個隱含引數:
_serial_direct_read = false 禁用direct path read
_serial_direct_read = true 啟用direct path read
alter sytem set "_serial_direct_read"=never scope=both sid='*'; 可以顯著減少 direct path read
出處:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29119536/viewspace-1436724/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- direct path read/read temp等待事件事件
- 【TUNE_ORACLE】等待事件之IO等待“direct path read”Oracle事件
- 11g direct path read 等待事件的實驗分析事件
- 11g direct path read 等待事件的初步探討事件
- Oracle常見等待事件之direct path read/writeOracle事件
- ORACLE等待事件:direct path writeOracle事件
- 11g中direct path read事件等待很高的一個案例事件
- Oracle中的direct path read事件(轉)Oracle事件
- Oracle11gR2後direct path read等待事件的改變Oracle事件
- 等待事件 direct path read 與11g中的非並行直接讀事件並行
- direct path read/write等待的分析
- 【效能調整】等待事件(六) direct path read&write事件
- oracle等待事件2構造一個DB File Sequential Read等待事件和構造一個Direct Path ReadOracle事件
- 【TUNE_ORACLE】等待事件之IO等待“direct path write”Oracle事件
- enq: KO - fast object checkpoint 等待事件與 direct path read - 1ENQASTObject事件
- enq: KO - fast object checkpoint 等待事件與 direct path read - 2ENQASTObject事件
- enq: KO - fast object checkpoint 等待事件與 direct path read - 3ENQASTObject事件
- 【TUNE_ORACLE】等待事件之IO等待“direct path write temp”Oracle事件
- oracle等待事件3構造一個Direct Path write等待事件和構造一個Log File Sync等待事件Oracle事件
- 解決direct path read 與 direct path write問題
- Oracle 11g全表掃描以Direct Path Read方式執行Oracle
- zt_direct path read temp等待如何解決_wait eventAI
- 等待事件db file sequential read、db file scattered read和direct read的區別事件
- Oracle direct path read相關隱含引數Oracle
- Oracle 11g新特性direct path read引發的系統停運故障診斷處理Oracle
- 【TUNE_ORACLE】等待事件之IO等待“read by other session”Oracle事件Session
- Oracle 11g 中 Direct path reads 特性 說明Oracle
- 一次direct path read 故障處理
- 0322理解db file parallel read等待事件2Parallel事件
- 0316理解db file parallel read等待事件Parallel事件
- direct path read wait event 的處理辦法AI
- 【TUNE_ORACLE】等待事件之IO等待“db file sequential read”Oracle事件
- 【TUNE_ORACLE】等待事件之IO等待“db file scattered read”Oracle事件
- Oracle Direct-Path InsertOracle
- read by other session等待事件Session事件
- 等待事件:read by other session事件Session
- 【等待事件】read by other session事件Session
- read by other session 等待事件分析Session事件