Na-akwalite Bcachefs na Linux Kernel

Kent Overstreet, onye dere BCache SSD block ngwaọrụ caching system, nke bụ akụkụ nke Linux kernel, chịkọtara nsonaazụ nke ọrụ na ịkwalite sistemụ faịlụ Bcachefs n'okwu ya na ogbako LSFMM 2023 (Nchekwa Linux, Njikwa faili, njikwa ebe nchekwa). & BPF Summit) n'ime isi ihe mejupụtara kernel Linux wee kwuo maka atụmatụ maka mmepe mmepe nke FS a. N'ọnwa Mee, a tụpụtara patches emelitere yana mmejuputa Bcachefs FS maka ntụle na ntinye n'ime ihe mejupụtara kernel Linux. FS Bcachefs na-etolite ihe dị ka afọ 10. Njikere maka nyochaa mmejuputa nke Bcachefs tupu etinye ya na isi ka ekwuputara na njedebe nke 2020, na ụdị patches dị ugbu a na-eburu n'uche nkọwa na mmejọ ndị achọpụtara n'oge nyocha gara aga.

Ebumnuche mmepe nke Bcachefs bụ iru ọkwa XFS na arụmọrụ, ntụkwasị obi na scalability, ebe ọ na-enye atụmatụ ndị ọzọ dị na Btrfs na ZFS, dị ka gụnyere ọtụtụ ngwaọrụ na nkebi, nhazi nchekwa multi-layer, replication (RAID 1/10), caching, transperent data mkpakọ (LZ4, gzip na ZSTD ụdịdị), mpekere steeti (snapshots), nkwenye iguzosi ike n'ezi ihe site na checksums, ikike ịchekwa koodu mgbazi njehie Reed-Solomon (RAID 5/6), nchekwa ezoro ezo (ChaCha20 na Poly1305). a na-eji). N'ihe gbasara arụmọrụ, Bcachefs dị n'ihu Btrfs na usoro faịlụ ndị ọzọ dabere na usoro Copy-on-Dee, ma gosipụta arụmọrụ dị nso na Ext4 na XFS.

N'ime mmezu kachasị ọhụrụ na mmepe nke Bcachefs, a na-ahụta nkwụsi ike nke mmejuputa nke snapshots dị maka ide. Tụnyere Btrfs, ọnyà ọnyà dị na Bcachef dị ugbu a ka mma karịa na enweghị nsogbu dị na Btrfs. Na omume, a nwalere ọrụ nke snapshots mgbe ị na-ahazi MySQL ndabere. Bcachefs emeela ọtụtụ ọrụ iji meziwanye scalability - usoro faịlụ ahụ arụ ọrụ nke ọma na nyocha na nchekwa 100 TB, a na-atụkwa anya na a ga-emejuputa Bcachef na nchekwa 1 PB n'ọdịnihu dị nso. Agbakwunyela ụdị nocow ọhụrụ iji gbanyụọ usoro "mbipụta-na-ede" (nocow). N'oge okpomọkụ, ha na-eme atụmatụ iweta mmejuputa koodu mgbazi njehie na RAIDZ na steeti kwụsiri ike, yana dozie nsogbu na oke nchekwa nchekwa mgbe ị na-eweghachi na ịlele usoro faịlụ na fsck utility.

N'ime atụmatụ maka ọdịnihu, a na-akpọ ọchịchọ iji asụsụ Rust na mmepe nke Bcachefs. Dị ka onye na-ede akwụkwọ Bcachefs si kwuo, ọ na-amasị ya ịme koodu, ọ bụghị imebi koodu, ma ugbu a ọ bụ ihe nzuzu ide koodu na C mgbe enwere nhọrọ ka mma. Nchara etinyelarị aka na Bcachef na mmejuputa ụfọdụ ngwa ọrụ-ohere onye ọrụ. Ọzọkwa, a na-echepụta echiche iji jiri nwayọ degharịa Bcachef na Rust kpamkpam, ebe ọ bụ na iji asụsụ a na-azọpụta oge nbibi nke ọma.

Banyere ịkwaga Bcachefs n'ime isi nke kernel Linux, usoro nkuchi nwere ike igbu oge n'ihi nnukwu mgbanwe mgbanwe (patches 2500 na ihe dị ka ahịrị 90 puku ahịrị), nke siri ike nyochaa. Iji mee ka nyocha dị ngwa, ụfọdụ ndị mmepe atụwo aro ikewasị usoro patch ka ọ bụrụ akụkụ ndị dị nta na nke kewapụrụ n'ụzọ ezi uche dị na ya. N'oge mkparịta ụka ahụ, ụfọdụ ndị sonyere na-adọrọkwa uche gaa na mmepe nke ọrụ ahụ site na otu onye mmepụta na ihe ize ndụ na koodu ahụ nwere ike ịhapụ ya ma ọ bụrụ na ihe mere onye mmepụta ya (ndị ọrụ abụọ Red Hat nwere mmasị na ọrụ ahụ, ma ọrụ ha ka dị. mmezi ahụhụ nwere oke).

Emepụtara Bcachefs site na iji teknụzụ anwalelarị na mmepe nke ngwaọrụ ngọngọ Bcache, emebere iji chekwaa ohere iji nwayọ draịva siri ike na SSD ngwa ngwa (gụnyere na kernel kemgbe ewepụtara 3.10). Bcachefs na-eji usoro Copy-on-Write (COW), nke mgbanwe anaghị eduga na idegharị data - a na-ede steeti ọhụrụ ahụ na ebe ọhụrụ, mgbe nke ahụ gasịrị akara ngosi steeti ugbu a gbanwere.

Akụkụ nke Bcachefs bụ nkwado maka njikọ multi-layer nke draịva, nke ebe nchekwa mejupụtara ọtụtụ ọkwa - draịva kacha ngwa ngwa (SSD) jikọtara ya na oyi akwa ala, nke a na-eji echekwa data a na-ejikarị eme ihe, yana ụdị oyi akwa dị elu. diski ike dị ọnụ ala karịa nke na-echekwa data achọghị obere. Enwere ike iji caching ederede n'etiti ọkwa. Enwere ike ịgbakwunye draịva na ike ma wepụ ya na nkebi na-akwụsịtụghị iji sistemụ faịlụ (data na-akwaga na-akpaghị aka).

isi: opennet.ru

Tinye a comment