Bcachefs 1.33.0 failisüsteemi väljaanne

Kent Overstreet avaldas Bcachefs 1.33.0 failisüsteemi versiooni. Väljaanne sisaldab kahte paketti: bcachefs-kernel-dkms, mille tuumamoodul ehitatakse DKMS (Dynamic Kernel Module Support) süsteemi abil, ja bcachefs-tools, mis sisaldab kasutajaruumi utiliiti bcachefs, mis teostab käsklusi failisüsteemi loomise (mkfs), mountimise, taastamise ja kontrollimise jaoks. Paketid on kokku pandud Debianile, Ubuntu, Fedora, openSUSE, NixOS ja Arch Linuxile. DKMS-moodul toetab tuumade töötamist Linuxi versioonidega alates 6.16.

Uues versioonis on lisatud funktsioon "reconcile" (rebalance_v2), mis on märgitud kui suurim muudatus viimase kahe aasta jooksul FS-is. Erinevalt varem saadaval olevast "rebalance" režiimist võimaldab "reconcile" teostada mitte ainult andmete (näiteks mitme koopia replikeerimist erinevatele salvestusseadmetele) vaid ka FS-i metaandmete (näiteks metaandmete edastamine pärast uue salvestusseadmeliitu) ümberjaotust. Lisaks sellele on "reconcile" nüüd rakendatav kõigile sisendi/väljundi valikutele, mitte ainult taustakopeerimise ja tihendamise toimingutele. "Reconcile" arvestab automaatselt seadmete valikute või seadistuste muudatusi ning replikeerib kohe madalamate andmete ja metaandmete.

Reconcile'i protsessis kasutatakse eraldi indekseid: kõrge prioriteediga toimingute jaoks; andmete töötlemise optimeerimiseks ketasüsteemides; andmete jaoks, mille töötlemine on plaanitud, kuid mida ei saa hetkel teostada (näiteks ruumi puudumise tõttu). Lisatud on toetus failisüsteemi loomiseks ühel kettal kahekordse replikatsiooniga (replicas=2) — sellises konfiguratsioonis toob teise ketta lisamine kaasa andmete automaatse replikatsiooni uuele ketale, ilma et kasutaja peaks tegema mingeid toiminguid.

Teiste muudatuste seas:

  • Lisatud käsud „reconcile status” ja „reconcile wait”. Lisatud on montaaži valikud „mount_trusts_udev” ja „writeback_timeout”. Jätkuvalt on vananenud käskude hulgast eemaldatud „data rereplicate”, „data job drop_extra_replicas”.
  • Lisatud taasterežiim „merge_btree_nodes”, mis kontrollib kõiki sõlmi btree-struktuurides, millele kehtivad ühinemisoperatsioonid.
  • Kood valmistati ette ülemiseks Rusti keele kasutusele. Koodis kasutatavate goto-operatsioonide arv vähendati 2500-lt 600-le. Avatud koodiga vektorite asemel kasutatakse makro DARRAY(), mis pakub C++ ja Rusti sarnast dünaamiliste massiivide funktsionaalsust. Vigade käsitsemiseks on kasutatud makrot try(), mis on laenatud Rustist.
  • Meeskonnas "bcachefs fs usage" on tagatud täpne teavitamine degradeerunud andmete kohta.
  • Ümber töötatud on arvestite töötlemine, mis kuvatakse käsu "bcachefs fs top" kaudu. Uute arvestite lisamine on lihtsustatud ning on rakendatud võimalus tracepointide muutmiseks väljundibufriks (printbufs).
  • Parandatud on veateate kvaliteeti, mis sisaldavad nüüd teavet tõrke tüüpide (programmist või riistvarast) kohta, veategevuse lahendamise toimingud (nt taastamisprotsessi käivitamine) ja blokeeringute seadmetelt saadud sisend-/väljundkoodide vigade koodid, puuduvate seadmete kohta. btress-struktuuride skaneerimisel on tagatud teabe väljund probleemsete sõlmede taastamise võimaluse kohta.
  • Logimise on lisatud võimalus eraldi määrata erinevate veatüüpide väljundite intensiivsuse limiidid. Tüüpilised limiidid aitavad vältida üksikute riistvaraprobleemide teadete kadumist suurte tarkvaraveateadete hulgas.
  • Kõikidele taastamise etappidele on lisatud edenemismuudatused.

Bcachefs projekt arendab failisüsteemi, mille eesmärk on ühendada Btrfs ja ZFS-ile omased laiad funktsionaalsused XFS-ile iseloomuliku jõudluse, usaldusväärsuse ja skaleeritavusega. Bcachefs toetab selliseid funktsioone nagu mitme seadme kaasamine ja mitmekihilised salvestuslahendused (aluskiht kiirete SSD-dega sagedasti kasutatavate andmete jaoks, ülemine kiht vähem nõutud andmete jaoks kõvaketastelt), replikeerimine (RAID 1/10), vahemälu, andmete läbipaistmine surumise teel (LZ4, gzip ja ZSTD režiimid), olekute lõikepunktid (snapshotid), kontrollsumma abil terviklikkuse kontrollimine, Reed–Solomoni vigade paranduse koodide talletamine (RAID 5/6) ja teabe salvestamine krüpteeritud kujul (kasutatakse ChaCha20 ja Poly1305). Jõudluse osas ületab Bcachefs Btrfs-i ja teisi Copy-on-Write mehhanismi põhinevaid failisüsteeme ning demonstreerib kiirusetõusu, mis on lähedane Ext4-le ja XFS-ile.

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster