A Bcachefs már nem kísérleti, de óvatosság továbbra is indokolt

enlightened Ez az oldal a közösségért készül. heart Kövess minket máshol is:  Linux Mint Magyar Közösség a Mastodon-on  Telegram csatorna – csak hírek  Beszélgessünk a Telegram – Linux csevegő csoport  Hírek olvasása RSS segítségével  Linux Mint Hivatalos Magyar Közösség a Facebook-on      Linux Mint Baráti Kör a Facebook-on
wink Ha hasznosnak találod, és szeretnéd, hogy folytatódjon, támogasd a munkát Ko-fi vagy Paypal segítségével. laugh

kami911 képe

A Bcachefs egy modern, copy-on-write Linux fájlrendszer, amely támogatja a titkosítást, a Snapshotokat, a tömörítést és más fejlett funkciókat, és olyan fájlrendszerekkel versenyez, mint a Btrfs és a ZFS. Most fontos mérföldkőhöz érkezett. Egy blogbejegyzésben Kent Overstreet projektvezető bejelentette, hogy a fájlrendszert már nem tekintik kísérletinek.

A hír a Bcachefs 1.38.6 kiadásával együtt érkezett, amely elsősorban teljesítménybeli fejlesztésekre koncentrál.

„Már nem vagyunk kísérletiek. Levettük a címkét a weboldalról – pár hónapja, azt hiszem, a szokásos „a beérkező hibajelentések lassulnak, kevésbé súlyosak, és könnyebb átrágni magunkat rajtuk, mint korábban” alapon. Tekintsétek ezt a megkésett hivatalos bejelentésnek :)”

Ez azonban nem jelenti azt, hogy a Bcachefs minden éles rendszerre azonnal bevethető. Inkább arról van szó, hogy a projekt szerint a fájlrendszer túljutott a kísérleti fázison. A Bcachefs fejlődését követők számára ez így is fontos változás. Az 1.38.6-os verzió két fő fejlesztési területet emel ki: a Reconcile rendszert és az erasure codingot.

A Reconcile egy eszköz- és adatkezelő rendszer. Nyilvántartja, hol van az adat, hol kellene lennie, és mit kell módosítani, ha a fájlrendszer beállításai vagy az eszközök állapota megváltozik. A gyakorlatban ez lehetővé teszi, hogy a Bcachefs a háttérben mozgassa az adatokat, újramásolja őket, vagy olyan módosításokat hajtson végre, mint az erasure coding bekapcsolása, anélkül hogy a felhasználóknak kézzel kellene mozgatniuk az adatokat.

Az erasure codingot sem tekintik már kísérletinek. A Bcachefs Reed–Solomon kódolást használ, ugyanazt a megközelítést, amelyre a RAID5 és RAID6 is épül. A projekt szerint a választott stratégia elkerüli a szokásos RAID „write hole” problémát. A rendszer nem a meglévő stripe-okat frissíti közvetlenül, hanem az új írásokat először replikálja, majd a háttérben alakítja stripe-okká.

A mostani kiadás számos teljesítménybeli fejlesztést is tartalmaz. Overstreet szerint a benchmarkolás és a profilozás több mint 200 javítócsomagot eredményezett a core btree kódban, a journalban és a fájlrendszer kódjában. A fontosabb változtatások között szerepel a gyorsabb tranzakció-commit útvonal, új módszerek a btree kód számára a lockütközések elkerülésére, valamint egy lockmentes journal flush útvonal.

Egy egyetlen eszközös beállításon Overstreet beszámolója szerint a Bcachefs 1.38.6 16,5 GB/s sebességet ért el dbench tesztekben egy 48 magos AMD EPYC 9454 rendszeren, míg az XFS ugyanebben a tesztben 16 GB/s-ot produkált. A mostani kiadásban még nem szereplő további javítócsomagokkal a Bcachefs állítólag 19 GB/s-ig jutott. Fio 4K random write tesztekben a Bcachefs 700 000 IOPS-ot ért el ugyanazon a hardveren, szemben az XFS 1 millió IOPS-os eredményével.

Folyamatban van a munka a Rust-tal is. A Bcachefs userspace kódját már átírták Rust-ra, és a csapat következő lépésként Rust bindingeket tervez hozzáadni a DKMS modulhoz. Kezdetben a Rust-t unit- és teljesítménytesztekhez használják majd, és opcionális függőségként kezelik, mielőtt nagyobb változtatásokat vezetnének be a kernel oldalon.

Ahogy valószínűleg tudod, Overstreet és Torvalds konfliktusa után a Bcachefs kikerült a kernel-ból, és a Linux 6.18 óta DKMS modul formájában érhető el. A projektoldal szerint Linux 6.16-tól felfelé támogatott, és csomagolási megjegyzéseket adnak Gentoo, Void, NixOS, Arch, Debian, Ubuntu, Fedora és openSUSE számára.

Felmerül a kérdés: stabilnak tekinthető már a Bcachefs? A projekt szerint a kísérleti címke eltűnt. Ha azonban fontos adatokhoz vagy üzletileg kritikus rendszerekhez tervezed használni, továbbra is érdemes óvatosnak lenni. A fájlrendszerek Rust-vel építenek ki valódi tapasztalatot, sokféle terhelés, rendszer és hibaszituáció során.

Mindezek ellenére a Bcachefs 1.38.6 több, mint egy újabb kiadás, és a remények szerint a jövőbeli verziók visszahozzák majd a beépített Bcachefs támogatást a Linux kernel-ba, alapértelmezett módon.