Ukuphromotha ama-Bcachefs ku-Linux Kernel

U-Kent Overstreet, umbhali we-BCache block device caching system kumadrayivu e-SSD afakwe ku-Linux kernel, enkulumweni yakhe engqungqutheleni ye-LSFMM 2023 (Linux Storage, Filesystem, Memory Management & BPF Summit) ufingqa imiphumela yomsebenzi wokukhuthaza ama-Bcachefs. isistimu yefayela ekubunjweni okuyinhloko kwe-Linux kernel futhi yakhuluma ngamasu okuthuthukiswa okuqhubekayo kwale FS. NgoMeyi, isethi ebuyekeziwe yamapheshi ngokusetshenziswa kwe-Bcachefs FS yahlongozwa ukuthi ibuyekezwe futhi ifakwe kuhlu oluyinhloko lwe-Linux. I-FS Bcachefs isineminyaka engaba ngu-10 ithuthuka. Ukulungela ukubuyekeza ukusetshenziswa kwama-Bcachefs ngaphambi kokufakwa ku-kernel kwamenyezelwa ekupheleni kuka-2020, futhi inguqulo yamanje yamapeshi icabangela ukuphawula nokushiyeka okuphawulwe ngesikhathi sokubuyekezwa kwangaphambilini.

Umgomo wama-Bcachefs uwukufinyelela izinga le-XFS lokusebenza, ukwethembeka kanye nokukaleka, kuyilapho ihlinzeka ngezici ezengeziwe ze-Btrfs ne-ZFS, njengokuhlukaniswa kwamadivayisi amaningi, ukwakheka kwedrayivu enezingqimba eziningi, ukuphindaphinda (i-RAID 1/10), ukugcinwa kwesikhashana, idatha esobala. ukucindezelwa (izindlela ze-LZ4, i-gzip ne-ZSTD), izingcezu zesimo (izifinyezo), ukuqinisekiswa kobuqotho kusetshenziswa ama-checksums, ikhono lokugcina amakhodi okulungisa iphutha le-Reed-Solomon (RAID 5/6), ukugcina ulwazi ngendlela ebethelwe (i-ChaCha20 ne-Poly1305 isetshenziswa) . Mayelana nokusebenza, ama-Bcachefs angaphambi kwama-Btrfs nezinye izinhlelo zefayela asekelwe kumshini wokukopisha-on-Write, futhi abonisa isivinini sokusebenza eduze ne-Ext4 ne-XFS.

Izimpumelelo zakamuva ekuthuthukisweni kwama-Bcachefs zihlanganisa ukuzinziswa kokuqaliswa kwezithombe ezifinyeziwe ezibhalekayo. Uma kuqhathaniswa nama-Btrfs, izifinyezo kuma-Bcachefs manje ziba ngcono kakhulu futhi azinazo izinkinga ezitholakala kuma-Btrfs. Empeleni, umsebenzi wezifinyezo uhloliwe lapho kuhlelwa izipele ze-MySQL. Ama-Bcachefs nawo enze umsebenzi omningi wokuthuthukisa ukukala - uhlelo lwefayela lwenze kahle lapho luhlolwa kusitoreji se-TB esiyi-100, futhi ama-Bcachefs kulindeleke ukuthi asetshenziswe kusitoreji esingu-1 PB maduze nje. Kwengezwe imodi entsha ye-nocow ukukhubaza indlela yokukopisha-on-write (nocow). Ngesikhathi sasehlobo bahlela ukuletha ukuqaliswa kwamakhodi wokulungisa amaphutha kanye ne-RAIDZ esimweni esizinzile, kanye nokuxazulula izinkinga ngokusetshenziswa kwememori ephezulu lapho ubuyisela futhi uhlola i-FS nge-fsck utility.

Izinhlelo zesikhathi esizayo zihlanganisa isifiso sokusebenzisa ulimi lwe-Rust lapho uthuthukisa ama-Bcachefs. Ngokusho kombhali we-Bcachefs, uthanda ukuhlela, hhayi ikhodi yokulungisa iphutha, futhi kuyahlanya ukubhala ikhodi C njengoba sekuvele inketho engcono. I-Rust isivele ibambe iqhaza kuma-Bcachefs ekusebenziseni ezinye izinsiza ezisebenza endaweni yomsebenzisi. Ngaphezu kwalokho, lo mbono ucatshangelwa ukuthi kancane kancane ubhale kabusha ama-Bcachefs ku-Rust, njengoba ukusebenzisa lolu limi kusindisa kakhulu isikhathi sokulungisa iphutha.

Mayelana nokukhushulwa kwama-Bcachefs engxenyeni eyinhloko ye-Linux kernel, inqubo yokutholwa ingase ibambezeleke ngenxa yobukhulu obukhulu bezinguquko (ama-patches angu-2500 kanye nemigqa yekhodi engaba yizinkulungwane ezingu-90), okunzima ukuyibuyekeza. Ukuze kusheshiswe ukubuyekezwa, abanye onjiniyela benze isiphakamiso sokuhlephula uchungechunge lwamapeshi lube izingxenye ezincane nezihlukaniswe ngokunengqondo. Phakathi nengxoxo, abanye abahlanganyeli baphinde badonsela ukunaka ekuthuthukisweni kwephrojekthi ngumthuthukisi oyedwa kanye nengozi yokuthi ikhodi ingase ihlale ingagciniwe uma okuthile kwenzeka kumthuthukisi wayo (abasebenzi ababili be-Red Hat banesithakazelo kuphrojekthi, kodwa umsebenzi wabo usalinganiselwe. ukulungisa iphutha).

Ama-Bcachefs athuthukiswa kusetshenziswa ubuchwepheshe obuvele buhloliwe ekuthuthukisweni kwedivayisi yebhulokhi ye-Bcache, eklanyelwe ukugcina inqolobane yokufinyelela kumadrayivu aqinile ahamba kancane kumadrayivu e-SSD asheshayo (afakwe ku-kernel eqala ngokukhululwa 3.10). I-Bcachefs isebenzisa indlela ye-Copy-on-Write (COW) lapho izinguquko zingaholeli ekubhalweni phezu kwedatha - isimo esisha sibhalelwa indawo entsha, ngemva kwalokho isikhombisi sesimo samanje siyashintshwa.

Isici esikhethekile se-Bcachefs ukusekelwa kwayo kokuxhumeka kwe-multi-layer drive, lapho isitoreji sakhiwe khona izendlalelo eziningana - amadrayivu asheshayo (ama-SSD) axhunywe kungqimba olungezansi, olusetshenziselwa ukugcina idatha esetshenziswa njalo, futhi phezulu. ungqimba lwakhiwe amadrayivu anamandla kakhulu futhi ashibhile anikeza isitoreji sedatha engasetshenziswa kancane . Ukulondoloza isikhashana kungasetshenziswa phakathi kwezendlalelo kumodi yokubhala emuva. Amadrayivu anganezelwa ngamandla futhi akhishwe engxenyeni ngaphandle kokumisa ukusetshenziswa kwesistimu yefayela (idatha ithuthwa ngokuzenzakalelayo).

Source: opennet.ru

Engeza amazwana