تأسست عام 2008 · النسخة الرقمية · 19 يونيو 2026

SMB IT Journal

مورد تقنية المعلومات للشركات الصغيرة

العربية
التخزين

إعادة النظر في RAID

حين كنت فنياً مبتدئاً في الخدمة ولا أعرف إلا القليل عن إدارة الأنظمة، كان أحد الموضوعات القليلة التي كان يُتوقع منا دائماً معرفتها جيداً هو RAID – المصفوفة المكررة من الأقراص غير المكلفة. كانت الإجابة على كل مشكلات التخزين لدينا. مع RAID يمكننا توسيع أنظمة الملفات لديها، وتحقيق إنتاجية أفضل، وإضافة التكرار مما يتيح لنا الصمود أمام فقدان قرص وهو ما كان يحدث بشكل منتظم في تلك الأيام. مع صعود أجهزة تخزين NAS وSAN، تتلاشى بسرعة مهارة النزول إلى مستوى التخزين المادي وضبطه لتلبية احتياجات النظام المعني. وهذا ليس أمراً جيداً. فمجرد تفويض التخزين إلى أجهزة خارجية لا يغير حقيقة أننا بحاجة إلى فهم تخزيننا بشكل جوهري وتهيئته لتلبية الاحتياجات المحددة لأنظمتنا.

مفهوم خاطئ بدا يدخل الميدان خلال السنوات الخمس إلى العشر الماضية هو الاعتقاد بأن RAID يمثل نوعاً من النسخ الاحتياطي للنظام. وهذا غير صحيح. RAID هو شكل من أشكال تحمل الأعطال. النسخ الاحتياطي وتحمل الأعطال مفهومان مختلفان اختلافاً جوهرياً. النسخ الاحتياطي مصمم ليتيح لك الاسترداد بعد وقوع كارثة. تحمل الأعطال مصمم لتقليل احتمالية الكارثة في المقام الأول. فكر في تحمل الأعطال كإقامة سياج على حافة جرف، وفي النسخ الاحتياطي كإنشاء مستشفى عند قاعدته. لا تريد أبداً أن تجد نفسك في وضع بلا سياج وبلا مستشفى، لكنهما بالتأكيد شيئان مختلفان.

بمجرد تنفيذ RAID لأقراصنا، سواء كانت متصلة محلياً أو على جهاز بعيد كـ SAN، لدينا اليوم أربعة حلول RAID رئيسية نختار منها في بيئة الأعمال: RAID 1 (التطابق)، وRAID 5 (التشريح مع التكافؤ)، وRAID 6 (التشريح مع التكافؤ المزدوج)، وRAID 10 (التطابق مع التشريح). ثمة أنواع أخرى كـ RAID 0 التي يجب استخدامها فقط في ظروف نادرة حين تفهم احتياجات نظام الأقراص فعلاً. يُستخدم RAID 50 وRAID 51 أيضاً لكن بشكل أقل شيوعاً وليسا فعّالَين بالقدر نفسه. قبل عشر سنوات كان RAID 1 وRAID 5 شائعَين، لكن اليوم لدينا المزيد من الخيارات.

دعنا نستعرض الخيارات ونناقش بعض الأرقام الأساسية. في أمثلتنا سنستخدم n للتعبير عن عدد الأقراص في مصفوفتنا وسنستخدم s للتعبير عن حجم أي قرص منفرد. باستخدام هذين المتغيرين يمكننا التعبير عن مساحة التخزين القابلة للاستخدام في المصفوفة مما يُسهّل المقارنة من حيث سعة التخزين.

RAID 1: في هذا النوع من RAID تُطابَق الأقراص. لديك قرصان يقومان بكل شيء معاً في آنٍ واحد، ومن هنا جاءت تسمية "التطابق". التطابق بالغ الاستقرار لبساطة العملية، لكنه يستلزم شراء ضعف عدد الأقراص التي تحتاجها لو لم تكن تستخدم RAID لأن قرصك الثاني مخصص للتكرار. الميزة هي أن لديك التأكيد بأن كل بت تكتبه على القرص يُكتب مرتين لحمايتك. إذن مع RAID 1 تُحسب سعتنا بـ (n*s/2). يعاني RAID 1 من تقديم مكاسب أداء ضئيلة مقارنة بالأقراص غير المبنية على RAID. سرعات الكتابة مكافئة لنظام غير مبني على RAID في حين أن سرعات القراءة تكاد تكون ضعفها في معظم الحالات إذ يمكن للأقراص الوصول بالتوازي خلال عمليات القراءة لزيادة الإنتاجية. يقتصر RAID 1 على مجموعات من قرصَين.

RAID 5: التشريح مع التكافؤ الأحادي، في هذا النوع من RAID تُكتب البيانات في شريط معقد عبر جميع الأقراص في المصفوفة مع كتلة تكافؤ موزعة تتواجد عبر جميع الأقراص. بهذه الطريقة يستطيع RAID 5 استخدام مصفوفة بأحجام متعددة من ثلاثة أقراص أو أكثر ولا يفقد سعة التخزين إلا بما يعادل قرصاً واحداً للتكافؤ، وإن كان التكافؤ موزعاً ولا يوجد على قرص مادي واحد فحسب. يُستخدم RAID 5 كثيراً بسبب فعاليته من حيث التكلفة نظراً لضآلة فقدانه لسعة التخزين في المصفوفات الكبيرة. خلافاً للتطابق، يستلزم التشريح مع التكافؤ إجراء حساب لكل شريط كتابة عبر الأقراص مما يُنشئ بعض العبء الزائد. لذلك لا تكون الإنتاجية دائماً حسابية واضحة وتعتمد اعتماداً كبيراً على القوة الحسابية للنظام الذي يُجري حساب التكافؤ. حساب سعة RAID 5 بسيط للغاية إذ هو ببساطة ((n-1)*s). يمكن لمصفوفة RAID 5 تحمل فقدان أي قرص واحد في المصفوفة.

RAID 6: التشريح المكرر مع التكافؤ المزدوج. RAID 6 مطابق تقريباً لـ RAID 5 لكنه يستخدم كتلتَي تكافؤ لكل شريط بدلاً من واحدة ليوفر حماية إضافية من فشل الأقراص. RAID 6 عضو أحدث في عائلة RAID إذ أُضيف بعد سنوات من توحيد المستويات الأخرى. RAID 6 مميز لأنه يتيح فشل أي قرصَين داخل المصفوفة دون فقدان البيانات. لكن لاستيعاب المستوى الإضافي من التكرار، تفقد مصفوفة RAID 6 سعة التخزين المكافئة لقرصَين في المصفوفة وتتطلب حداً أدنى من أربعة أقراص. يمكننا حساب سعة مصفوفة RAID 6 بـ ((n-2)*s).

RAID 10: التطابق مع التشريح. تقنياً RAID 10 هو نوع RAID هجين يشمل مجموعة من مرايا RAID 1 موجودة في شريط غير تكافئي (RAID 0). يستخدم كثير من البائعين مصطلح RAID 10 (أو RAID 1+0) حين يتحدثون عن قرصَين فحسب في المصفوفة لكن تقنياً ذاك هو RAID 1 لأن التشريح لا يمكن حدوثه حتى يكون هناك حد أدنى من أربعة أقراص في المصفوفة. مع RAID 10 يجب إضافة الأقراص في أزواج لذا يمكن وجود عدد زوجي فحسب من الأقراص في المصفوفة. يستطيع RAID 10 تحمل فقدان ما يصل إلى نصف المجموعة الإجمالية من الأقراص لكن بحد أقصى قرص واحد من كل زوج. لا يتضمن RAID 10 حساباً للتكافؤ مما يمنحه أفضلية أداء على RAID 5 أو RAID 6 ويتطلب قوة حسابية أقل لتشغيل المصفوفة. يحقق RAID 10 أعلى أداء قراءة من بين جميع أنواع RAID الشائعة إذ يمكن استخدام جميع الأقراص في المصفوفة في آنٍ واحد في عمليات القراءة وإن كان أداء الكتابة لديه أدنى بكثير. حساب سعة RAID 10 مطابق لـ RAID 1، (n*s/2).

