TLDR;
您可以在使用JavaScript或C#寫入磁盤時定位磁盤塊。當你有固態硬盤時,它有什麼關係嗎?B C#和JavaScript中的樹和稀疏索引算法
問題
我在JavaScript和C#中創建了BTree實現。
在閱讀this section of wikipedia on btrees它討論稀疏索引和降低磁盤讀取。
在我看來,它正在討論將索引和記錄分組到磁盤塊以加速讀取它們。
問題
我有幾個問題:
罐體C#或JavaScript(節點)目標磁盤塊,或者是你有東西在你的代碼計算?即使用HDD的分區表求出相應的塊大小和塊數據?
當我們擁有SSD時,磁盤塊讀取是否重要?
跟進
顯然在C#中,您可以創建FileStream
S和BinaryWriter
秒或StreamWriter
S中,但只需要byte[]
,你不能在特定的任何位置指定磁盤上 - 而且說實話,我預計大部分寫入磁盤的操作都是在較低級別上進行的 - 比如內核和磁盤驅動程序......
使用固態硬盤讀取使得所有的東西都可以快得多,如此有效,只要BTree節點保持參考到確切的文件和字節標記(或類似的東西),然後指定i在C#中很容易 - 無論如何快速閃電。這將是一個簡單的reader.Seek(/** some offset **/)
,然後在記錄中讀取。
我甚至不知道從哪裏開始與節點來試試這個,它只是有其簡單的fs.writeFile()
功能....
很酷,有趣的答案。唯一我要說的是我在談論C#和JavaScript ..不是Java:P –
@CallumLinington對於這些語言也是如此。我更新了文字,以反映這 –
很酷,我目前不知道如何分割時,已經達到了上限...... –