根據作者的說法,bcachefs 已經足夠成熟,可以包含在主要的 Linux 分支中 

bcachefs

Bcachefs 是用於基於 Linux 的操作系統的寫時復製文件系統。

最近得了艾滋病 肯特·奧弗斯特里特,bcachefs 的作者, 在 LSFMM 2023 會議上的演講 總結了工作成果 Bcachefs文件系統升級 討論了 Linux 內核的主要分支並討論了內核進一步開發的計劃。

Bcachefs 是使用已經經過驗證的技術開發的 Bcache 塊設備的開發,旨在將對慢速硬盤的訪問緩存到快速 SSD 驅動器上(自版本 3.10 起包含在內核中)。 Bcachefs使用Copy-on-Write機制 (COW),其中更改不會導致數據覆蓋:新狀態被寫入新位置,之後當前狀態指示器發生變化。

Bcachefs 的一個特點是 支持連接多層驅動器,其中存儲由多層組成:更快的驅動器(SSD)連接到底層,用於緩存經常使用的數據,頂層形成容量更大的驅動器和存儲需求較少的數據的更便宜的驅動器。 回寫式緩存可以在層之間使用。 可以動態地將驅動器添加到分區或從分區中分離,而無需中斷文件系統的使用(數據自動遷移)。

關於該項目,有人提到 Bcachefs的發展目標是在性能上達到XFS的水平, 可靠性和可擴展性。

在提供 Btrfs 和 ZFS 固有的附加功能的同時,例如一個分區中的多個設備、多層存儲佈局、複製 (RAID 1/10)、緩存、LZ4、gzip 和 ZSTD 模式、狀態段、校驗和完整性驗證、能力存儲Reed-Solomon糾錯碼,存儲加密信息。

在性能方面,Bcachefs領先於Btrfs和其他基於Copy-on-Write機制的文件系統,表現出接近Ext4和XFS的性能。

在 Bcachefs 開發的最新成就中,可寫入快照的實現穩定性最為突出。 與 Btrfs 相比,Bcachefs 中的快照現在可擴展性明顯更好,並且沒有 Btrfs 固有的問題。

實踐中,在組織MySQL備份時測試了快照的工作情況。 Bcachefs在提高可擴展性方面也做了很多工作:文件系統在100TB存儲上的測試中表現良好,預計不久的將來Bcachefs將部署在1PB存儲上。

除此之外,還要強調的是 添加了新的 nocow 模式以禁用“寫入時復制”機制。 今年夏天,他們計劃使 RAIDZ 和糾錯碼的實現達到穩定狀態,並解決使用 fsck 實用程序恢復和驗證文件系統時內存消耗高的問題。

未來的計劃 提到了 d我想在Bcachefs的開發中使用Rust語言。 據Bcachefs的作者說:

他喜歡編碼,而不是調試代碼,現在當有更好的選擇時,用 C 編寫代碼是瘋狂的。 Rust 已經參與了 Bcachefs 的一些用戶空間實用程序的實現。 此外,用 Rust 完全重寫 Bcachefs 的想法正在逐漸醞釀,因為使用這種語言可以顯著節省調試時間。

關於將 Bcachefs 移至主內核分支 從Linux 由於變更規模較大,採用過程可能會延遲 (2500個補丁和大約90萬行代碼),這很難審查。 為了加快審核速度,一些開發商 建議將補丁系列分成更小、邏輯上更獨立的部分.

在討論中,一些參與者還提請注意開發人員對項目的開發情況,以及如果開發人員出了問題,代碼可能變得無法維護的危險(兩名紅帽員工對該項目感興趣,但您的工作仍在等待中) )。 有限的錯誤修復)。

2020月,提出修改並納入Linux內核主體部分。 XNUMX 年底宣布準備在將 Bcachefs 納入內核之前對其實施進行審查,當前版本的補丁考慮了之前審查期間發現的反饋和缺陷。

來源: https://lwn.net/


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。