Il-promozzjoni ta' Bcachefs għall-Linux Kernel

Kent Overstreet, l-awtur tas-sistema ta’ caching tal-apparat tal-blokk SSD BCache, li hija parti mill-kernel tal-Linux, ġabar fil-qosor ir-riżultati tax-xogħol fuq il-promozzjoni tas-sistema tal-fajls Bcachefs fid-diskors tiegħu fil-konferenza LSFMM 2023 (Linux Storage, Filesystem, Memory Management & BPF Summit). fil-kompożizzjoni prinċipali tal-kernel tal-Linux u tkellem dwar pjanijiet għal aktar żvilupp ta' dan l-FS. F'Mejju, sett aġġornat ta 'garża bl-implimentazzjoni tal-Bcachefs FS ġie propost għal reviżjoni u inklużjoni fil-kompożizzjoni ewlenija tal-kernel Linux. FS Bcachefs ilu jiżviluppa għal madwar 10 snin. Ir-rieda għar-reviżjoni tal-implimentazzjoni tal-Bcachefs qabel l-inklużjoni fil-qalba tħabbret fl-aħħar tal-2020, u l-verżjoni attwali tal-garża tqis il-kummenti u n-nuqqasijiet identifikati matul ir-reviżjoni preċedenti.

L-għan ta 'żvilupp ta' Bcachefs huwa li jintlaħaq il-livell XFS fil-prestazzjoni, l-affidabbiltà u l-iskalabbiltà, filwaqt li jipprovdi karatteristiċi addizzjonali inerenti f'Btrfs u ZFS, bħall-inklużjoni ta 'apparati multipli f'partizzjoni, layouts ta' ħażna b'ħafna saffi, replikazzjoni (RAID 1/10), caching, kompressjoni tad-dejta trasparenti (modi LZ4, gzip u ZSTD), slices tal-istat (snapshots), verifika tal-integrità permezz ta 'checksums, il-kapaċità li taħżen kodiċijiet ta' korrezzjoni tal-iżbalji Reed-Solomon (RAID 5/6), ħażna kriptata ta 'informazzjoni (ChaCha20 u Poly1305) jintużaw). F'termini ta 'prestazzjoni, Bcachefs huwa qabel Btrfs u sistemi ta' fajls oħra bbażati fuq il-mekkaniżmu Copy-on-Write, u juri prestazzjoni qrib Ext4 u XFS.

Mill-aħħar kisbiet fl-iżvilupp ta 'Bcachefs, l-istabbilizzazzjoni tal-implimentazzjoni ta' snapshots disponibbli għall-kitba hija nnutata. Meta mqabbla ma 'Btrfs, snapshots f'Bcachefs issa huma ferm aħjar skalabbli u ħielsa mill-problemi inerenti fil-Btrfs. Fil-prattika, ix-xogħol ta 'snapshots ġie ttestjat meta organizzaw backups MySQL. Bcachefs għamel ukoll ħafna xogħol biex itejjeb l-iskalabbiltà - is-sistema tal-fajls marret tajjeb fl-ittestjar f'ħażna ta '100 TB, u Bcachefs huwa mistenni li jiġi implimentat f'ħażna ta' 1 PB fil-futur qarib. Modalità nocow ġdida ġiet miżjuda biex jiskonnettja l-mekkaniżmu "copy-on-write" (nocow). Matul is-sajf, huma jippjanaw li jġibu l-implimentazzjoni ta 'kodiċi ta' korrezzjoni ta 'żbalji u RAIDZ fi stat stabbli, kif ukoll isolvu problemi b'konsum għoli ta' memorja meta jirrestawraw u jiċċekkjaw is-sistemi tal-fajls bl-utilità fsck.

Mill-pjanijiet għall-futur, tissemma x-xewqa li tintuża l-lingwa Rust fl-iżvilupp ta 'Bcachefs. Skond l-awtur ta 'Bcachefs, huwa jħobb jikkodifika, mhux biex jiddebuggja kodiċi, u issa huwa miġnun li tikteb kodiċi f'C meta jkun hemm għażla aħjar. Rust diġà huwa involut f'Bcachefs fl-implimentazzjoni ta 'xi wħud mill-utilitajiet tal-ispazju tal-utent. Barra minn hekk, qed titfaqqas l-idea li bil-mod il-mod il-Bcachefs jinkitbu mill-ġdid f'Rut, peress li l-użu ta 'din il-lingwa jiffranka b'mod sinifikanti l-ħin tad-debugging.

Fir-rigward taċ-ċaqliq ta 'Bcachefs fil-mainstream tal-kernel Linux, il-proċess ta' adozzjoni jista 'jiġi ttardjat minħabba d-daqs kbir tal-bidliet (2500 garża u madwar 90 elf linja ta' kodiċi), li huwa diffiċli biex tirrevedi. Biex tħaffef ir-reviżjoni, xi żviluppaturi ssuġġerew li jkissru s-serje tal-garża f'partijiet iżgħar u separati loġikament. Matul id-diskussjoni, xi parteċipanti ġibdu l-attenzjoni wkoll għall-iżvilupp tal-proġett minn żviluppatur wieħed u l-periklu li l-kodiċi jista 'jitħalla mhux miżmuma jekk jiġri xi ħaġa lill-iżviluppatur tiegħu (żewġ impjegati Red Hat huma interessati fil-proġett, iżda x-xogħol tagħhom għadu għadu bug fixes limitati).

Bcachefs huwa żviluppat bl-użu ta' teknoloġiji diġà ttestjati fl-iżvilupp tal-apparat tal-blokk Bcache, iddisinjat biex jdaħħal aċċess fil-cache għal hard drives bil-mod fuq SSDs veloċi (inklużi fil-kernel mir-rilaxx 3.10). Bcachefs juża l-mekkaniżmu Copy-on-Write (COW), li fih il-bidliet ma jwasslux għal dejta dwar kitba fuqhom - l-istat il-ġdid jinkiteb f'post ġdid, u wara jinbidel l-indikatur tal-istat attwali.

Karatteristika ta 'Bcachefs hija l-appoġġ għal konnessjoni b'ħafna saffi ta' drives, li fihom il-ħażna hija komposta minn diversi saffi - l-aktar drives mgħaġġla (SSDs) huma konnessi mas-saff ta 'isfel, li jintużaw biex jaħżnu data użata ta' spiss, u l-forom tas-saff ta 'fuq diski aktar kapaċi u orħos li jaħżnu data inqas mitluba. Writeback caching jista 'jintuża bejn is-saffi. Id-drajvs jistgħu jiġu miżjuda b'mod dinamiku ma' u jinqalgħu minn partizzjoni mingħajr ma jiġi interrott l-użu tas-sistema tal-fajls (id-dejta temigra awtomatikament).

Sors: opennet.ru

Żid kumment