我是第一次研究 B+ 树。我只想知道,开发者应该根据什么来选择B+树的顺序?
另外,有没有类似 B+ 树的傻瓜教程?我迫切需要它。
我是第一次研究 B+ 树。我只想知道,开发者应该根据什么来选择B+树的顺序?
另外,有没有类似 B+ 树的傻瓜教程?我迫切需要它。
如果您的意思是 B+-tree 节点中传出指针的数量“顺序”,则应考虑顺序k,以便磁盘上的节点是磁盘扇区大小或文件系统块大小的倍数,例如 4 KB。
如果您从磁盘读取节点,则磁盘(我在这里假设磁盘而不是 SSD)必须寻找节点的位置并读取节点。对于大小为 KB 的节点,寻道时间远大于该节点在磁盘上的实际传输时间。因此,选择一个订单以使节点的磁盘大小为 64 KB 可能是一个不错的选择。
理想情况下,您需要选择一个具有良好参考位置的订单来帮助缓存。鼓励对键进行顺序扫描的顺序也很有帮助。一般来说,这取决于您的数据。