【问题标题】:Calculating the Blocking Factor for a B+ Tree leaf node计算 B+ 树叶节点的阻塞因子
【发布时间】:2017-09-16 08:28:30
【问题描述】:

我有 5000 条记录存储在 B+ 树中,4 字节 id,8 字节位置,8 字节错误信号和 8 字节一次。每分钟收集一次位置。假设磁盘块是 8K 并且具有 64 位地址。进一步假设 B+tree 顶点具有 64 位地址。我们在 (time,id) 上进行聚类,并在 (time + id) 上构建密集索引。假设我们已经跟踪了 10000 人 100 天。

我正在尝试使用指向顺序块的前向和后向指针计算 B+ 树叶节点的阻塞因子,但我不确定它是否正确,如下所示?

R = 4 + 8 + 8 + 8 = 28 
B = 8K = 8*1024 = 8192 
BF = B/R = 8192/28 = 292

另外,我不知道如何计算内部B+树节点的顺序

【问题讨论】:

    标签: algorithm b-tree


    【解决方案1】:

    你的计算是正确的,假设叶子节点存储数据,除了你应该在划分之前从块大小中减去左右指针的空间。内部节点的计算是相同的,只是它们不需要所有数据字节,只需要数据的任何部分构成键,并且每个部分都有一个向下指针。

    我对这里的“阻碍因素”一词并不感兴趣。在这两种情况下都是“顺序”。

    【讨论】:

    • 谢谢,但我没有在我的计算中添加指针,它说它们是基于时间+id的。另外,如何计算内部节点的顺序?
    • 那你应该有。在划分之前,您需要从块大小中减去左右指针的空间。我已经回答了你的最后一句话。
    • 您能否通过使用我的示例中的数字进行解释来编辑答案以便更好地理解?
    • 我可以,但我不会。你应该能听懂一口流利的英文。
    • 我不知道如何计算指针大小,所以如果你能加上数字,我会明白你的意思,谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-24
    • 1970-01-01
    • 1970-01-01
    • 2021-08-15
    • 1970-01-01
    • 2019-05-12
    相关资源
    最近更新 更多