Að kynna Bcachefs í Linux kjarnanum

Kent Overstreet, höfundur skyndiminniskerfis BCache SSD blokkarbúnaðar, sem er hluti af Linux kjarnanum, tók saman niðurstöður vinnunnar við að kynna Bcachefs skráarkerfið í ræðu sinni á LSFMM 2023 ráðstefnunni (Linux Storage, Filesystem, Memory Management & BPF Summit). inn í aðalsamsetningu Linux kjarnans og talaði um áætlanir um frekari þróun þessa FS. Í maí var lagt til uppfært sett af plástra með innleiðingu Bcachefs FS til endurskoðunar og innlimunar í aðalsamsetningu Linux kjarnans. FS Bcachefs hefur verið að þróa í um 10 ár. Tilkynnt var um reiðubúinn til að endurskoða innleiðingu Bcachefs fyrir innlimun í kjarnann í lok árs 2020 og núverandi útgáfa plástra tekur mið af athugasemdum og annmörkum sem komu fram við fyrri endurskoðun.

Þróunarmarkmið Bcachefs er að ná XFS stigi í afköstum, áreiðanleika og sveigjanleika, á sama tíma og það býður upp á viðbótareiginleika sem felast í Btrfs og ZFS, svo sem að innihalda mörg tæki í skipting, marglaga geymsluskipulag, afritun (RAID 1/10), skyndiminni, gagnsæ gagnaþjöppun (LZ4, gzip og ZSTD stillingar), ástandssneiðar (skyndimynd), sannprófun á heiðarleika með eftirlitstölum, getu til að geyma Reed-Solomon villuleiðréttingarkóða (RAID 5/6), dulkóðuð geymsla upplýsinga (ChaCha20 og Poly1305 eru notuð). Hvað varðar frammistöðu er Bcachefs á undan Btrfs og öðrum skráarkerfum sem byggjast á Copy-on-Write vélbúnaðinum og sýnir frammistöðu nálægt Ext4 og XFS.

Af nýjustu afrekum í þróun Bcachefs er bent á stöðugleika innleiðingar skyndimynda sem eru tiltækar til að skrifa. Í samanburði við Btrfs eru skyndimyndir í Bcachefs nú mun betur skalanlegar og lausar við vandamálin sem felast í Btrfs. Í reynd var vinnu skyndimynda prófað við skipulagningu MySQL öryggisafrita. Bcachefs hefur einnig lagt mikið upp úr því að bæta sveigjanleika - skráarkerfið hefur staðið sig vel í prófunum í 100 TB geymslu og búist er við að Bcachefs verði innleitt í 1 PB geymslu í náinni framtíð. Nýrri nocow ham hefur verið bætt við til að slökkva á "copy-on-write" (nocow) vélbúnaðinum. Í sumar ætla þeir að koma innleiðingu villuleiðréttingarkóða og RAIDZ í stöðugt ástand, auk þess að leysa vandamál með mikla minnisnotkun við endurheimt og athugun á skráarkerfum með fsck tólinu.

Af framtíðaráætlunum er minnst á löngunina til að nota Rust tungumálið við þróun Bcachefs. Að sögn höfundar Bcachefs finnst honum gaman að kóða, ekki að kemba kóða, og nú er brjálað að skrifa kóða í C þegar það er betri kostur. Rust er nú þegar þátttakandi í Bcachefs í innleiðingu sumra notendarýmisveitanna. Þar að auki er verið að klekkja á þeirri hugmynd að endurskrifa Bcachefs í Rust smám saman að fullu, þar sem notkun á þessu tungumáli sparar kembiforrit verulega.

Hvað varðar að færa Bcachefs inn í almenna Linux kjarnann, þá gæti upptökuferlið tafist vegna mikillar stærðar breytinganna (2500 plástrar og um 90 þúsund línur af kóða), sem erfitt er að endurskoða. Til að flýta fyrir endurskoðun hafa sumir forritarar lagt til að skipta plástraröðinni upp í smærri og rökrétt aðskilda hluta. Í umræðunum vöktu sumir þátttakendur einnig athygli á þróun verkefnisins af einum framkvæmdaraðila og hættunni á að kóðinn gæti haldist óviðhaldinn ef eitthvað kæmi fyrir þróunaraðila þess (tveir Red Hat starfsmenn hafa áhuga á verkefninu, en vinna þeirra er enn takmarkaðar villuleiðréttingar).

Bcachefs er þróað með því að nota tækni sem þegar hefur verið prófuð í þróun Bcache blokkarbúnaðarins, hannað til að vista aðgang að hægum harða diskum á hröðum SSD diskum (innifalinn í kjarnanum frá útgáfu 3.10). Bcachefs notar Copy-on-Write (COW) vélbúnaðinn, þar sem breytingar leiða ekki til yfirskriftar gagna - nýja ástandið er skrifað á nýjan stað, eftir það breytist núverandi ástandsvísir.

Eiginleiki Bcachefs er stuðningur við margra laga tengingu á drifum, þar sem geymsla er samsett úr nokkrum lögum - hröðustu drif (SSD) eru tengd við neðsta lagið, sem er notað til að vista oft notuð gögn, og efsta lagið myndast rúmbetri og ódýrari diskar sem geyma minna eftirspurn gögn. Hægt er að nota afturritunarskyndiminni á milli laga. Hægt er að bæta drifum við og aftengja disksneið án þess að trufla notkun skráarkerfisins (gögn flytjast sjálfkrafa).

Heimild: opennet.ru

Bæta við athugasemd