enq: TX - index contention常由 大量并发INSERT 造成的 index split 引起。下面截取部分有问题的
awr:
awr:
![](https://img-my.csdn.net/uploads/201302/26/1361844737_4657.png)
可以看到在awr中 发生过 3412次的 index leaf block split , 15次的branch block split
建议:
1. 定期对 DLog 相关的索引执行 coalesce 操作 而非 rebuild 操作。 rebuild 可能导致索引高度下降,当再有 大量插入后可能会导致索引root node split
2. 分区表的话,考虑使用global hash index ,global hash index可以很大程度上避免索引插入争用。
1. 定期对 DLog 相关的索引执行 coalesce 操作 而非 rebuild 操作。 rebuild 可能导致索引高度下降,当再有 大量插入后可能会导致索引root node split
2. 分区表的话,考虑使用global hash index ,global hash index可以很大程度上避免索引插入争用。
SQL> analyze index business.PK_TINSURED validate structure;
Index analyzed.
SQL> select blocks,lf_blks,del_lf_rows from index_stats;
BLOCKS LF_BLKS DEL_LF_ROWS
---------- ---------- -----------
219608 213822 334
SQL> alter index business.PK_TINSURED coalesce;
Index altered.
Elapsed: 00:01:56.97
SQL> analyze index business.PK_TINSURED validate structure;
Index analyzed.
Elapsed: 00:00:27.93
SQL> select blocks,lf_blks,del_lf_rows from index_stats;
BLOCKS LF_BLKS DEL_LF_ROWS
---------- ---------- -----------
219608 165849 0