最近在看BTREE索引的结构原理,有些地方一直没法理解:
By design, B-Tree indexes are always balanced. This is true because the
Oracle Server continually splits full index blocks as new values are added to
the table that the index is built on. However, as insert and delete activity
occurs on a table, its associated indexes can develop many levels.
哪位朋友能帮忙解释一下上面这段话??万分感谢!!
最初由 fly_bug 发布
[B]最近在看BTREE索引的结构原理,有些地方一直没法理解:
By design, B-Tree indexes are always balanced. This is true because the
Oracle Server continually splits full index blocks as new values are added to
the table that the index is built on. However, as insert and delete activity
occurs on a table, its associated indexes can develop many levels.
哪位朋友能帮忙解释一下上面这段话??万分感谢!! [/B]
哪些地方不好理解了?
B*-tree indexes 通常又称平衡树索引
平衡是自动维护的.插入会导致索引节点分裂.分裂也一直保持平衡.
在B*-tree中,到达所有叶节点在同一层次上,所以导航到叶结点通常需要大致相同的时间.
在频繁插入删除的表上的索引,可能会导致频繁分裂而增加层次.
但是通常超过3层的索引比较少见.