Ngamajukeun Bcachefs kana Linux Kernel

Kent Overstreet, panulis sistem cache alat blok BCache SSD, anu mangrupikeun bagian tina kernel Linux, nyimpulkeun hasil padamelan pikeun promosi sistem file Bcachefs dina pidatona dina konperénsi LSFMM 2023 (Linux Storage, Filesystem, Memory Management). & BPF Summit). kana komposisi utama kernel Linux jeung spoke ngeunaan rencana pikeun ngembangkeun salajengna FS ieu. Dina Méi, sakumpulan patch anu diropéa kalayan palaksanaan Bcachefs FS diusulkeun pikeun ditinjau sareng dilebetkeun kana komposisi utama kernel Linux. FS Bcachefs parantos ngembangkeun sakitar 10 taun. Kesiapan pikeun marios palaksanaan Bcachefs sateuacan dilebetkeun kana inti diumumkeun dina ahir taun 2020, sareng versi patch ayeuna ngémutan koméntar sareng kakurangan anu diidentifikasi nalika ulasan sateuacana.

Tujuan pangwangunan Bcachefs nyaéta pikeun ngahontal tingkat XFS dina pagelaran, réliabilitas sareng skalabilitas, bari nyayogikeun fitur tambahan anu aya dina Btrfs sareng ZFS, sapertos kalebet sababaraha alat dina partisi, perenah panyimpenan multi-lapisan, réplikasi (RAID 1/10), cache, komprési data transparan (LZ4, gzip na ZSTD mode), keureut kaayaan (snapshots), verifikasi integritas ku checksums, kamampuhan pikeun nyimpen Reed-Solomon Konci kasalahan koreksi (RAID 5/6), neundeun énkripsi informasi (ChaCha20 na Poly1305). dipaké). Dina hal kinerja, Bcachefs payuneun Btrfs sareng sistem file sanés dumasar kana mékanisme Copy-on-Write, sareng nunjukkeun kinerja anu caket sareng Ext4 sareng XFS.

Tina prestasi panganyarna dina ngembangkeun Bcachefs, stabilisasi palaksanaan snapshots sadia pikeun nulis kacatet. Dibandingkeun sareng Btrfs, jepretan dina Bcachefs ayeuna langkung saé tiasa diskalakeun sareng bébas tina masalah anu aya dina Btrfs. Dina prakték, karya snapshots diuji nalika ngatur cadangan MySQL. Bcachefs ogé parantos seueur padamelan pikeun ningkatkeun skalabilitas - sistem file parantos ngalaksanakeun saé dina nguji dina panyimpenan 100 TB, sareng Bcachefs diperkirakeun dilaksanakeun dina panyimpenan 1 PB dina waktos anu caket. A mode nocow anyar geus ditambahkeun kana nganonaktipkeun mékanisme "copy-on-write" (nocow). Salila usum panas, aranjeunna rencanana pikeun mawa palaksanaan Konci koréksi kasalahan sarta RAIDZ ka kaayaan stabil, kitu ogé ngabéréskeun masalah konsumsi memori tinggi nalika malikkeun sarta mariksa sistem file kalawan utilitas fsck.

Tina rencana pikeun masa depan, kahayang pikeun ngagunakeun basa Rust dina pamekaran Bcachefs disebatkeun. Numutkeun panulis Bcachefs, anjeunna resep kana kode, sanés debug kode, sareng ayeuna gélo nyerat kode dina C nalika aya pilihan anu langkung saé. Karat parantos aub dina Bcachefs dina palaksanaan sababaraha utilitas ruang-pamaké. Leuwih ti éta, ideu keur diarsir pikeun laun lengkep nulis balik Bcachefs di Rust, saprak ngagunakeun basa ieu nyata ngahemat waktos debugging.

Sedengkeun pikeun mindahkeun Bcachefs kana mainstream tina kernel Linux Ubuntu, prosés nyoko bisa ditunda alatan ukuran badag tina parobahan (2500 patches sarta ngeunaan 90 sarébu garis kode), nu hese review. Pikeun nyepetkeun review, sababaraha pamekar geus ngusulkeun megatkeun up runtuyan patch kana bagian leutik tur logis dipisahkeun. Salila sawala, sababaraha pamilon ogé narik perhatian kana pamekaran proyék ku hiji pamekar sareng bahaya yén kodeu tiasa ditinggalkeun henteu dijaga upami aya kajadian ka pamekarna (dua karyawan Red Hat museurkeun proyék éta, tapi padamelanna masih kénéh aya. perbaikan bug kawates).

Bcachefs dikembangkeun nganggo téknologi anu parantos diuji dina pamekaran alat blok Bcache, dirancang pikeun aksés cache pikeun ngalambatkeun hard drive dina SSD gancang (kaasup dina kernel saprak release 3.10). Bcachefs ngagunakeun mékanisme Copy-on-Write (COW), dimana parobihan henteu ngakibatkeun nimpa data - kaayaan énggal diserat ka lokasi énggal, saatos éta indikator kaayaan ayeuna robih.

Fitur Bcachefs nyaéta dukungan pikeun sambungan multi-lapisan drive, dimana panyimpenan diwangun ku sababaraha lapisan - drive panggancangna (SSD) disambungkeun ka lapisan handap, anu dianggo pikeun cache data anu sering dianggo, sareng lapisan luhur ngabentuk. disk anu langkung ageung sareng langkung mirah anu nyimpen data anu kirang dipénta. Writeback cache bisa dipaké antara lapisan. Drive bisa dinamis ditambahkeun kana na detached tina partisi a tanpa interrupting pamakéan sistem file (data migrasi otomatis).

sumber: opennet.ru

Tambahkeun komentar