ما هو RAID0؟ الأداء ومخاطر تعطل الأقراص
الكاتب: فريق تحرير Domeny.ForSale تاريخ النشر
باختصار: يجمع RAID0 قرصين على الأقل في مساحة واحدة ويوزّع البيانات بينهما، مما قد يزيد سرعة القراءة والكتابة. لكنه لا يوفر القدرة على تحمّل الأعطال: فتعطل قرص واحد يعني عادةً فقدان الوصول إلى المصفوفة بأكملها. في Linux يمكن إنشاء RAID0 برمجيًا باستخدام mdadm، لكن الأفضل تخصيص هذا الترتيب لبيانات يمكن إعادة إنشائها أو تحميها نسخة احتياطية منفصلة.
كيف يوزّع RAID0 البيانات بين الأقراص
RAID هو أسلوب لتنظيم عدة أقراص في وحدة منطقية واحدة تُسمّى مصفوفة. يستخدم RAID0 تقنية striping، أي تقسيم البيانات إلى أجزاء تُكتب بالتتابع على أقراص مختلفة. ولا ينشئ نسخة إضافية أو معلومات تتيح إعادة بناء الأجزاء المفقودة.
على سبيل المثال، يمكن تقسيم ملف بحيث يُكتب الجزء الأول على القرص A، والثاني على القرص B، والثالث على A مجددًا. وعند القراءة، يمكن للجهازين العمل بالتوازي. وفي الوقت نفسه، يرى النظام مساحة واحدة يمكن إنشاء نظام ملفات عليها وتخزين المجلدات فيها.
يوفر قرصان سعة كل منهما 1 TB مساحة اسمية تبلغ نحو 2 TB قبل احتساب المساحة التي تستهلكها البنى الإدارية. وقد يعرض النظام رقمًا مختلفًا بسبب طريقة تحويل الوحدات. وإذا اختلفت السعات، فإن الاستفادة من المساحة تعتمد على كيفية تنفيذ RAID0، لذا فإن أبسط خيار هو استخدام أقراص متقاربة في السعة والأداء.
ما السرعة التي يمكن توقّعها؟
في عمليات القراءة والكتابة الكبيرة والمتواصلة، قد يحقق قرصان متشابهان أداءً يقترب من مجموع أداء كل منهما منفردًا. لكن ذلك لا يعني أن الحاسوب سيعمل بسرعة مضاعفة. فقد تكون الزيادة أقل بكثير عند تشغيل البرامج والتعامل مع الملفات الصغيرة وتنفيذ العمليات التي تتطلب زمن استجابة قصيرًا.
تحدّ من الأداء أيضًا وحدة التحكّم والواجهات والاتصال المشترك الذي يربط الأجهزة ببقية الحاسوب والمعالج وطريقة عمل التطبيق. لن تتحقق الاستفادة الكاملة من قرصي SSD سريعين إذا تجاوز معدل نقلهما الإجمالي سعة الاتصال المشترك. كما أن المصفوفة لا تلغي زمن التأخير الخاص بكل وسيط تخزين.
قبل اختيار RAID0، قِس زمن تنفيذ مهمة فعلية: نسخ محتوى كبير، أو تصدير فيديو، أو معالجة مجموعة بيانات. وقارن زمن التنفيذ بالعمل على قرص واحد. ينبغي أن يستخدم الاختبار بيانات أكبر من ذاكرة التخزين المؤقت المتاحة إذا أردت تقييم وسائط التخزين، لا أداء RAM بالدرجة الأولى.
متى يكون RAID0 مناسبًا، وماذا يعني حدوث عطل؟
قد يكون RAID0 مفيدًا كمساحة عمل للملفات المؤقتة أو البيانات المحلية المستخدمة في العمليات الحسابية أو المواد التي توجد أصولها على وسيط آخر. مثلًا، يحتفظ محرّر فيديو بالتسجيلات الأصلية والمشروع في مكان منفصل وآمن، ويستخدم المصفوفة للملفات الوسيطة. عندئذٍ يعني العطل الحاجة إلى وقت لإعادة توليد البيانات، لا فقدان النسخة الوحيدة من العمل.
ليس هذا خيارًا جيدًا للاحتفاظ بالأرشيف الوحيد للصور أو مستندات الشركة أو بيانات خدمة يجب أن تظل متاحة. فكل قرص جزء لا غنى عنه من المصفوفة. وإضافة المزيد من وسائط التخزين تزيد عدد الأجهزة التي قد يؤدي تعطل أي منها إلى توقف المصفوفة عن العمل.
بعد تلف قرص واحد، لا يمكنك ببساطة استبداله وإعادة بناء البيانات من الأقراص المتبقية، كما يحدث في مصفوفة تعتمد على التكرار، أي تحتفظ بمعلومات إضافية لاستعادة البيانات. فالأقراص السليمة تحتوي على بعض الأجزاء فقط. وقد يكون الاسترداد المتخصص ممكنًا أحيانًا، لكنه يعتمد على نوع التلف ولا يقدم ضمانًا.
إذا كانت مواصلة العمل بعد تعطل قرص هي الأهم، ففكّر في RAID1، الذي يكتب نسخًا متطابقة من البيانات. وستظل بحاجة إلى نسخة احتياطية منفصلة: فلا تحمي أي من هاتين المصفوفتين بمفردها من حذف الملفات عرضًا أو تشفيرها بواسطة برمجيات خبيثة.
كيفية إنشاء RAID0 في Linux باستخدام mdadm
mdadm أداة لإدارة المصفوفات البرمجية في Linux. يفترض المثال التالي وجود قرصين إضافيين فارغين: /dev/sdb و/dev/sdc. هذه الأوامر تتلف البيانات الموجودة على الأجهزة المحددة. لا تنفّذها قبل التحقق من أسماء الأقراص وتأمين الملفات التي تحتاج إليها.
تحقّق أولًا من الأجهزة:
lsblk -o NAME,SIZE,MODEL,SERIAL,FSTYPE,MOUNTPOINTS
قارن السعات والطرازات والأرقام التسلسلية. وتأكد من أن الأقراص المختارة لا تحتوي على نظام التشغيل أو أقسام نشطة أو بيانات تحتاج إليها. ثبّت حزمة mdadm باستخدام مدير الحزم الخاص بتوزيعتك؛ مثلًا، في Debian وUbuntu:
sudo apt install mdadm
أنشئ المصفوفة ونظام الملفات ونقطة التركيب:
sudo mdadm --create /dev/md0 --level=0 --raid-devices=2 /dev/sdb /dev/sdc
cat /proc/mdstat
sudo mkfs.ext4 /dev/md0
sudo mkdir -p /mnt/raid0
sudo mount /dev/md0 /mnt/raid0
تفترض هذه الأوامر أيضًا أن /dev/md0 لا تستخدمه مصفوفة أخرى بالفعل. إذا حذّرت الأداة من وجود بيانات أو تواقيع سابقة، فتوقف وتحقق من مصدرها بدلًا من تأكيد العملية تلقائيًا.
ما الذي ينبغي إعداده بعد إنشاء المصفوفة؟
لا يكفي تركيب المصفوفة مرة واحدة لضمان عملها بصورة صحيحة بعد إعادة التشغيل. تحقّق من إعداد اكتشاف المصفوفات في mdadm؛ فموقع ملف الإعداد والحاجة المحتملة إلى تحديث initramfs يعتمدان على التوزيعة. راجع وثائقها الرسمية للتأكد من التعليمات.
لإعداد التركيب الدائم في /etc/fstab، استخدم UUID الخاص بنظام الملفات، الذي يمكنك معرفته بالأمر sudo blkid /dev/md0، بدلًا من افتراض أن اسم الجهاز لن يتغير. اختبر الإدخال قبل إعادة التشغيل، واضبط أذونات المجلد وفقًا لاحتياجات المستخدم أو التطبيق.
قبل نقل عملك إلى هذه المساحة، احسم أمرًا واحدًا: من أين ستستعيد البيانات إذا فقدت المصفوفة؟ إذا كانت الإجابة «لا يوجد مصدر»، فأنشئ نسخة احتياطية أولًا أو اختر ترتيبًا آخر للأقراص.
