RAID چیست و انواع سطوح آن در پیکربندی سرور و استوریج ها

رِید کردن (RAID = Redundant Array of Independent Disks) مخفف کلمه آرایه افزونه دیسک های مستقل است. در واقع روشی برای ذخیره اطلاعات بر روی چند هارد دیسک با هدف محافظت از داده ها در برابر خرابی هارد درایو است.

روش کار RAID به این صورت است که با قراردادن اطلاعات بر روی دیسک های مختلف، این امکان فراهم می شود که عملیات ورودی و خروجی یا همان I/O با یک همپوشانی متعادل انجام پذیرد که این باعث افزایش کارایی می شود. همچنین از آنجایی که استفاده از چند هارد دیسک عمر مفید یا مدت زمان میانگین تا خرابی یا Mean Time Between Failure دیسک را افزایش می دهد، ذخیره اطلاعات parity تحمل خطا را نیز افزایش می دهد. منظور از تحمل خطا تعداد هارد دیسک هایی است که در زمان کار کردن سیستم می تواند از کار بیافتند بدون اینکه اطلاعات از دست برود.

رید کردن چیست و تعریف انواع Raid

هاردهای رید شده به صورت یک هارد منطقی Logical Hard Disk برای سیستم عامل نمایش داده می شود. RAID از دو تکنیک آینه سازی (Mirroring) یا نواربندی (striping) استفاده می کند. در آینه سازی، اطلاعات مشخصی دقیقا روی بیشتر از یک دیسک کپی می شود. در نواربندی، فضای ذخیره سازی به واحدهایی از یک سکتور (512 bytes) تا چندین مگابایت تقسیم می شود. اینکه اندازه این نوارها چه اندازه باشد بستگی به نحوه استفاده از هارد دارد و با این هدف انجام می شود که همپوشانی عملیات I/O بهینه شود. تکنیک mirroring  و striping می تواند هر دو با هم انجام شود مثل نوع رید 10 یا 01.

رید کردن چیست و تعریف انواع Raid

انواع رید (Raid)

در ابتدا شش نوع RAID با شماره های 0 تا 5 معرفی شد. این اعداد روش های متفاوتی در چگونگی ایجاد آرایه های افزونگی و در واقع نوع رید کردن را نشان می دهد. تعداد دیگری از انواع رید باعث شد که انواع رید کردن به 3 دسته کلی تقسیم شوند:

  • استاندارد
  • ترکیبی
  • غیر استاندارد

ریدهای استاندارد به شرح زیر است:

RAID 0:

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

رید کردن چیست و تعریف انواع Raid

RAID 1:

این نوع رید کردن نیاز به حداقل دو دیسک دارد و اطلاعات از یکی عینا بر روی دیسک دیگر کپی می شود. هیچ نواربندی انجام نمی شود. سرعت خواندن اطلاعات بیشتر می شود چرا که به صورت همزمان می توان از هر دو دیسک اطلاعات را خواند. سرعت نوشتن در این نوع رید کردن تغییری نمی کند و مثل آن است که روی یک دیسک عملیات نوشتن انجام می شود.

رید کردن چیست و تعریف انواع Raid

RAID 1 معمولا برای دو دیسک اجرا می شود، اما می توان با استفاده از RAID 1 ADM (advanced data mirroring) تعداد بیشتر از دو هارد را نیز با یکدیگر Mirror  کرد که در این صورت امنیت به نسبت بالاتر رفته اما عملا از تمام هاردها فقط به اندازه فضای یک دیسک امکان ذخیره سازی وجود دارد.

RAID 2:

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

رید کردن چیست و تعریف انواع Raid

RAID 3:

این تکنیک از نواربندی اطلاعات استفاده می کند و یک هارد دیسک را برای ذخیره اطلاعت parity اختصاص می دهد. در واقع دارای یک سیستم ECC است که خطاها را تشخیص و تصحیح می کند. بازیابی داده ها بوسیله عملیات منطقی XOR از اطلاعات موجود در بقیه هاردها انجام می شود. از آنجایی که در عملیات خواندن و نوشتن I/O به همه هاردها آدرس می دهد هیچ تداخلی در هنگام خواندن و نوشتن پیش نمی آید. از این رو RAID 3 بهترین انتخاب برای سیستم ­­های تک کاربره با برنامه هایی است که نیاز به نواربندی بلند دارند.

