Bcachef-ləri Linux nüvəsinə təşviq etmək

Linux nüvəsinin bir hissəsi olan BCache SSD blok qurğularının keşləmə sisteminin müəllifi Kent Overstreet LSFMM 2023 konfransında (Linux Storage, Filesystem, Memory Management) çıxışında Bcachefs fayl sisteminin təşviqi üzrə işlərin nəticələrini ümumiləşdirdi. & BPF Summit). Linux nüvəsinin əsas tərkibinə daxil edildi və bu FS-nin gələcək inkişafı üçün planlar haqqında danışdı. May ayında Bcachefs FS tətbiqi ilə yenilənmiş yamaqlar dəsti nəzərdən keçirilmək və Linux nüvəsinin əsas tərkibinə daxil edilmək üçün təklif edildi. FS Bcachefs təxminən 10 ildir ki, inkişaf edir. Əsasa daxil edilməzdən əvvəl Bcachefs-in tətbiqini nəzərdən keçirməyə hazırlıq 2020-ci ilin sonunda elan edildi və yamaqların hazırkı versiyası əvvəlki baxış zamanı aşkar edilmiş şərhləri və çatışmazlıqları nəzərə alır.

Bcachefs-in inkişaf məqsədi Btrfs və ZFS-ə xas olan əlavə xüsusiyyətləri təmin etməklə yanaşı, performans, etibarlılıq və miqyasda XFS səviyyəsinə çatmaqdır, məsələn, bölməyə çoxsaylı cihazların daxil edilməsi, çox qatlı saxlama planları, replikasiya (RAID 1/10), keşləmə, məlumatların şəffaf sıxılması (LZ4, gzip və ZSTD rejimləri), dövlət dilimləri (snapshots), yoxlama məbləğləri ilə bütövlüyün yoxlanılması, Reed-Solomon səhv düzəliş kodlarını saxlamaq imkanı (RAID 5/6), məlumatın şifrəli saxlanması (ChaCha20 və Poly1305) istifadə olunur). Performans baxımından Bcachefs Btrfs və Copy-on-Write mexanizminə əsaslanan digər fayl sistemlərini qabaqlayır və Ext4 və XFS-ə yaxın performans nümayiş etdirir.

Bcachefs-in inkişafındakı ən son nailiyyətlərdən, yazı üçün mövcud olan snapshotların həyata keçirilməsinin sabitləşməsi qeyd olunur. Btrfs ilə müqayisədə, Bcachefs-dəki snapshotlar indi daha yaxşı miqyaslana bilir və Btrfs-ə xas problemlərdən azaddır. Təcrübədə, MySQL ehtiyat nüsxələrinin təşkili zamanı snapshotların işi sınaqdan keçirildi. Bcachefs həmçinin miqyaslılığı təkmilləşdirmək üçün çox iş görüb - fayl sistemi 100 TB yaddaşda sınaqda yaxşı çıxış edib və Bcachefs-in yaxın gələcəkdə 1 PB yaddaşda tətbiq ediləcəyi gözlənilir. "Kopyala-on-yazma" (nocow) mexanizmini söndürmək üçün yeni nocow rejimi əlavə edilib. Yayda onlar fsck yardım proqramı ilə fayl sistemlərinin bərpası və yoxlanılması zamanı səhvlərin düzəltmə kodlarının və RAIDZ-nin tətbiqini sabit vəziyyətə gətirməyi, həmçinin yüksək yaddaş istehlakı ilə bağlı problemləri həll etməyi planlaşdırırlar.

Gələcək üçün planlardan Bcachefs-in inkişafında Rust dilindən istifadə etmək istəyi qeyd olunur. Bcachefs-in müəllifinin sözlərinə görə, o, kodun səhvini yoxlamağı xoşlayır və indi daha yaxşı variant olanda C-də kod yazmaq dəlilikdir. Rust artıq Bcachefs-də bəzi istifadəçi-kosmik kommunal proqramların həyata keçirilməsində iştirak edir. Üstəlik, Rust-da Bcachefs-i tədricən tamamilə yenidən yazmaq ideyası hazırlanır, çünki bu dildən istifadə sazlama vaxtına xeyli qənaət edir.

Bcachefs-in Linux nüvəsinin əsas axınına köçürülməsinə gəlincə, qəbul prosesi dəyişikliklərin böyük ölçüsünə (2500 yamaq və təxminən 90 min kod sətirinə) görə gecikə bilər, onu nəzərdən keçirmək çətindir. Baxışı sürətləndirmək üçün bəzi tərtibatçılar yamaq seriyasını daha kiçik və məntiqi olaraq ayrılmış hissələrə bölməyi təklif etdilər. Müzakirə zamanı bəzi iştirakçılar layihənin bir tərtibatçı tərəfindən hazırlanmasına və onun tərtibatçısına nəsə baş verərsə, kodun baxımsız qalma təhlükəsinə də diqqət çəkiblər (Red Hat-ın iki əməkdaşı layihə ilə maraqlanır, lakin onların işi hələ də davam edir. məhdud səhv düzəlişləri).

Bcachefs, sürətli SSD-lərdə (3.10 buraxılışından bəri nüvəyə daxildir) yavaş sərt disklərə giriş üçün nəzərdə tutulmuş Bcache blok cihazının hazırlanmasında artıq sınaqdan keçirilmiş texnologiyalardan istifadə etməklə hazırlanmışdır. Bcachefs Copy-on-Write (COW) mexanizmindən istifadə edir, bu mexanizmdə dəyişikliklər verilənlərin üzərinə yazılmağa səbəb olmur - yeni vəziyyət yeni yerə yazılır, bundan sonra cari vəziyyət göstəricisi dəyişir.

Bcachefs-in bir xüsusiyyəti, yaddaşın bir neçə təbəqədən ibarət olduğu sürücülərin çox qatlı birləşdirilməsinə dəstəkdir - ən sürətli disklər (SSD) tez-tez istifadə olunan məlumatları keşləmək üçün istifadə olunan alt təbəqəyə qoşulur və üst təbəqə formalaşdırır. daha az tələb olunan məlumatları saxlayan daha tutumlu və daha ucuz disklər. Yazının keşləşdirilməsi təbəqələr arasında istifadə edilə bilər. Disklər fayl sisteminin istifadəsini dayandırmadan dinamik şəkildə bölməyə əlavə oluna və ondan ayrıla bilər (məlumatlar avtomatik olaraq miqrasiya edir).

Mənbə: opennet.ru

Добавить комментарий