انواع تکنولوژی Raid و مزیت آن ها
Raid یک فناوری است که برای افزایش کارایی و یا قابلیت اطمینان ذخیره سازی داده ها استفاده می شود. Raid مخفف عبارت Array Redundant of Cheap Disks می باشد. یک سیستم Raid متشکل از دو یا چند درایو موازی است. این دیسک ها می توانند هارد دیسک معمولی باشند اما روند استفاده از فناوری درایو های حالت جامد یا همان SSD ها به سرعت در حال افزایش است. پیکربندی Raid سطوح مختلفی دارد که هر کدام برای یک وضعیت خاص بهینه شده اند.
جهت کسب اطلاعات بیشتر در مورد تکنولوژی Raid مقاله ” تکنولوژی Raid چیست؟ ” را مطالعه فرمایید.
انواع Raid و مقایسه سطوح مختلف رید بندی
برای توزیع داده روی هارد دیسک ها چندین روش وجود دارد که هر یک افزونگی و کارایی خاص خودش را دارد. شما بر اساس سطح نیازتان به کارایی و Redundancy ، سطح رید یا Raid Level ای که مناسبتان است را انتخاب و پیاده سازی کنید. یادتان باشد برای پیاده سازی Raid از متخصصین مجرب کمک بگیرید.
ویژگی های انواع Raid
انواع رید که سطوح مختلف Raid را به وجود می آورند تفاوت هایی دارند که به دلیل ویژگی هایی است که هر نوع رید دارد. در ادامه این ویژگی ها را معرفی می کنیم.
تحمل پذیری خطا یا Fault Tolerance : در صورت بروز خطا در یک یا چند هارد ، چقدر مقاومت انجام می شود و اطلاعات از بین نمی رود یعنی اگر هارد یا هارد هایی Fail و خراب شدند ، فقدان داده یا Data Loss نداریم.
کارایی یا Performance : تامین افزونگی و Redundancy برای هارد ها و افزایش کارایی از جمله اهداف استفاده از Raid در سیستم های ذخیره سازی اطلاعات است.
ظرفیت یا Capacity : تعداد هارد دیسک هایی که در Raid ترکیب می شوند و نوع اتصال آن ها به هم در رید ، باعث می شود ظرفیت های مختلفی ارایه شود.
به طور کلی سه دسته مختلف برای سطوح Raid تعریف شد که به صورت زیر است :
- Standard RAID
- Nested RAID
- Nonstandard RAID
انواع رید استاندارد یا Standard RAID Levels
مرجع اصلی که Raid را معرفی کرده است هفت سطح مختلف Raid را در نظر گرفته که از RAID 0 تا RAID 6 را شامل می شود. پس عددی که بعد از کلمه Raid می آید بیانگر نسخه و نوع رید است.
RAID 0 چیست؟
RAID 0 دارای پیکربندی Striping یا نواری است به همین دلیل RAID 0 به نام Striping یا نواری نیز شناخته می شود. بهترین کارایی را دارد ، افزونگی دیتا ندارد و Fault Tolerance هم ندارد و ضریب خطای آن صفر است. برای تنظیم این نوع RAID به حداقل 2 هارد دیسک نیاز است. در بین تمام RAID ها سریع ترین نوع محسوب می شود.
RAID 0 اطلاعات را به قسمت های مساوی به نام Stripe یا Chunk ( نواری و قطعه قطعه ) تقسیم کرده و هر قسمت را روی یک هارد ذخیره می کند یعنی بین مجموعه هارد های موجود در آرایه توزیع و ذخیره می کند که این دستگاه ها می تواند SSD یا هارد دیسک های آرایه رید باشد.
مزایای RAID 0
- مهمترین مزیت RAID 0 و Disk Striping افزایش کارایی است. مثلا استرایپ کردن داده روی سه عدد دیسک ، نسبت به حالت تک دیسک ، پهنای باند را سه برابر می کند. اگر عملیات ورودی و خروجی هر دیسک در ثانیه ، 200 باشد ، Disk Striping آن را به 600 IOPS می رساند.
- چون در تکنیک Striping ، داده روی چند هارد فیزیکی ذخیره می شود ، چند دیسک به محتوای فایل دسترسی دارند پس خواندن ها و نوشتن ها بسیار سریع انجام می شود. زیرا باعث می شود هم زمان چندین هد کار کند و در نتیجه کارایی افزایش می یابد.
- نداشتن پریتی باعث می شود از تمام فضای دیسک بتوانیم استفاده کنیم.
- پیاده سازی RAID 0 بسیار آسان است و تمام کنترلر های سخت افزاری از آن پشتیبانی می کنند.
- ارزان ترین نوع رید ، RAID 0 است.
معایب RAID 0
- افزونگی یا Redundancy ندارد در صورتی که یک درایو فیزیکی در مجموعه دیسک های استرایپ شده خراب شود ، فقدان داده یا Data Loss در Striped Unit رخ می دهد. به همین ترتیب ، تمام داده ذخیره شده روی هارد دیسک های استرایپ شده از بین می رود. پس RAID 0 اصلا گزینه مناسبی برای کار های حساس و مهم و Mission-Critical نیست.
- RAID 0 بر خلاف رید های دیگر ، پریتی ندارد پس تکنیک نواری بدون پریتی به معنای نداشتن افزونگی و Fault Tolerance است. پس اگر هاردی خراب شود ، تمام دیتا های آن هارد از بین می رود.
- Resiliency در RAID 0 پایین است.
کاربرد RAID 0 چیست؟
با توجه به آنچه گفتیم ، RAID 0 برای ذخیره داده هایی که حساس و مهم نیستند و سرعت بالا در خواندن و نوشتن نیاز دارند ، مناسب است مثل live streaming video و ادیت ویدئو که کارایی و سرعت مطرح است.
یکی دیگر از کاربرد های RAID 0 این است که Striping بدون ریداندنسی برای داده های موقتی ، فضای چرک نویس فراهم می کند. همچنین در مواردی که کپی اصلی از داده موجود است و به راحتی از دستگاه های استوریج دیگر قابل ریکاوری است می توان از RAID 0 را استفاده کرد.
RAID 1 چیست؟
RAID 1 دارای پیکربندی Mirroring است و Striping ندارد به همین دلیل RAID 1 به نام Mirror یا آینه ای نیز شناخته می شود. حداقل دو هارد دیسک لازم دارد تا داپلیکیت دیتا را فراهم کند. کارایی خواندن بالاست زیرا از هر دو دیسک هم زمان می تواند بخواند. کارایی نوشتن همانند نوشتن روی یک هارد دیسک است. توجه دارید که نوشتن ، دو بار و روی دو دیسک انجام می شود و در نتیجه کارایی نوشتن از کارایی خواندن پایین تر است.
RAID 1 حداقل به 2 هارد دیسک برای راه اندازی نیاز دارد و تعداد هارد دیسک ها باید زوج باشد. در این مدل ، ثبت اطلاعات روی هر دو دیسک انجام می شود بدین گونه که دیتا روی یک هارد دیسک ذخیره می شود و سپس همان دیتا روی هارد دیسک دیگری نوشته می شود.
به عنوان مثال اگر 4 هارد دیسک را با این روش RAID کنیم ، دو هارد دیسک ، کپی دیتای دو هارد دیسک دیگر می شود. RAID 1 را در SSD ها هم میتوان استفاده کرد.
مزایا و معایب RAID 1
- داشتن ریداندنسی از مزایای RAID 1 است. این مدل ذخیره سازی دیتا باعث می شود اگر نصف تعداد هارد دیسک ها از بین برود سیستم بدون وقفه بتواند کار سرویس دهی خود را انجام دهد. ولی ایراد آن این است که نصف فضای مفید ذخیره سازی را از دست خواهیم داد.
- از مزایای RAID 1 فراهم شدن سناریو های Disaster Recovery است زیرا برای اپلیکیشن های Mission Critical ، بلافاصله بکاپ را فراهم می کند. پس در صورت خرابی یک هارد ، اپلیکیشن ها و سیستم عامل به نسخه بکاپ ، ریپلیکیت ( Replicate ) می شوند.
- خواندن هم زمان از تمام درایو ها سرعت را بی نهایت افزایش می دهد.
- دسترس پذیری بالا و سرعت ریکاوری بالا از مزایای RAID 1 است.
- شباهت RAID 0 و RAID 1 در این است که کارایی در هر دو بالاست اما سرعت خواندن و نوشتن در RAID 1 به پای RAID 0 نمی رسد.
مهم ترین عیب RAID 1 این است که نیمی از فضای ذخیره سازی را از دست می دهیم. در واقع روشی گران قیمت است و تعداد معدودی سازمان های انترپرایزی و بزرگ از آن استفاده می کنند. فضای مفید برای ذخیره دیتا در RAID 1 از RAID 5 و RAID 6 کمتر است. اما سرعت ریکاوری در RAID 5 و RAID 6 از RAID 1 پایین تر است.
کاربرد RAID 1 چیست؟
کاربرد RAID 1 در محیط هایی است که به کارایی بالا و دسترس پذیری بالا نیاز است مانند اپلیکیشن های Transactional و سیستم عامل ها و ایمیل ها. RAID 1 همچنین در اپلیکیشن هایی که خواندن بسیار سریعی لازم دارند مناسب است. اگر درایو های اصلی آرایه خراب شود ، ترافیک به درایو های ثانویه یا میرور شده و بکاپ شده سوییچ می کند.
یکی دیگر از کاربرد های RAID 1 استفاده در آرشیو داده است یعنی جایی که از دست رفتن اطلاعات ، غیرقابل قبول است.
RAID 1 یا Mirroring Raid یک نسخه از اطلاعات به صورت کامل روی یک یا دو دیسک ذخیره می شود.
RAID 2 چیست؟
RAID 2 دارای پیکربندی Striping است و برخی دیسک ها اطلاعات ECC یا Error Checking and Correcting را ذخیره می کنند. یعنی برای تامین امنیت داده از ECC استفاده می کند. همچنین از Hamming Code Parity استفاده می کند که فرم خطی از کد اصلاح خطاست.
کارایی و انعطاف پذیری و قابلیت اطمینان آن از RAID 5 و RAID 6 کمتر است. RAID 2 هیچ مزیتی نسبت به RAID 3 ندارد و چون امروزه کد های اصلاح خطا در هارد درایو ها از کد همینگ استفاده می کنند ، استفاده از RAID 2 منسوخ شده است.
RAID 3 چیست؟
RAID 3 عملا کاربرد زیادی ندارد و از Byte Level striping و یک هارد دیسک مختص به پریتی استفاده می کند. یک هارد دیسک را به ذخیره اطلاعات پریتی اختصاص می دهد. RAID 3 نمی تواند پاسخگوی چندین درخواست هم زمان باشد چون اطلاعات پریتی روی دیسکِ جداگانه قرار می گیرد و بلاک داده بین تمام هارد ها تقسیم شده و روی هر هارد ، روی مکان فیزیکی یکسان قرار می گیرد. پس در هر عملیات I/O باید روی همه دیسک ها کار انجام شود و معمولا هم نیاز به همگام سازی Spindle است.
بدین ترتیب تسک هایی با تعداد زیادی درخواست دیتای کوچک ( خواندن و نوشتن کوچک ) به خوبی انجام نمی شود. در عوض برای اپلیکیشن هایی که انتقال دیتای طولانی و تناوبی ( Sequential ) دارند ، انتخاب بهتری است. RAID 3 در Streaming Media و ادیت ویدئوی غیر فشرده و گرافیک بسیار مناسب است. یعنی در کل برای کار هایی که به دیتا ترنسفر بالا با long sequential reads and writes نیاز است انتخاب خوبی است.
اطلاعات ECC به صورت تعبیه شده است تا خطا ها را تشخیص دهد. فرآیند دیتا ریکاوری با محاسبه اطلاعات ثبت شده روی دیگر درایو ها انجام می شود. عملیات I/O هم زمان روی همه درایو ها انجام می شود و RAID 3 نمی تواند I/O را به صورت Overlap و هم پوشی انجام دهد و دقیقا به همین دلیل برای سیستم های تک کاربره که اپلیکیشن هایی با رکورد های بلند دارند مناسب است.
RAID 3 مشابه RAID 5 است اما بلاک روی هارد ها توزیع می شود و پریتی روی یک هارد قرار می گیرد و توزیع نمی شود. Random Write Performance بسیار پایین است ولی Random Read Performance وضعیت بهتری دارد. RAID 3 و RAID 4 به سرعت با RAID 5 جایگزین شدند.
RAID 4 چیست؟
مشابه RAID 3 از استرایپ داده استفاده می کند و مشابه RAID 5 است یعنی دارای پیکربندی Parity Block-Level Striping می باشد. ولی به جای استفاده از Distributed Parity از Dedicated Parity استفاده می کند. پس RAID 4 از دیسک پریتی و Block-Level Striping بین چند دیسک استفاده می کند. چون دیتا در RAID 4 نواری شده اند ، رکورد ها می توانند از هر دیسکی خوانده شوند اما موقع نوشتن ، نیاز به Distributed Parity است در نتیجه گلوگاهی در کارایی نوشتن (Random Write Performance) وجود دارد.
رید 4 در Random Read کارایی بالایی دارد و در Random Write کارایی به دلیل اینکه همه پریتی ها باید از یک دیسک خوانده شوند ، کمتر می شود.
RAID 4 از نوار های بزرگ استفاده می کند یعنی کاربر می تواند رکورد هایی را از هر درایو بخواند. برای عملیات خواندن ، Overlap انجام می شود ولی در عملیان نوشتن چون باید درایو پریتی آپدیت شود ، I/O Overlapping امکانپذیر نیست.
در RAID 4 اگر داده A و B روی دیسک 0 و داده C روی دیسک 1 قرار داشته باشند ، دیسک 0 به درخواست خواندن بلاک A پاسخ می دهد اما برای خواندن هم زمان B باید منتظر ماند ولی برای خواندن هم زمان بلاک C انتظار لازم نیست و بلاک A و C هم زمان خوانده می شوند. استفاده از RAID 4 دیگر رایج نیست.
RAID 5 چیست؟
RAID 5 دارای پیکربندی Parity Block-Level Striping است یعنی داده را استرایپ می کند و پریتی را هم بین تمام هارد ها توزیع می کند پس دیسک جداگانه برای پریتی نداریم. اطلاعات پریتی در هر درایو به صورت نوار در می آید و به همین خاطر اگر حتی یک درایو Fail شود ، آرایه RIAD به کار خود ادامه می دهد.
معماری RAID 5 به گونه ای است که عملیات خواندن و نوشتن از چند درایو ممکن است که در مقایسه با حالتی که فقط از یک درایو انجام می شود ، کارایی بهتری ارایه می دهد. اما این کارایی در RAID 5 به پای کارایی در RAID 0 نخواهد رسید. سرعت خواندن و نوشتن در 5 RAID نسبت به RAID 0 پایین تر و نسبت به RAID 1 بالا تر است.
برای پیاده سازی RIAD 5 حداقل به 3 دیسک نیاز است اما اغلب برای کارایی بیشتر ، توصیه می شود حداقل 5 دیسک استفاده شود. اطلاعات ، روی دو هارد دیسک اول و دوم ذخیره می شود و سپس محاسباتی روی دیتا انجام داده و با نام بیت افزونه یا Parity آن را روی هارد سوم ذخیره می کند.
در دفعات بعدی Parity را روی هارد دیسک ها می چرخاند. در این نوع RAID حدودا فضای یک هارد دیسک را از دست می دهیم و چنانچه یک هارد دیسک به هر دلیلی دچار مشکل شود ، سیستم بدون وقفه به ادامه کار خود می پردازد. پس از اینکه یک هارد دیسک دچار مشکل شد می توان یک هارد دیسک جدید روی سرور قرار داد و دیتا روی آن شروع به ریکاور شدن می کند.
مزایا و معایب RAID 5
- در RAID 5 تحمل پذیری و ضریب اطمینان در حد یک هارد دیسک است. چنانچه هارد دوم دچار مشکل شود ، اطلاعات از بین می رود. معماری این RAID به گونه ای است که عملیات خواندن و نوشتن بر روی هارد ها پخش می شود در نتیجه ، مجموع کارایی هارد ها از کارایی یک هارد به مراتب بیشتر است.
- RAID 5 رایج ترین نوع RAID است و می تواند با RAID 0 ترکیب و یا جایگزین RAID 0 شود. زیرا کارایی آن ها در یک سطح است.
- RAID 5 یکی از امن ترین انواع RAID است.
- قابلیت اطمینان و افزونگی دارد.
- سرعت از مهم ترین مزایای RAID 5 است.
- افزونگی در RAID 5 نسبت به RAID 0 به شکل اقتصادی تری فراهم می شود.
- RIAD 5 نسبت به RAID 1 و RAID 10 فضای ذخیره سازی بیشتری فراهم می کند.
- RAID 5 نسبت به RAID 1 سرعت نوشتن بیشتری دارد.
- حداقل تعداد هارد درایو لازم در RAID 5 سه است و هیچ محدودیتی در حداکثر تعداد ندارد.
- در RAID 5 قابلیت Hot Swapped وجود دارد یعنی در صورت خرابی یک هارد ، می توان بدون Downtime و وقفه و خاموشی ، هارد جدید را جایگزین هارد معیوب کرد.
- حتی وقتی درایو خراب ، در حال ری بیلد شدن است هم به دیتا دسترسی داریم و می توانیم آن را بخوانیم.
- رشد نیاز به ظرفیت ذخیره سازی در آینده تضمین می شود. هرگاه هاردی اضافه شود ، RAID 5 با Rebuild شدن ، ظرفیت را افزایش می دهد. اما اگر در این زمان هاردی خراب شود ، سیستم به خطر خواهد افتاد.
مهم ترین عیب RAID 5 این است که سرعت و کارایی پایینی در Rebuild دارد. وقتی یک هارد از مجموعه هارد ها Fail شود زمان زیادی برای بازنشانی و ریکاوری اطلاعات لازم است یعنی در اصطلاح زمان زیادی برای ری بیلد کردن رید لازم است. بسته به سرعت کنترلر و حجم کار ، این کار می تواند ساعت ها یا روزها طول بکشد. اگر در حین این ریبیلد ، دیسک دیگری خراب شود ، اطلاعات برای همیشه از بین می رود.
به طور کلی Standard SATA Drive برای RAID 5 مناسب نیستند زیرا ادمین می تواند از ریبیلد شدن پس از خرابی ، جلوگیری کند.
کاربرد RAID 5 چیست؟
رید 5 برای پایگاه های داده مانند SQL مناسب است. این RAID برای سیستم هایی که عملیات نوشتن زیاد و فشرده بر روی هارد ها دارند و در اصطلاح سیستم های Write Intensive هستند ، اصلا گزینه مناسبی نیست زیرا عملیات تولید بیت افزونه Parity در زمان نوشتن اطلاعات کمی زمان بر است و کارایی نوشتن را کم می کند.
RAID 5 برای فایل سرور ها و اپلیکیشن هایی که محدودیت تعداد هارد دارند مناسب است.
در RAID 5 حداقل ۳ هارد دیسک و حداکثر ۳۲ هارد دیسک می توانیم داشته باشیم.
RAID 6 چیست؟
تکنیک به کار رفته در RAID 6 مشابه RAID 5 است اما پریتی دومی هم روی درایو های آرایه رید ، توزیع می شود. پس تعجب نکنید اگر RAID 6 را به نام RAID با بیت افزونه دوتایی ( Double Parity RAID ) ببینید که این نام ، برگرفته از ساختار آن است. طبیعی است که کارایی نوشتن در RAID 6 در مقایسه با RAID 5 کمتر است و البته که هزینه بیشتری هم برای آن باید بپردازیم.
نحوه ذخیره سازی اطلاعات در RAID 6 مانند RAID 5 است با این تفاوت که رید 6 از دو بیت افزونه استفاده می کند یعنی Parity را دو بار و با دو شیوه مختلف محاسبه کرده و روی دو هارد دیسک مختلف پراکنده می کند. مزیت این پریتی اضافه این است که حتی اگر دو درایو هم ، هم زمان خراب شوند یا دو هارد دیسک از بین برود سیستم بدون وقفه می تواند به ادامه کار خود بپردازد.
در واقع قابلیت تحمل خطای این RAID ، عدد 2 است بدان معنا که اگر دو هارد به طور کامل Fail شوند ، باز هم قابلیت بازیابی اطلاعات در آن وجود دارد. در صورتی که 3 هارد دیسک دچار مشکل شود دیتا از دسترس خارج خواهد شد.
در صورت از بین رفتن یک یا دو هارد دیسک یک مقدار افت کارایی خواهیم داشت و به همین دلیل می توان هارد Hot Spare قرار داد تا سریعا جایگزین هارد Fail شده شود. در RAID 6 حداقل 4 هارد دیسک مورد نیاز است. نیمی از ظرفیت این 4 هارد ، برای ذخیره داده و نیمی برای Parity استفاده می شود.
درصد ظرفیت قابل استفاده در RAID 6 با افزودن دیسک به آرایه افزوده می شود. مثلا اگر 8 درایو در RIAD 6 استفاده شود ، پریتی تنها 25 درصد ظرفیت دیسک را می گیرد. ولی در RAID 10 نیمی از ظرفیت برای حفاظت از داده استفاده می شود و کاری با تعداد هارد های مورد استفاده ندارد. RAID 6 را در SSD ها هم می توان استفاده کرد.
مزایای RAID 6
مزایای RAID 6 به شرح زیر است :
- بالا ترین سطح تحمل پذیری خطا و Fault Tolerance
- RAID 6 فضای ذخیره سازی بیشتری نسبت به مثلا RAID 10 فراهم می کند.
معایب RAID 6
معایب RAID 6 به شرح زیر است :
- در RAID 6 هر مجموعه پریتی باید به صورت جداگانه محاسبه شود در نتیجه کارایی در نوشتن کم می شود.
- RAID 6 گران تر است زیرا دو دیسک اضافی برای پریتی لازم دارد. اغلب ، کمک پردازنده کنترلر رید ، محاسبه پریتی را انجام می دهد تا سرعت نوشتن بیشتر شود.
- زمان زیادی برای Rabuild کردن بعد از رخ دادن خرابی هارد لازم است زیرا RAID 6 در نوشتن ، کند است. در آرایه هایی که اندازه متوسط دارند ، این زمان به 24 ساعت هم می رسد.
- RAID 6 به سخت افزار های خاص نیاز دارد و مهم است که کنترلری که از آن پشتیبانی می کند استفاده کنید.
شرکت مهندسی رساتلکام ، ارائه دهنده ی خدمات فناوری ارتباطات و اطلاعات ، اعم از راه اندازی و اجرای تمامی سرویس های شبکه های کامپیوتری در تبریز و آذربایجان شرقی می باشد.
جهت مشاوره با کارشناسان ما در ارتباط باشید.