رید کردن چیست و تعریف انواع Raid

RAID 4:

این نوع رید از نواربندی اطلاعات استفاده می کند اما این نوارها بزرگ هستند. بدین معنی که می توان رکوردها یا نوارها را تنها از یک هارد خواند. این باعث می شود که بتوان عملیات I/O را با همپوشانی انجام داد. از آنجایی که عملیات نوشتن مجبور است هر بار درایو parity را به روز رسانی کند هیچ تداخلی در عملیات خواندن و نوشتن اتفاق نمی افتد. RAID 4 هیچ مزیتی نسبت به RAID 5 ندارد.

رید کردن چیست و تعریف انواع Raid

RAID 5:

این نوع رید نوارها را در سطح block-level به همراه نوار parity تقسیم می کند. این اطلاعات parity در هر درایو وجود دارد و این امکان را به وجود می اورد که اگر یک درایو خراب شود آرایه به کار خود ادامه می دهد. معماری آرایه ها به نحوی است که عملیات خواندن و نوشتن در طول دیسک های مختلف انجام می شود. این کارایی بالاتری را نسبت به یک دیسک منجر می شود، اما نه به اندازه آرایه RAID 0. RAID 5 حداقل به سه دیسک نیاز دارد اما معمولا پیشنهاد می شود که استفاده از حداقل 5 دیسک بهترین کارایی را دارد. در صورت استفاده از تعداد n دیسک، فضای قابل استفاده، فضایn-1 دیسک می باشد.

رید کردن چیست و تعریف انواع Raid

RAID 5 به دلیل ساخت اطلاعات parity عموما انتخاب ضعیفی برای سیستم هایی با عملیات نوشتن سنگین است. وقتی یکی از هارد درایو ها از کار بیافتد مدت زمان زیادی طول می کشد تا آرایه RAID 5 ساخته شود. کارایی معمولا در زمان ساخت دوباره کاهش می یابد و آرایه در زمان خرابی یک دیسک  تا وقتی که ساخت دوباره RAID کامل شود آسیب پذیر است. نقطه ضعف این سیستم این است که با Failed شدن بیشتر از یک دیسک تمامی داده ها از بین می رود یا به عبارتی تحمل خطای این رید برابر با یک دیسک می باشد.

RAID 6:

این تکنیک شبیه RAID 5 است اما یک parity دوم در طول آرایه های درایوها ساخته می شود. این parity اضافه این امکان را بوجود می آورد که در صورت خرابی دو دیسک آرایه به کار خود ادامه دهد. هرچند این روش محافظت بالاتری دارد اما هزینه بیشتری را تحمیل می کند. RAID 6 هزینه بیشتری را برای هر GB حافظه می برد و معمولا سرعت نوشتن در آن از RAID 5 پایین تر است. در صورت استفاده از تعداد n دیسک، فضای قابل استفاده، فضای n-2  دیسک می باشد. یعنی در واقع تحمل خطای این سیستم (سوختن هارد درایو) برابر با دو دیسک است و با Failed شدن بیش از دو دیسک تمامی داده ها از بین خواهد رفت.

رید کردن چیست و تعریف انواع Raid

رید های ترکیبی یا تو در تو (Nested RAIDs)

بعضی از انواع رید ها را که ترکیبی از ریدهای استاندارد هستند را در زیر می بینیم

RAID 10 (RAID 1+0)

ترکیبی از RAID 0 و RAID 1 که معمولا به صورت RAID 10 نمایش داده می شود. در RAID 1+0 اطلاعات کپی می شوند و سپس نواربندی می شود.

رید کردن چیست و تعریف انواع Raid

این نوع رید از RAID 1 کارایی بالاتری دارند اما با هزینه بالاتر. از این رید به عنوان گران ترین رید یاد می شود زیرا فضای قابل استفاده بعد از پیاده سازی آن، به میزان نیمی از کل فضای دیسک های آن آرایه خواهد بود.

ضمناً باید توجه داشت که برای استفاده از RAID 10 تعداد دیسک ها باید بیشتر از 3 عدد و همچنین زوج باشد.

RAID 01 (RAID 0+1)

