【ASK_ORACLE】由於索引分裂而產生的效能問題的解決方案
環境資訊
OS:RHEL 6.10
Grid&DB:Oracle 11.2.0.4
問題描述
接到開發反饋夜間跑批業務非常緩慢,需要協助排查。抓取AWR報告發現,在“Top 5 Timed Events”這一欄裡首當其衝的等待事件就是“enq: TX - index contention”,第一反應就是大量高併發的DML操作導致了索引分裂產生的效能問題(幸虧這個庫不是RAC,不然情況更嚴重)。
注:索引分裂的知識點可參考:
關於Oracle索引分裂你需要知道的: http://blog.itpub.net/69992972/viewspace-2916305/
接著找到發生分裂的索引:
Segments by Row Lock Waits: Owner Tablespace Object Name Obj.Type Row Lock Waits % of Capture PLIS PLIS pl_status_idx INDEX 6,981 92.07 PLIS PLIS pl_pos_idx INDEX 1,557 23.91 PLIS PLIS pl_zt_idx INDEX 976 15.56
注:也可以在動態效能檢視v$segment_statistics裡查到
解決辦法
由於索引分裂是由於索引塊的競爭壓力過大,產生了索引熱塊,有兩種解決辦法來減少索引熱塊:
1. 建立hash分割槽索引
2. 建立反向索引
由於跑批的表不是分割槽表,所以採用第二種方式,把上面的三個索引刪除並重建:
create index pl_status_idx on xxx.xxx REVERSE; create index pl_pos_idx on xxx.xxx REVERSE; create index pl_zt_idx on xxx.xxx REVERSE;
注:另外一種方法也可以嘗試,如果此時的delete操作已經結束,可以rebuild或者shrink索引,語法如下:
alter index pl_status_idx rebuild; alter index pl_status_idx shrink space;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69992972/viewspace-2916300/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【ASK_ORACLE】關於Oracle索引分裂你需要知道的Oracle索引
- 使用 IBM 效能分析工具解決生產環境中的效能問題IBM
- 在用package方式產生.xml時由於有&造成問題的處理PackageXML
- dsp builder 11.0 使用過程中產生的問題及解決方案UI
- 解決生產日誌重複列印的問題
- 資料庫索引分裂 問題分析資料庫索引
- 用於巧克力生產的RFID完整解決方案
- 由於Standby停機造成主備歸檔不一致,從而產生GAP的解決方案_20100128
- GlobalFoundries生產eMRAM解決方案
- 請多討論問題,而不是解決方案 - frankel
- 報表的效能問題是怎樣產生的?又該如何解決?
- 索引分裂的enq索引ENQ
- Spark效能優化的10大問題及其解決方案Spark優化
- 優思學院|精益生產的各種問題和解決方案
- 生產系統中EXP-00000的問題及解決
- 不能建立降序索引的問題的解決索引
- 由於內部連線引起的Oracle RAC效能問題Oracle
- 關於生產系統鎖問題的排查
- 先裝VS後裝IIS產生問題的解決辦法。
- 建立聯合函式索引解決top sql效能問題函式索引SQL
- oracle優化之生產系統不改程式碼解決SQL效能問題的幾種方法Oracle優化SQL
- 【ASK_ORACLE】資料泵由於”Streams AQ: Enqueue Blocked On Low Memory" 問題變慢OracleENQBloC
- 【PWA學習與實踐】(9)生產環境中PWA實踐的問題與解決方案
- 淺談精益生產與其他問題解決方法的區別
- 解決吞吐效能問題時的思路
- JDK1.2關於JDBC中文問題的解決方案 (轉)JDKJDBC
- 玩Deno遇到問題的解決方案
- Nginx跨域的問題解決方案Nginx跨域
- Mycat分片方案需要解決的問題
- git 常見問題的解決方案Git
- 一個小問題的解決方案
- 寫了一個SAP得關於專案型生產的FICO模組的解決方案
- 通用模板解決方案,提升影片生產效率
- 關於JS的浮點數計算精度問題解決方案JS
- 關於分散式事務帶來的問題及解決方案分散式
- 對於python中出現UnicodeDecodeError問題的解決方案PythonUnicodeError
- Kafka常見的問題及解決方案Kafka
- 關於Hash 函式 雜湊索引表 解決位置衝突的問題函式索引