في مؤسسات اليوم، نادراً ما يحتاج قسم تقنية المعلومات إلى النظر في أي تهيئة أقراص خارج الأربعة المذكورة هنا بصرف النظر عما إذا كان يُنفَّذ RAID برمجياً أم بمعدات. تقليدياً كان أكبر اهتمام في قرار مصفوفة RAID يتمحور حول السعة القابلة للاستخدام. كان ذلك لأن الأقراص كانت مكلفة وصغيرة. أما اليوم فالأقراص كبيرة جداً حتى إن سعة التخزين نادراً ما تشكل مشكلة، على الأقل ليس كما كانت قبل سنوات قليلة، وانخفضت التكاليف بحيث أصبح شراء أقراص إضافية ضرورية لتكرار أفضل للأقراص مصدر قلق ثانوي في الغالب. حين تكون السعة شحيحة، يكون RAID 5 خياراً شائعاً لأنه يفقد أقل سعة تخزين مقارنة بأنواع المصفوفات الأخرى وفي المصفوفات الكبيرة يكون فقدان التخزين اسمياً.

اليوم لدينا عموماً مخاوف أخرى، أبرزها سلامة البيانات والأداء. إنفاق مبلغ إضافي بسيط لضمان حماية البيانات ينبغي أن يكون خياراً واضحاً. يعاني RAID 5 من قدرته على تحمل فقدان قرص واحد فحسب. في مصفوفة من ثلاثة أعضاء فقط، هذا أكثر خطورة بقليل فحسب من الحماية التي يوفرها RAID 1. يمكننا تحمل فقدان أي قرص من ثلاثة. ليس مثيراً للقلق كثيراً مقارنة بفقدان أحد قرصَين. لكن ماذا عن مصفوفة كبيرة، لنقل ستة عشر قرصاً؟ القدرة على تحمل فقدان قرص واحد فحسب من ستة عشر ينبغي أن يدفعنا إلى التساؤل عن موثوقيتنا بشكل أعمق.

هنا تدخّل RAID 6 ليملأ الفجوة. RAID 6 حين يُستخدم في مصفوفة كبيرة يُدخل فقداناً صغيراً جداً في سعة التخزين والأداء مع توفير ضمان القدرة على فقدان أي قرصَين. سيستشهد المؤيدون لمعسكر التشريح مع التكافؤ بهذه الأرقام لطمأنة الإدارة بأن RAID 5/6 يمكنه توفير "قيمة مناسبة مقابل التكلفة" في أنظمة التخزين الفرعية، لكن ثمة عوامل أخرى في اللعبة.

المغفَل تقريباً كلياً في مناقشات موثوقية RAID، وهو موضوع نادراً ما يُناقَش أصلاً، هو مسألة موثوقية حساب التكافؤ. مع RAID 1 أو RAID 10 لا تُجرى "عملية حسابية" لإنشاء شريط مع تكافؤ. تُكتب البيانات بطريقة مستقرة. حين يفشل أحد الأقراص، يتولى شريكه الحِمل وينخفض أداء القرص انخفاضاً طفيفاً حتى يُستبدل الشريك. لا توجد عملية إعادة بناء تؤثر على أعضاء الأقراص الموجودين. ليس كذلك مع أشرطة التكافؤ.

مصفوفات RAID ذات التكافؤ لها عمليات تتضمن حساب ما يوجد وما ينبغي أن يوجد على الأقراص. في حين هذا الحساب بسيط للغاية، إلا أنه يُتيح فرصة لوقوع أخطاء. وحدة تحكم المصفوفة التي تفشل مع RAID 1 أو RAID 10 قد تكتب نظرياً بيانات سيئة فوق محتويات الأقراص لكن لا توجد عملية تُجري بها وحدة التحكم تغييرات على الأقراص بمفردها، لذا من المستبعد للغاية أن يحدث هذا لأنه لا توجد عملية "إعادة بناء" إلا عند إنشاء التطابق.

حين تُجري مصفوفات ذات تكافؤ عملية إعادة البناء، تُنفّذ عملية معقدة تتجول عبر المحتوى الكامل للمصفوفة وتُعيد كتابة البيانات المفقودة على القرص المستبدَل. في حد ذاتها هذه العملية بسيطة نسبياً وينبغي ألا تكون مثار قلق. ما شهدته أنا وغيري بشكل مباشر هو سيناريو مختلف قليلاً ينطوي على أقراص فقدت اتصالها بسبب موصلات مرتخية في المصفوفة. إذ يمكن للأقراص أن تنفلت بشكل شائع مع مرور الوقت وهي داخل خادم لا سيما بعد سنوات عديدة من الخدمة في نظام دائم التشغيل.

ما يمكن حدوثه، في سيناريوهات متطرفة، هو أن بيانات جيدة على الأقراص يمكن أن تُكتب فوقها بيانات تكافؤ سيئة حين تعتقد وحدة تحكم المصفوفة أن قرصاً واحداً أو أكثر قد فشل بالتسلسل وأُعيد توصيله من أجل إعادة البناء. في هذه الحالة لم تفشل الأقراص نفسها ولا يوجد فقدان للبيانات. كل ما يلزم هو إعادة تركيب الأقراص نظرياً. على أنظمة التبديل الساخن تكون إدارة إعادة بناء الأقراص في الغالب تلقائية استناداً إلى إزالة القرص الفاشل واستبداله. لذا قد تحدث عملية فقدان القرص واستبداله دون أي تدخل بشري – وقد تبدأ عملية إعادة البناء. خلال هذه العملية يكون نظام الأقراص في خطر وإذا وقع الحدث ذاته مجدداً قد تبدأ مصفوفة الأقراص، بناءً على حالة الأقراص، في تشريح بيانات سيئة عبر الأقراص فتُكتب فوق نظام الملفات الجيد. إنه من أكثر المشاهد إحباطاً لمسؤول الخادم أن يرى نظاماً بأقراص سليمة يفقد مصفوفة كاملة بسبب عملية إعادة بناء غير ضرورية.

نظرياً لا ينبغي أن يحدث هذا النوع من المواقف وتوجد ضمانات لحمايتنا منها، لكن تحديد وحدة تحكم القرص منخفضة المستوى لحالة القرص حالياً وتاريخياً وجودة البيانات الموجودة عليه ليس بالأمر البسيط كما قد يبدو وأخطاء يمكن أن تقع. في حين هذا الموقف بعيد الاحتمال إلا أنه يحدث ويُضيف خطراً يصعب حسابه تقريباً إلى أنظمة RAID 5 وRAID 6. يجب علينا النظر في خطر فشل التكافؤ إضافة إلى الخطر التقليدي المحسوب من عدد الأقراص التي يمكن للمصفوفة الصمود أمام فقدانها من مجموعة ما. مع زيادة موثوقية الأقراص، تصبح أهمية حدث خطر فشل التكافؤ أكبر.

علاوة على ذلك، يُدخل تكافؤ RAID 5 وRAID 6 عبئاً على النظام بسبب حساب التكافؤ الذي كثيراً ما يُعالَج عبر أجهزة RAID مخصصة. هذا الحساب يُدخل زمن استجابة في نظام الأقراص الفرعي يتفاوت تفاوتاً كبيراً حسب التنفيذ سواء في الأجهزة أو البرامج مما يجعل من المستحيل الإفصاح عن أرقام أداء لمستويات RAID مقارنة ببعضها لأن كل تنفيذ سيكون فريداً.

ربما أكبر مشكلة في خيارات RAID اليوم هي أن سهولة الحصول على مقاييس كفاءة التخزين وقدرة تحمل فقدان الأقراص تُخفّي الصورة الشاملة للموثوقية والأداء لأن تلك الإحصائيات غير متاحة تقريباً. من مخاطر المقاييس أن الناس سيُركّزون على العوامل القابلة للقياس بسهولة ويتجاهلون تلك التي لا يمكن قياسها بسهولة بصرف النظر عن تأثيرها المحتمل.

في حين أن جميع مستويات RAID الحديثة لها مكانها، من الضروري دراستها في سياقها مع فهم النطاق الكامل للمخاطر. ينبغي أن نعمل جاهدين على تحويل صناعتنا من الإعداد الافتراضي بـ RAID 5 إلى الإعداد الافتراضي بـ RAID 10. فالأقراص رخيصة وفقدان البيانات مكلف.

[تعديل: في السنوات التي تلت كتابة هذا المقال أصلاً، أدى صعود مخاطر URE (أخطاء القراءة غير القابلة للاسترداد) خلال عملية إعادة البناء إلى تحويل المخاطر الأساسية من تلك المذكورة إلى المخاطر المرتبطة بـ URE لمصفوفات التكافؤ.]

موسوم بـraid storage

إعلان

SMB IT Journal — the IT resource for small business