RAID 0+1 در واقع شبیه RAID 1+0 است با این تفاوت که روش سازماندهی اطلاعات اندکی تفاوت دارد. بر خلاف RAID 10 که اطلاعات ابتدا کپی و سپس نواربندی می شدند، در این رید اطلاعات ابتدا نواربندی و سپس کپی می شوند. قوانین تعداد دیسک مورد نیاز و فضای قابل استفاده بعد از رید کردن در این سیستم نیز از همان قوانین RAID 1+0 تبعیت می کند.

RAID 03 (RAID 0+3)

همچنین با نام های RAID 53 یا RAID 5+3 هم شناخته می شود. این نوع رید برای بلاک های مجازی RAID 3 از نواربندی استفاده می کند (مثل RAID 0). این کارایی بالاتری را نسبت به RAID 3 ایجاد می کند ولی با هزینه بالاتر.

RAID 50 (RAID 5+0)

این نوع رید ترکیبی است از RAID 5 و RAID 0 که در واقع از چند گروه از دیسک هایی که RAID 0 هستند تشکیل شده که هر کدام از این گروه ها RAID 5 هستند. به زبان ساده تر در این روش تمامی دیسک های یک آرایه به دو یا چند دسته از دیسک ها با Raid 5 تقسیم می شوند و این دسته ها با یکدیگر Raid 0 می شود.  به عبارتی آرایه ای با RAID 0  با زیر مجموعه هایی با RAID 5. اصطلاحا به هریک از این زیر مجموعه ها یک Sub RAID گفته می شود .

 در هنگام پیاده سازی این سیستم، باید برای RAID Controller میزان Sub RAID  را مشخص کرد، که برای تعریف آن باید تعداد کل دیسک های یک آرایه بر3  بخش پذیر باشد.

اگر n تعداد کل دیسک های آرایه و s تعداد Sub RAID ها باشد، تعداد Sub RAID ها  می تواندn  تقسیم بر 3 باشد (S=N/3) و همچنین  فضای قابل استفاده برای ذخیره سازی (n – s)  دیسک خواهد بود.

تحمل خطای RAID 50 حداکثر برابر با s می باشد. این حداکثر زمانی است که از هر Sub RAID دقیقا یک هارد دیسک دچار خرابی شود. در صورتی که تحمل خطا برای هارد دیسک های یک Sub RAID عدد یک است.

RAID 60 (RAID 6+0)

این نوع رید ترکیبی است از RAID 6 و RAID 0 که در واقع از چند گروه از دیسک هایی که RAID 0 هستند تشکیل شده که هر کدام از این گروه ها RAID 6 هستند.

در این روش نیز کنترلر مانند RAID 50 عمل میکند با این تفاوت که تعداد کل دیسک های یک آرایه باید بر 4 بخش پذیر باشد و تعداد Sub RAID ها نیز  می تواند n  تقسیم بر 4 باشد (S=N/4) و همچنین  فضای قابل استفاده برای ذخیره سازی نیز (n-2s)  دیسک خواهد بود. تحمل خطای RAID 60 حداکثر برابر با 2s می باشد.

تحمل خطای RAID 60 حداکثر برابر با 2s می باشد. این حداکثر زمانی است که از هر Sub RAID دقیقا دو هارد دیسک دچار خرابی شود. در صورتی که تحمل خطا برای هارد دیسک های یک Sub RAID عدد دو است.

ریدهای غیر استاندارد

RAID 7

این رید بر اساس ریدهای RAID 3 و RAID 4 عمل می کند در حالی که یک حافظه cache هم به این ترکیب اضافه می کند که شامل یک سیستم عامل داخلی به عنوان کنترلر است. کنترلر با استفاده از حافظه cache و سایر مشخصات به عنوان یک کامپیوتر مستقل عمل می کند.

Adaptive RAID

Adaptive RAID این اجازه را به رید کنترلر می دهد که تصمیم بگیرد parity را چگونه روی هاردها ذخیره کند. کنترلر بین RAID 3 و RAID 5 یکی را انتخاب می کند بسته به اینکه کدام رید برای عملیات نوشتن روی هارد دیسک ها بالاترین کارایی را خواهد داشت.

RAID S (Parity RAID)

این نوع رید یک رید اختصاصی شرکت EMC Symmetrix است که هم اکنون استفاده زیادی از آن نمی شود. به نظر می رسد این نوع رید شبیه RAID 5 است که با استفاده از حافظه cache با سرعت بالا تر کارایی را افزایش می دهد.

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