Kusimudzira Bcachefs kuLinux Kernel

Kent Overstreet, munyori weBCache SSD block device caching system, inova chikamu cheLinux kernel, akapfupikisa mhedzisiro yebasa rekusimudzira Bcachefs faira system mukutaura kwake pamusangano weLSFMM 2023 (Linux Storage, Filesystem, Memory Management. & BPF Summit). muchikamu chikuru cheLinux kernel uye akataura nezve hurongwa hwekuenderera mberi kweFS iyi. Muna Chivabvu, yakagadziridzwa seti yezvigamba nekushandiswa kweBcachefs FS yakarongwa kuti iongororwe uye ibatanidzwe mukuumbwa kukuru kweLinux kernel. FS Bcachefs yanga ichikura kweanenge makore gumi. Kugadzirira kwekuongorora kushandiswa kweBcachefs kusati kwaiswa mukati kwakaziviswa mukupera kwa10, uye iyo yazvino vhezheni yezvigamba inofunga nezve zvirevo uye zvikanganiso zvakaonekwa panguva yekuongorora kwapfuura.

Chinangwa chekusimudzira maBcachefs ndechekusvika padanho reXFS mukuita, kuvimbika uye scalability, uku uchipa mamwe maficha ari muBtrfs neZFS, sekusanganisira akawanda maturusi muchikamu, akawanda-layer kuchengetedza marongero, kudzokorora (RAID 1/10), caching, transparent data compression (LZ4, gzip uye ZSTD modes), nyika zvimedu (snapshots), kutendeseka kwekuongorora nemacheki, kukwanisa kuchengeta Reed-Solomon kukanganisa kururamisa macode (RAID 5/6), encrypted kuchengetedza ruzivo (ChaCha20 uye Poly1305 zvinoshandiswa). Panyaya yekushanda, maBcachefs ari mberi kweBtrfs uye mamwe mafaira ehurongwa hunoenderana neCopy-on-Write mechanism, uye inoratidza kushanda pedyo neExt4 uye XFS.

Pamusoro pezvichangoburwa mukuvandudzwa kweBcachefs, kudzikamiswa kwekushandiswa kwezvipfukuto zviripo zvekunyora zvinocherechedzwa. Kuenzaniswa neBtrfs, zvipfupi muBcachefs zvave nani zvakanyanya scalable uye hazvina matambudziko arimo muBtrfs. Mukuita, basa rezvipfupi rakaedzwa pakuronga MySQL backups. Bcachefs yakaitawo basa rakawanda rekuvandudza scalability - iyo faira system yakaita zvakanaka mukuedzwa mu100 TB kuchengetedza, uye Bcachefs inotarisirwa kushandiswa mu1 PB kuchengetedza munguva pfupi iri kutevera. Iyo itsva nocow modhi yakawedzerwa kudzima iyo "copy-on-write" (nocow) maitiro. Munguva yezhizha, vanoronga kuunza kushandiswa kwemakodhi ekugadzirisa kukanganisa uye RAIDZ kune imwe nyika yakagadzikana, pamwe nekugadzirisa matambudziko nekushandiswa kwepamusoro kwekuyeuka paunenge uchidzorera uye kutarisa mafaira ekufambisa nefsck utility.

Pakati pezvirongwa zveramangwana, chido chekushandisa mutauro weRust mukugadzirwa kweBcachefs inotaurwa. Maererano nemunyori weBcachefs, anofarira kunyora, kwete kugadzirisa kodhi, uye zvino zvinopenga kunyora kodhi muC kana paine sarudzo iri nani. Rust yatove nechekuita muBcachefs mukushandiswa kwezvimwe zvekushandisa-nzvimbo zvinoshandiswa. Uyezve, iyo pfungwa iri kugadzirwa kuti zvishoma nezvishoma inyorezve Bcachefs muRust, sezvo kushandisa mutauro uyu kunochengetedza zvakanyanya nguva yekugadzirisa.

Kana iri yekufambisa maBcachefs mukati meiyo huru yeLinux kernel, nzira yekugamuchira inogona kunonoka nekuda kwehukuru hukuru hwekuchinja (2500 zvigamba uye nezve 90 zviuru mitsara yekodhi), iyo yakaoma kuongorora. Kuti vakurumidze kudzokorora, vamwe vanogadzira vakurudzira kuputsa chigamba chakatevedzana kuita zvidimbu zvidiki uye zvakapatsanurwa zvine musoro. Munguva yekukurukurirana, vamwe vatori vechikamu vakakweverawo pfungwa pakuvandudzwa kweprojekti nemumwe mugadziri uye njodzi yekuti kodhi inogona kusiiwa isina kuchengetedzwa kana chimwe chinhu chakaitika kumugadziri wayo (vashandi vaviri veRed Hat vanofarira purojekiti, asi basa ravo richiri. zvishoma zvigadziriso zvebug).

Bcachefs inogadzirwa uchishandisa matekinoroji akaedzwa kare mukuvandudza kweiyo Bcache block mudziyo, yakagadzirirwa kuchengetedza kupinda kune inonoke hard drive pakukurumidza SSD madhiraivha (akasanganisirwa mu kernel kubva pakaburitswa 3.10). Bcachefs inoshandisa iyo Copy-on-Write (COW) maitiro, umo kuchinja kusingatungamiriri kudhindisa data - iyo itsva inonyorerwa kune imwe nzvimbo, mushure mokunge ikozvino mamiriro ekuratidza kuchinja.

Chimiro cheBcachefs itsigiro yeakawanda-layer yekubatanidza madhiraivha, umo chengetedzo inoumbwa nemateru akati wandei - iwo anomhanyisa madhiraivha (SSD) akabatana nepasi pasi, ayo anoshandiswa kuvharira anowanzo shandiswa data, uye yepamusoro layer mafomu. mamwe madhisiki ane capacious uye akachipa anochengeta data shoma inodiwa . Writeback caching inogona kushandiswa pakati pezvikamu. Madhiraivha anogona kuwedzerwa zvine simba uye kuvharirwa kubva pachikamu pasina kukanganisa kushandiswa kweiyo faira system (data rinotama otomatiki).

Source: opennet.ru

Voeg