如何优化B树的M和L值

时间:2016-02-10 20:17:46

标签: tree complexity-theory b-tree

如果您知道将在B树中存储多少元素,您将如何确定M和L的最佳值?可以用M和L来确定性能吗?

1 个答案:

答案 0 :(得分:0)

您无法优化“M&L”值'一棵B树,因为它们是来自学术界的概念,其中表现为'是渐近线的同义词。

条款'优化'和'表现'来自现实世界,其中B树节点往往具有固定的物理尺寸 - 基于诸如存储扇区/簇大小,存储器页面大小,高速缓存大小(以及高速缓存行大小,用于页内组织)之类的事物 - 以及节点容量在键或指针方面,“物理页面中的任何内容都是适合的”。密钥的大小往往是可变的,密钥压缩可以将大量不同数量的密钥装入节点,这取决于密钥共享公共前缀或后缀的程度 - 或者它们可压缩的程度,对于使用真正压缩的方案。

这也意味着“页面不足”。标准不对应于相对于最大容量的固定数量的键/指针,并且在一些情况下甚至完全空的页面保持一段时间。这意味着整个数学事物变得模糊不清。

一些利基应用程序具有固定的密钥大小,因此学术数学在某种程度上确实存在。其他小众应用程序将实际的关键数据放在免费存储中的任何位置,并仅将指针放入实际的B树节点。这极大地影响了性能,但结果仍然比替代方案更好。

如果您告诉我们您的实际问题/项目是什么以及您的目标是什么样的表现,那么我们可以为您提供具体的建议。为此,了解更新与搜索/查询的预期相对频率等内容也很重要。