Hyrwyddiad Bcachefs i'r cnewyllyn Linux

Kent Overstreet, awdur y craidd Linux Systemau storio dyfeisiau bloc SSD BCache, yn ei gyflwyniad yng nghynhadledd LSFMM 2023 (Linux Storage, Filesystem, Memory Management & BPF Summit) обобщил результаты работы по продвижению файловой системы Bcachefs в основной состав ядра Linux и рассказал о планах по дальнейшему развитию данной ФС. В мае для рецензирования и включения в основной состав ядра Linux был предложен обновлённый набор патчей с реализацией ФС Bcachefs. ФС Bcachefs развивается уже около 10 лет. О готовности рецензирования реализации Bcachefs перед включением в состав ядра было объявлено ещё в конце 2020 года и в текущем варианте патчей учтены выявленные при прошлом рецензировании замечания и недоработки.

Nod datblygu Bcachefs yw cyrraedd lefel XFS mewn perfformiad, dibynadwyedd a scalability, tra'n darparu nodweddion ychwanegol sy'n gynhenid ​​​​yn Btrfs a ZFS, megis cynnwys dyfeisiau lluosog mewn rhaniad, cynlluniau storio aml-haen, atgynhyrchu (RAID 1/10), caching, cywasgu data tryloyw (modiau LZ4, gzip a ZSTD), tafelli cyflwr (cipluniau), gwirio cywirdeb checksum, y gallu i storio codau cywiro gwallau Reed-Solomon (RAID 5/6), storio gwybodaeth wedi'i hamgryptio (ChaCha20 a Poly1305 yn cael eu defnyddio ). O ran perfformiad, mae Bcachefs ar y blaen i Btrfs a systemau ffeiliau eraill yn seiliedig ar y mecanwaith Copïo-ar-Write, ac mae'n dangos perfformiad yn agos at Ext4 a XFS.

O'r cyflawniadau diweddaraf yn natblygiad Bcachefs, nodir sefydlogi gweithrediad y cipluniau sydd ar gael i'w hysgrifennu. O gymharu â Btrfs, mae cipluniau mewn Bcachefs bellach yn llawer gwell graddadwy ac yn rhydd o'r problemau sy'n gynhenid ​​​​yn Btrfs. Yn ymarferol, profwyd gwaith cipluniau wrth drefnu copïau wrth gefn MySQL. Mae Bcachefs hefyd wedi gwneud llawer o waith i wella scalability - mae'r system ffeiliau wedi perfformio'n dda wrth brofi mewn storfa 100 TB, a disgwylir i Bcachefs gael ei weithredu mewn storfa 1 PB yn y dyfodol agos. Mae modd nocow newydd wedi'i ychwanegu i analluogi'r mecanwaith "copi-ar-ysgrifennu" (nocow). Yn ystod yr haf, maent yn bwriadu dod â gweithrediad codau cywiro gwallau a RAIDZ i gyflwr sefydlog, yn ogystal â datrys problemau gyda defnydd cof uchel wrth adfer a gwirio systemau ffeiliau gyda'r cyfleustodau fsck.

O'r cynlluniau ar gyfer y dyfodol, sonnir am yr awydd i ddefnyddio'r iaith Rust yn natblygiad Bcachefs. Yn ôl awdur Bcachefs, mae'n hoffi codio, nid i debug cod, ac yn awr mae'n wallgof ysgrifennu cod yn C pan fo opsiwn gwell. Mae Rust eisoes yn ymwneud â Bcachefs wrth weithredu rhai o'r cyfleustodau gofod defnyddiwr. Ar ben hynny, mae'r syniad yn cael ei ddeor i ailysgrifennu Bcachefs yn llwyr yn Rust yn raddol, gan fod defnyddio'r iaith hon yn arbed amser dadfygio yn sylweddol.

Что касается продвижения Bcachefs в основной состав ядра Linux, то процесс принятия может затянуться из-за достаточной большого размера изменений (2500 патчей и около 90 тысяч строк кода), который трудно рецензировать. Для ускорения рецензирования некоторые разработчики предложили разбить серию патчей на более мелкие и логически разделённые части. В процессе обсуждения, некоторые участники также обратили внимание на развитие проекта одним разработчиком и опасность того, что код может остаться без сопровождения, в случае если с его разработчиком что-то случиться (к проекту проявляют интерес два сотрудника Red Hat, но их работа пока ограничивается исправлением ошибок).

Datblygir Bcachefs gan ddefnyddio technolegau a brofwyd eisoes wrth ddatblygu dyfais bloc Bcache, a gynlluniwyd i storio mynediad i yriannau caled araf ar yriannau SSD cyflym (wedi'u cynnwys yn y cnewyllyn ers rhyddhau 3.10). Mae Bcachefs yn defnyddio'r mecanwaith Copïo-ar-Write (COW), lle nad yw newidiadau yn arwain at drosysgrifo data - mae'r cyflwr newydd yn cael ei ysgrifennu i leoliad newydd, ac ar ôl hynny mae'r dangosydd cyflwr presennol yn newid.

Un o nodweddion Bcachefs yw cefnogaeth ar gyfer cysylltiad gyriannau aml-haen, lle mae storio yn cynnwys sawl haen - mae'r gyriannau cyflymaf (SSDs) wedi'u cysylltu â'r haen isaf, a ddefnyddir i storio data a ddefnyddir yn aml, ac mae'r haen uchaf yn ffurfio disgiau mwy capacious a rhatach sy'n storio data llai o alw. Gellir defnyddio caching writeback rhwng haenau. Gellir ychwanegu gyriannau yn ddeinamig at raniad a'u gwahanu oddi wrth raniad heb dorri ar draws y defnydd o'r system ffeiliau (mae data'n mudo'n awtomatig).

Ffynhonnell: opennet.ru

Prynu gwesteio dibynadwy ar gyfer gwefannau sydd â diogelwch DDoS, gweinyddwyr VPS VDS 🔥 Prynu cynnal gwefannau dibynadwy gyda diogelwch DDoS, gweinyddion VPS VDS | ProHoster