إن bcachefs ناضج بالفعل بدرجة كافية ليتم تضمينه في فرع Linux الرئيسي ، وفقًا لكلمات مؤلفه 

com.bcachefs

Bcachefs هو نظام ملفات يمكن نسخه عند الكتابة لأنظمة التشغيل المستندة إلى Linux.

مساعدات في الآونة الأخيرة كينت أوفرستريت، مؤلف bcachefs ، في خطابه في مؤتمر LSFMM 2023 تلخيص نتائج العمل في ترقية نظام الملفات Bcachefs على الفرع الرئيسي من Linux kernel وناقش خططًا لمزيد من التطوير للنواة.

تم تطوير Bcachefs باستخدام تقنيات مثبتة بالفعل في تطوير جهاز Bcache block ، المصمم للتخزين المؤقت للوصول إلى محركات الأقراص الثابتة البطيئة على محركات أقراص SSD السريعة (المضمنة في النواة منذ الإصدار 3.10). يستخدم Bcachefs آلية النسخ على الكتابة (COW) ، حيث لا تؤدي التغييرات إلى الكتابة فوق البيانات: تتم كتابة الحالة الجديدة إلى موقع جديد ، وبعد ذلك يتغير مؤشر الحالة الحالية.

ميزة Bcachefs هي ملف دعم لتوصيل محركات متعددة الطبقات، حيث يتكون التخزين من طبقات متعددة: يتم إرفاق محركات أقراص أسرع (SSD) بالطبقة السفلية ، والتي تُستخدم لتخزين البيانات المستخدمة بشكل متكرر ، وتشكل الطبقة العليا محركات أقراص ذات سعة أكبر وأرخص محركات تخزن بيانات أقل طلبًا. يمكن استخدام التخزين المؤقت للكتابة بين الطبقات. يمكن إضافة محركات الأقراص بشكل ديناميكي وفصلها عن أحد الأقسام دون مقاطعة استخدام نظام الملفات (يتم ترحيل البيانات تلقائيًا).

فيما يتعلق بالمشروع ، يذكر أن هدف تطوير Bcachefs هو الوصول إلى مستوى XFS من حيث الأداء ، الموثوقية وقابلية التوسع.

مع توفير ميزات إضافية متأصلة في Btrfs و ZFS ، مثل الأجهزة المتعددة في قسم واحد ، وتخطيطات التخزين متعددة المستويات ، والنسخ المتماثل (RAID 1/10) ، والتخزين المؤقت ، و LZ4 ، و gzip و ZSTD ، ومقاطع الحالة ، والتحقق من سلامة المجموع الاختباري ، والقدرة لتخزين أكواد تصحيح الخطأ Reed-Solomon ، تخزين المعلومات المشفرة.

من حيث الأداء ، يتقدم Bcachefs على Btrfs وأنظمة الملفات الأخرى القائمة على آلية النسخ على الكتابة ، مما يدل على أداء قريب من Ext4 و XFS.

من بين أحدث الإنجازات في تطوير Bcachefs ، يبرز استقرار تنفيذ اللقطات المتاحة للكتابة. مقارنةً بـ Btrfs ، أصبحت اللقطات في Bcachefs الآن أفضل بشكل ملحوظ وخالية من المشاكل الكامنة في Btrfs.

في الممارسة العملية ، تم اختبار عمل اللقطات عند تنظيم نسخ MySQL الاحتياطية. قام Bcachefs أيضًا بالكثير من العمل لتحسين قابلية التوسع: لقد كان أداء نظام الملفات جيدًا في الاختبارات على سعة تخزين 100 تيرابايت ، ومن المتوقع نشر Bcachefs على مساحة تخزين 1 بيتابايت في المستقبل القريب.

بالإضافة إلى ذلك ، تم إبراز ذلك أيضًا إضافة وضع nocow جديد لتعطيل آلية "النسخ عند الكتابة". خلال فصل الصيف ، يخططون لجلب تنفيذ أكواد تصحيح الأخطاء و RAIDZ إلى حالة مستقرة ، بالإضافة إلى حل المشكلات المتعلقة باستهلاك الذاكرة المرتفع عند استعادة أنظمة الملفات والتحقق منها باستخدام الأداة المساعدة fsck.

من خطط المستقبل ذكر دأريد استخدام لغة Rust في تطوير Bcachefs. وفقًا لمؤلف Bcachefs:

إنه يحب البرمجة ، وليس رمز التصحيح ، والآن من الجنون كتابة التعليمات البرمجية بلغة C عندما يكون هناك خيار أفضل. يشارك Rust بالفعل في Bcachefs في تنفيذ بعض أدوات مساحة المستخدمين. أيضًا ، فكرة إعادة كتابة Bcachefs بالكامل في Rust يتم تفقيسها بشكل تدريجي ، لأن استخدام هذه اللغة يوفر بشكل كبير وقت التصحيح.

بخصوص نقل Bcachefs إلى فرع النواة الرئيسي من لينكس ، قد تتأخر عملية التبني بسبب الحجم الكبير للتغييرات (2500 رقعة وحوالي 90 ألف سطر من التعليمات البرمجية) ، وهو أمر يصعب مراجعته. لتسريع المراجعة ، بعض المطورين اقترح تقسيم سلسلة التصحيح إلى أجزاء أصغر وأكثر منطقية.

أثناء المناقشة ، لفت بعض المشاركين الانتباه أيضًا إلى تطوير المشروع من قبل مطور وخطر عدم الحفاظ على الكود إذا حدث شيء لمطوره (موظفان من Red Hat مهتمان بالمشروع ، لكن عملك لا يزال معلقًا ). إصلاحات محدودة للأخطاء).

في مايو ، تم اقتراح مراجعته وإدراجه في الجزء الرئيسي من Linux kernel. تم الإعلان عن الاستعداد لمراجعة تنفيذ Bcachefs قبل إدراجه في Kernel في نهاية عام 2020 ، وتأخذ النسخة الحالية من التصحيحات في الاعتبار التعليقات وأوجه القصور التي تم تحديدها خلال المراجعة السابقة.

مصدر: https://lwn.net/


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.