【ASK_ORACLE】關於Oracle索引分裂你需要知道的
等待事件“enq: TX - index contention”與索引分裂
在執行高併發 insert(主要原因)或者delete操作時,有可能就會看到該SQL對應的索引上的的大量TX佇列發生爭用(RAC環境下可能所有節點都會產生)。這種問題就是由於insert了一行,索引也會跟著增加,當在索引塊中找不到需要插入新行的空間時就會產生索引分裂。並且在索引完成分裂前,就會產生等待事件“enq: TX - index contention”,直到索引分裂完成。
索引分裂種類
葉節點分裂( leaf block split)
枝節點分裂( branch block split)
根節點分裂( root block split)
產生索引分裂的過程
1. 首先,DB劃分出一個新的索引塊
2. 其次,按一定比例複製行到新索引塊
3. 最後,將新索引塊新增到索引結構中
索引分裂的幾種發生條件
1. 大量訪問的表的索引
2. 先執行資料量很大的delete,然後立馬又進行大批次insert
3. 索引只往右邊生長增長,導致增長失衡
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69992972/viewspace-2916305/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【ASK_ORACLE】由於索引分裂而產生的效能問題的解決方案Oracle索引
- 關於跨域你需要知道的跨域
- 關於CSS Transition,你需要知道的事CSS
- 【ASK_ORACLE】你需要知道的對資料檔案dbf的一些基礎操作Oracle
- 關於Android模組化你需要知道的Android
- [譯] 關於 Angular 動態元件你需要知道的Angular元件
- 關於webpack優化,你需要知道的事(上篇)Web優化
- Oracle索引塊分裂split資訊彙總Oracle索引
- 你需要知道的關於 Go 包的一切Go
- 【ASK_ORACLE】你知道怎麼又快同時又幹淨地關閉Oracle資料庫嗎?Oracle資料庫
- ORACLE 12c索引分裂引起的會話夯Oracle索引會話
- 關於Service你所需要知道內容(一)
- 【ASK_ORACLE】Oracle 12c之CDB與PDB的備份與恢復(二)備份恢復之前你需要知道的Oracle
- [譯] 關於 `ExpressionChangedAfterItHasBeenCheckedError` 錯誤你所需要知道的事情ExpressError
- 關於索引必須知道的知識索引
- 關於SCN需要知道的事
- 關於神經網路:你需要知道這些神經網路
- 關於進入遊戲行業你需要知道的事遊戲行業
- 關於 v-model 你需要知道的這一切!
- 關於Vue v-model你需要知道的一切Vue
- 關於專案採購管理,這些你需要知道
- 關於 iOS 上的 PWA 應用,你需要知道些什麼?iOS
- [譯] 關於 Yarn 和 npm 你所需要知道的一切YarnNPM
- 關於轉儲Oracle索引資訊的相關命令Oracle索引
- 關於 jwt ,你應該知道的JWT
- 關於註解我們需要知道的
- 在使用Redux前你需要知道關於React的8件事ReduxReact
- 關於 TDengine 3.0 資料訂閱,你需要知道這些
- [譯] 關於 Angular 的變化檢測,你需要知道的一切Angular
- [譯] 關於Angular的變更檢測(Change Detection)你需要知道這些Angular
- 你需要知道這些關於技術美術的知識構成
- 關於Java高併發程式設計你需要知道的“升段攻略”Java程式設計
- 關於 jwt 你應該知道的事情JWT
- 你需要知道的kafkaKafka
- 你需要知道的SymbolsSymbol
- 【格物獵蹤】關於OpenVPN反射攻擊,你還需要知道這些!反射
- 關於 sudo 你可能不知道的
- 關於WSL2你應該知道的