作為這種方法的優點,據說不存在 FS+RAID/LVM 組合和非平行檔案系統(ZFS、Btrfs)固有的缺點,例如可用空間問題、卷填滿時性能下降超過70% 的用於安排邏輯卷(RAID/LVM) 的過時演算法不允許跨邏輯磁碟區有效地分配資料。在並行 FS 中,在將裝置新增至邏輯磁碟區之前,必須使用標準 mkfs 公用程式進行格式化。
Reiser5 使用 O(1) 空閒區塊分配器。任何空閒區塊搜尋操作的最大成本不取決於邏輯磁碟區的大小。可以簡單有效地從不同大小和頻寬的區塊設備組裝邏輯磁碟區。數據在此類設備上的分配是使用俄羅斯數學家和程式設計師愛德華·希甚金提出的新演算法(所謂的「光纖條紋」)進行的。
指向每個裝置的 I/O 請求部分等於使用者為其分配的相對容量,從而使邏輯磁碟區「均勻」且「公平」地填入資料。同時,容量較小的區塊裝置接收的儲存區塊較少,頻寬較低的裝置也不會成為「瓶頸」(例如,在 RAID 陣列中就會發生這種情況)。
將設備添加到磁碟區以及從磁碟區中刪除設備都伴隨著重新平衡,這保留了分配的「公平性」。在這種情況下,遷移的資料部分也等於被添加(移除)的設備的相對容量。未分片資料的遷移速度接近寫入磁碟的速度。可以同時維護邏輯磁碟區中包含的所有區塊設備,對每個區塊設備使用單獨的方法(對 HDD 進行碎片整理、對 SSD 發出丟棄請求等)。使用標準 df(1) 實用程式監控邏輯磁碟區上的可用空間。此外,使用者還有機會監視邏輯磁碟區的每個組件裝置上的可用空間。
所有邏輯磁碟區操作(新增、刪除裝置等)都是原子操作,並且使用處理 Reiser4 中交易的標準工具來實現。在這種中斷操作之後體積的正確「展開」由指令調節。目前,Reiser5還沒有用於管理離線(掛載)磁碟區的工具,因此請使用者暫時獨立儲存和更新其邏輯磁碟區的配置。使用 reiser4progs 套件中包含的邏輯磁碟區公用程式可以輕鬆地為已安裝的磁碟區準備此配置。
從計劃來看:
- 元資料分佈在多個子卷中;
- 使用 fsck 公用程式檢查/恢復邏輯磁碟區(透過升級其舊版);
- 自訂控制分發和透明資料遷移,這對於HPC應用程式(Burst Buffers)非常重要;
- 資料和元資料校驗和;
- 邏輯磁碟區的 3D 快照不僅能夠回滾常規檔案操作,還能夠回滾對磁碟區的操作(例如新增和刪除裝置);
- 聚合不同機器上的設備的全域(網路)磁碟區。
來源: opennet.ru