همانطور که می دانید RAID مخفف کلمات Redundant Array of Independent Disks می باشد و در واقع یک مکانیزم برای ارتقای کارایی و دسترسی پذیری ما به رسانه های ذخیره سازی با استفاده از چندین هارد درایو می باشد. هارد درایوها در RAID به گونه ای پیکربندی می شوند که اطلاعات در بین هارد درایوهای مختلف تقسیم بندی شود و Load کاری نیز طبیعتا بین آنها تقسیم می شود ، بعضا اطلاعات بصورت نسخه برداری شده ( کپی برداری شده ) بر روی هارد درایو دیگری عینا کپی می شوند تا در صورت بروز مشکل برای یکی از هارد درایوها ، اطلاعات از هارد درایو دیگر قابل بازیابی باشند. البته RAID هایی وجود دارند که ضمن اینکه اطلاعات را تقسیم بندی می کنند در عین حال نسخه برداری بر روی چندین هارد درایو را نیز انجام می دهند. RAID ها را معمولا بصورت سخت افزاری و نرم افزاری می شناسند ، RAID های سخت افزاری از طریق RAID Controller هایی انجام می شود که بدون نیاز به سیستم عامل از همان بدو روشن شدن سیستم قابل پیکربندی هستند اما RAID های نرم افزاری بعد از نصب سیستم عامل انجام می شوند و ابزار ایجاد کردن RAID در واقع همان سیستم عامل است. وظیفه مدیریت RAID ها در حالت سخت افزاری بر عهده سیستم عامل نیست اما در RAID های نرم افزاری وظیفه مدیریت RAID بر عهده سیستم عامل است.
قطعا هزینه RAID سخت افزاری از RAID نرم افزاری با توجه به اینکه نیاز به خرید یک بود سخت افزاری یا RAID Controller است ، گرانتر است. بعضا کمتر افرادی هستند که بصورت جداگانه RAID Controller سخت افزاری خریداری کنند و این Controller های سخت افزاری معمولا روی سرورهای سخت افزاری وجود دارد. اگر با سرورهای شرکت HP و یا Intel کار کرده باشید حتما متوجه می شوید که آنها برای خودشان یک RAID Controller سخت افزاری دارند که بعضا در سرورهای HP با استفاده از یک نرم افزار به نام HP Smart Start در Boot سیستم و حتی قبل از نصب سیستم عامل راه اندای می شوند. از طرفی RAID های نرم افزاری باعث خراب شدن و کاهش کارایی سیستم عامل می شوند و منابع سیستم عامل را بسیار درگیر خود می کنند اما نکته مهم در خصوص RAID های نرم افزار ارزان بودن و عدم نیاز به سخت افزار خاص برای پیاده سازی است.
RAID Controller چیست
دلیل اینکه RAID های نرم افزاری باعث کاهش کارایی سیستم می شوند این است که سیستم عامل برای اینکه داده ها را بر روی دیسک ها بنویسد و متوجه شود که کدام قسمت داده باید در کدام قسمت دیسک ذخیره سازی شود ، نیاز دارد که آنها را پردازش کند. کارایی سیستم در انواع RAID های مختلف متفاوت است ، هر چقدر فرآیند RAID پیچیدگی بیشتری داشته باشد منابع بیشتری از سیستم دریافت می شود.برای مثال در JBOD Array که یک نوع RAID است کارایی سیستم بسیار کم تحت تاثیر قرار می گیرد اما در فرآیند های Stripping و قراردادن اطلاعات بر روی چندین دیسک کارایی سیستم عامل ممکن است به شدت تحت تاثیر قرار بگیرد. اما در RAID های سخت افزاری این Controller است که وظیفه مدیریت این فرآیند ها را دارد و سیستم عامل درگیر این موارد نمی شود. در واقع زمانیکه شما یک RAID سخت افزاری انجام می دهید اصلا سیستم عامل در کنسول مدیریت دیسک ها خود این RAID را تشخیص نمی دهد و فقط یک دیسک را مشاهده می کند. سیستم عامل در چنین شرایطی فرض می کند که اطلاعات را بر روی یک هارد درایو می نویسد در صورتیکه RAID Controller سخت افزاری این مسئله را تشخیص می دهد که چه داده ای در کجا باید نوشته شود.
بدون شکر RAID های سخت افزاری در مقایسه با RAID های نرم افزاری قابل اعتماد تر هستند. یک RAID نرم افزاری ممکن است به دلیل خرابی سیستم عامل و یا مشکل در درایور نرم افزار RAID باعث از بین رفتن اطلاعات شما شود ، حتی بعضا یک RAID نرم افزاری در صورتیکه سیستم کامپیوتری شما دارای Load کاری زیاد باشد ممکن است از بین برود و دچار مشکل شود ، پردازش های سنگین سیستم عامل می توانند به شدت داده های موجود در RAID های نرم افزاری را تحت تاثیر قرار دهند و بعضا فرآیند خواندن و نوشتن داده را به شدت کند کنند ، کندی در RAID ها باعث زیر سئوال رفتن اصل مفهوم RAID و دسترسی پذیری آنها به مرور زمان می شود. برای انتهای مطلب می توانیم بصورت خلاصه تفاوت بین RAID های نرم افزاری و سخت افزاری را بصورت زیر بیان کنیم :
برخلاف RAID نرم افزاری ، RAID سخت افزاری نیاز به سخت افزار خاص دارد
هزینه پیاده سازی RAID های سخت افزاری گرانتر از RAID های نرم افزاری است
برخلاق RAID های سخت افزاری ، RAID های نرم افزاری پردازشگر سیستم عامل را بسیار درگیر می کنند
RAID های سخت افزاری بسیار قابل اعتماد تر از RAID های نرم افزاری هستند ITPRO باشید
نویسنده : محمد نصیری
منبع : انجمن تخصصی فناوری اطلاعات ایران