最终,当向表添加行时,数据库服务器用指向所有现有叶节点的节点指针填充根节点。当数据库服务器分割另一个叶节点,而根节点没有空间用于额外的节点指针时,那么发生以下过程。
数据库服务器分割根节点并将其内容分到两个新创建的分支节点上。随着索引项的添加,越来越多的叶节点被分割,这导致数据服务器添加更多的分支节点。最终,根节点充满了指向这些分支节点的指针。当发生这种情况时,数据库服务器重新分割根节点。然后,数据库服务器在根节点和较低的分支级别之间创建另一个分支级别。该过程导致 4 个级别的树,它带有一个根节点、两个分支级别和一个叶级别。B-tree 结构可以这种方式继续增长到最大 20 级。
图: 分支节点的典型内容