gpt4 book ai didi

database - 为什么在这个 B-Tree 查找中有两个叶节点?

转载 作者:搜寻专家 更新时间:2023-10-30 23:43:48 24 4
gpt4 key购买 nike

在这

enter image description here

图形,我们正在 B 树中查找 employee_id 123 和 subsidary_id 20(来自数据库索引教程)。树上有两个叶节点分支。这纯粹是演示,还是我遗漏了什么,因为我认为唯一需要检查的叶节点是最上面的节点,因为它的 employee_id 最大值为 123,subsidary_id 最大值为 27。

最佳答案

该图本身并没有显示该特定搜索的操作,而是显示了树的本地化部分,因此我不会针对特定查询过多地阅读它。

您在搜索键 123-20 时完全正确,您永远不需要跟随到第二个叶节点的链接(无论是通过左侧的分层链接,还是顺序链接)上面的链接)。

但是(如果不看原始资料就很难判断),这张图很可能也可以用于其他用途。

它显示连续叶节点之间的链接这一事实意味着使用索引查找来定位特定条目然后按顺序处理它们将非常容易。

我的意思是这样的查询“给我所有员工 ID 为 123 的记录”,或“给我所有员工 ID 在 123456 之间的记录” >”,或“按 employeeID/subsidiaryID 顺序给我所有记录”。

所有这些查询都需要使用分层路径查找特定记录(尽管最后一个可能有更快的路径直接指向第一条记录),然后遵循后续记录的顺序路径。

此外,20 的子公司 ID 均为红色,这意味着这将是一个理想的机会,让读者了解 employee-subsidiary 索引不一定是所有查询的最佳索引。换句话说,一个高效的查询“给我来自子公司 20 的所有记录”使用另一个索引(仅包含子公司 ID)会更好。

这是我最好的猜测,值得查看教程以查看该图表是否用于其他用途。


当然,可能是因为整理教程的人懒得创建新图形,所以只使用了来自不同问题的图形,或者教程的早期版本:- ) 我以前也为此感到内疚。

关于database - 为什么在这个 B-Tree 查找中有两个叶节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31690227/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com