叶页和非叶页有什么区别?

mel*_*onk 19 index sql-server-2008 sql-server database-internals

我一直在运行一些索引使用报告,我正在尝试获得LeafNon-leaf的定义。似乎有叶和非叶插入、更新、删除、页面合并和页面分配。我真的不知道这意味着什么,或者一个是否比另一个更好。

如果有人可以给出每个的简单定义,并解释为什么叶子或非叶子很重要,将不胜感激!

Tho*_*ger 24

可以这样想:叶级页面是通过索引的 B 树结构进行数据搜索的终点。它们包含在索引定义中定义的数据(或者在聚集索引的情况下,表的所有数据)和数据行的行定位器(在非聚集索引的情况下)。

非叶级页面通过包含键值以及指向另一个非叶级页面的指针(取决于 B 树深度和中间页面的位置)来包含到叶级页面/数据的“路线图” ) 或结果叶级页(非聚集索引的索引页和聚集索引的数据页)。

编辑:这是一个很好的图片,可以为这个想法添加图片。

在此处输入图片说明

  • 很好的答案,但您应该链接到您的来源(尤其是在复制图像时):http://technet.microsoft.com/en-us/library/ms177443%28v=sql.105%29.aspx (2认同)