簡體   English   中英

B +樹CPU搜索時間

[英]B+ Tree CPU search time

我只是想知道您如何計算未聚簇的b +樹的最壞情況時間?

例如,假設我有1,000,000條記錄(1行= 100字節),磁盤頁面為4000字節,鍵為20字節,頁面的訪問時間為40ms。 如何使用這些變量計算未聚簇和聚簇的b +樹的最壞情況時間?

我知道要計算b +樹的高度/水平,請使用以下命令(我認為):

logF(keys)

其中F =分支數。

有了高度,您就可以用它來計算最終的最壞情況下的時間,但是我不知道該怎么做...我嘗試過搜索,但是我所能做的就是平均情況下的時間或沒有的示例。很清楚。

任何幫助表示贊賞!

我會說logF(keys)是查找頁面的最壞情況,但是在那之后最壞的情況是沒有索引的索引,您的所有操作都指向不同的頁面,這意味着

logF(keys)+ N為N,即索引節點中的騎乘次數。

所以最后

H =樹的高度大約為3或4。

H + N = 4 +(4000/20)= 204個I / O

讓我們說他們在內存中,想要查看CPU時間,那將是

CPU = 204 * 0.04 = 8.16秒。 雖然我認為40ms用於在內存中移動頁面相當多的時間(對於磁盤讀取來說是有道理的),但我認為計算很好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM