همه چیز در مورد RAID

بطور کلی تکنولوژی RAID باعث افزایش سرعت و امنیت در ذخیره سازی درهارد دیسک شده و انواع آن بر اساس نیاز و هزینه آن قابلیت اجرا دارد.

RAID مخفف شده عبارت Redundant Array of Inexpensive Disks به معنای چیدمان دیسک های مستقل است. بطور ساده تر این تکنولوژی چندین هارد دیسک را با چیدمان و ترکیب خاص طوری کنار هم قرار میدهد که اطلاعاتی که قرار است روی یک هارد دیسک ذخیره شود با Raid بطور همسان و هماهنگ در چندین دیسک به هم متصل ذخیره و نگهداری شوند.

وقتی از چندین دیسک برای بازخوانی اطلاعات و حتی ذخیره آن استفاده میکنیم سرعت این کار بسیار افزایش یافته، عملکرد هارد دیسک ها بهبود یافته و از داده ها در زمانی که هارد دیسک دچار آسیب شود حفاظت میکند.

در نظر داشته باشید که برای حفظ اطلاعات در شرایط آسیب دیدگی راه حل های دیگری مانند بکاپ گیری منظم و زمانبندی شده نیز وجود دارد و استفاده از RAID به درخواست مدیران سرور بستگی دارد. هاستمون با بکاپ گیری های منظم و نگهداری طولانی از اطلاعات مشتریان، از امنیت داده ها اطمینان حاصل میکند.

 

اولین ایده در مورد Raid

دیوید پترسون، رندی کتز و گارت گیبسون این کلمه اولین را بار سال 1987 به دنیا معرفی کردند. آنها باور داشتند استفاده از چنین حافظه مستقل در کنار هم باعث بهبود عملکرد سرور میشود و ذخیره داده ها بطور همزمان در چندین دیسک خیال افراد را در مورد حفظ اطلاعات در مشکلات هارد راحت میکند.

نظریه آنها بعد از بحث ها و بررسی ها به مرور زمان با تکامل رو به رو شد و RAID به یکی از تکنولوژی های پرکاربرد جهان مبدل گشت. گفته میشود درست است که این 3 نفر اصطلاح RAID را برای اولین بار بکار بردند اما پیش از انها اشخاصی مثل پتنتی و یا شرکت Digital Equipment نیز روی این تکنولوژی و نظریه کار کرده بودند.

تکنولوژی RAID چگونه کار میکند؟

تا اینجای کار بطور کلی در مورد اینکه رید چیست توضیح دادیم. اما نحوه کار آن به سطوح مختلف RAID بستگی دارد و این سطوح در ویژگی هایی که با چیدمان های مختلف بدست می آید تفاوت هایی دارند.

تحمل خطا پذیری و یا Fault Tolerance

اصلی ترین هدف RAID (رید) حفظ اطلاعات در برابر مشکلاتی همچون سوختن هارد یا اختلال در هارد دیسک است. سطوح مختلف RAID روشی متفاوت از هم در حفظ اطلاعات در برابر از دست رفتن یک یا چند هارد دارند.

عملکرد سرور یا Performance

وقتی داده ها در چندین دیسک ذخیره میشود به دلیل بازخوانی اطلاعات از چندین جا بطور همزمان، سرعت پردازش بسیار بالا رفته و عملکرد سرور بهبود پیدا میکند. در این مورد نیز در سطوح مختلف RAID با هم متفاوت هستند.

ظرفیت فضا یا Capacity

با توجه به چیدمان و ترکیب و سطوح مختلف RAID تعداد هارد دیسک هایی که باید در سرور استفاده کنیم تغییر میکند. به عنوان مثال در RAID 10 درصورتی که 4 هارد 1 ترابایتی داشته باشیم فقط از 2 ترابایت میتوان استفاده نمود.

راه اندازی RAID

در سازماندهی و ایجاد RAID باید به دو نکته توجه کرد:

  1. تکنیک ذخیره اطلاعات
  2. چگونگی اجرای RAID

 

  1. تکنیک ذخیره اطلاعات در رید

بطور کلی اطلاعات بر روی هر نوع رید با 3 روش کلی ذخیره میشود.

  • روش  Striping

در این روش اطلاعات با اندازه های تعیین شده و یکسان تقسیم شده (به هر قسمت بلوک میگویند) و روی رید به صورت تک به تک قرار میگیرد. این روش عملکرد سرور را بهبود میبخشد.

  • روش Mirroring

در این روش تمامی اطلاعات در چندین نسخه بر اساس تعداد هارد دیسک های استفاده شده در رید بصورت یکسان و همزمان ذخیره شده که باعث عملکرد بهتر سرور و بالا رفتن تحمل خطا پذیری می شود.

  • روش Parity

در این روش، مانند روش Striping داده ها به بلوک های یکسان تقسیم شده و در کنار آن از روشی دیگر به نام چکسام (checksum) نیز استفاده میکنند. با اینکار تابع برابری تعیین شده برای بلوک های اطلاعات تعریف میشود. تمام اینکارها به این معناست که زمانیکه هارد دیسکی دچار اختلال یا اسیب میشود بلوک از دست رفته با کمک چکسام مجدد محاسبه میشود که باعث بالارفتن تحمل خطاپذیری در رید میگردد.

 

  • همچنین میتوان از هر 3 روش  Striping, Mirroring, Parity بطور همزمان در کنار هم استفاده نمود.

 

توضیحات بیشتر در مورد چکسام (Checksum)

قسمتی از یک فایل اطلاعات که در برابر اتفاقات و تغییراتی که روی فایل پیش میاید حفاظت میکند. چکسام ابتدا بر اساس تابع یا همان الگوریتمی تعیین شده میزان بایت یا بیت های یک فایل را بررسی میکند بعد در صورت بروز هر مشکل یا تغییری در محتوای آن فایل، این موضوع را به شما گزارش میدهد.

 

  1. چگونگی اجرای RAID (رید)

برای ترکیب و نحوه چیدمان هارد دیسک ها میتوانید از متد نرم افزاری و یا سخت افزاری استفاده کنید. هر کدام از این متد ها مزایا و معایب خود را دارند که بشرح زیر است :

 

  • رید با متد نرم افزاری

در این روش با کمک سیستم عامل یک رید را اجرا میکنیم و به دلیل اینکه تغییری در سخت افزار به وجود نیاورده ایم به آن نرم افزاری میگوییم. اما مزایا و معایب اینکار چیست؟

مزایا :

  • از لحاظ هزینه بسیار به صرفه بوده زیرا نیاز به خرید هارد دیسک های جدید را برطرف میکند.

معایب :

  • به دلیل اینکه از منابع سرور در حالت نرم افزاری استفاده میشود سرعت، عملکرد و کارایی سرور کاهش پیدا میکند.
  • در تمامی سیستم عامل ها میتوان رید نرم افزاری اجرا کرد اما اینکه کدام سطوح را میتوان به روش نرم افزاری ایجاد کرد در سیستم عامل های مختلف متفاوت است و گاها از بعضی RAIDها پشتیبانی نمیکند.
  • به دلیل اینکه رید روی سیستم عامل فعال است از CPU سرور برای اینکار استفاده میکند و ممکن است عملکرد را کاهش دهد.
  • به دلیل اینکه رید روی سیستم عامل قرار گرفته است امکان بوت کردن سرور برای بعضی از سطوح RAID وجود ندارد.
  • درصورت نیاز به تعویض هارد، حتما باید سرور خاموش شود به همین دلیل در مواقعی که سرور باید مدام در دسترس باشد نمیتوان از این روش استفاده کرد.

 

  • رید با متد سخت افزاری

مزایا :

  • برای اجرای RAID از CPU سرور استفاده نمیکند.
  • امکان بوت کردن را به کاربر میدهد.
  • به دلیل اینکه با سخت افزارها ارتباط مستقیم دارد رفع مشکلات و خطاها راحت تر است.
  • قابلیت Hot-Swapping دارد. به این معناست که در هر زمانیکه مشکلی ایجاد شود میتوانید بدون بروز اختلال در سرور و کارایی آن، هارد دیسک مورد استفاده در رید را تعویض کنید.

معایب :

  • به دلیل اینکه برای رید سخت افزاری میبایست تعدادی هارد دیسک تهیه کرد هزینه آن از رید نرم افزاری بیشتر میباشد.

 

سطوح مختلف RAID

RAID 0

در این رید از روش Stripping  استفاده میشود و برای اجرای این رید به حداقل دو هارد نیاز دارید. در raid 0  سرعت افزایش پیدا کرده ولی تحمل خطاپذیری بدون تغییر خواهد ماند. به طوری که تنها استفاده آن ایجاد Array های ارزان و مفید است.

RAID 1

در این رید از روش Mirroring  استفاده میشود که باعث افزایش سرعت و بالا رفتن تحمل خطاپذیری میشود. زیرا اطلاعات بطور یکسان در نقاط مختلف ذخیره شده و در صورت بروز مشکلی، اطلاعات در قسمتی دیگر به طور کامل موجود است. برای این RAID  به حداقل 2 هارد احتیاج است و تحمل خطاپذیری تا از دست دادن یک هارد را دارد. مورد استفاده از از آن معمولا برای نصب سیستم عامل است.

RAID 5

درصورتی که RAID 10 و  Parity را بصورت همزمان و در کنار هم استفاده کنیم این رید ایجاد میشود. برای اجرا به حداقل 3 هارد دیسک نیاز داریم که دو سوم فضای آن قابل استفاده است. نتیجه اجرای RAID 5 سرعت فوق العاده و تحمل خطاپذیری تا حد از بین رفتن یکی از هارد دیسک ها میباشد. کاربرد این RAID عمومی بوده و معمولا برای File Server و Web Server استفاده میشود.

RAID 6

از نظر کارایی  همانند raid 5  بوده یعنی از روش Striping و  Parityدر کنار هم استفاده میشود اما با این تفاوت که از دو parity همزمان استفاده میگردد. اینکار سرعت را در این رید در مقایسه با raid 5  تغییری نمیدهد ولی تحمل خطاپذیری را بیشتر از raid 5 افزایش میدهد. حداقل تعداد هارد در این رید 4 عدد بوده و میزان تحمل خطاپذیری تا 2 هارد میباشد.

RAID 10

اگر روش های Striping و Mirroring  را همزمان در کنار هم استفاده کنیم این رید ایجاد میشود. نتیجه آن عملکرد بهتر raid 0 و تحمل خطاپذیری raid 1 بطور همزمان است. برای این RAID به حداقل 4 هارد نیاز بوده و تحمل خطاپذیری آن 1 هارد است.

RAID 50

نتیجه ترکیب raid 0 و raid 5 ایجاد رید 50 است. برای اجرای آن به حداقل 6 هارد دیسک احتیاج دارید. تحمل خطاپذیری این رید از raid 5 نیز بیشتر است.

RAID 60

از ترکیب raid 0  و raid 6 ایجاد میشود. برای اجرای آن حداقل 8 هارد دیسک احتیاج دارید. نوع ذخیره سازی داده ها در این رید مانند raid 50 است اما چون parity دوبار در آن استفاده شده تا از دست رفتن 2 هارد تحمل خطاپذیری دارد.

در زمان انتخاب رید مورد نیاز و مناسب برای ذخیره اطلاعات به اینکه چه نوع هارد دیسکی استفاده میکنید هم بسیار مهم است. اهمیت موضوع زمانی مشخص میشود که بررسی نمایید برای ذخیره اطلاعات خود به چه میزان فضا و سرعت و کارایی نیاز دارید. همچنین اینکه سرور شما توانایی ساپورت تا چه تعداد هارد را دارد نیز مهم است.

Name Fault Tolerance Speed Read/Write Capacity Min Hard
RAID 0 None 2x read and write speed N 2
RAID 1 1-drive failure Up to 2x read speed, no write speed N/2 2
RAID 5 1-drive failure 2x read speed, no write speed N-1 3
RAID 6 2-drive failure 2x read speed, no write speed N-2 4
RAID 10 At least 1-drive failure 4x read and 2x write speed N/2 4
RAID 50 At least 1-drive failure. One disk from each RAID5 set can fail without data loss. 4x read speed, no write speed N*2/3 6
RAID 60 At least 2-drive failure. Two disk from each RAID6 set can fail without data loss. 4x read speed, no write speed N/2 8

البته باید به این نکته نیز اشاره کرد که برای حفاظت از اطلاعات میتوان از روش های دیگری غیر از RAID مانند بکاپ گیری منظم روزانه و هفتگی استفاده کرد. با توجه به اینکه فضای بسیار زیادی بخاطر رید گرفته میشود با بکاپ گیری منظم از پر شدن بیهوده فضای هارد دیسک ها جلوگیری میشود.

در هاست های ارائه شده توسط هاستمون نیز بجای استفاده از RAID با بکاپ گیری منظم، بکاپ اطلاعات کاربران حفظ شده و در دو لایه مختلف روزانه و هفتگی در سرورهای هاستمون نگهدای میشود.

امید است این مقاله به سوال بسیار مهم "RAID چیست" پاسخ کاملی ارائه و مقید واقع شده باشد.

تمامی حقوق این سایت نزد هاستمون محفوظ است.