تکنولوژی RAID چیست؟ انواع RAID را بشناسید
آیا شما هم کلمه raid را شنیده اید و به دنبال این هستید که بدانید raid چیست و چه مفهومی دارد؟ در جواب باید به طور خلاصه بگوییم Raid یا آرایه اضافی دیسکهای مستقل نوعی از ذخیرهسازی است که دادهها را در چندین درایو مختلف در یک سیستم ذخیره میکند. پیکربندیهای مختلف رید در خرید سرور مجازی به صورت اعداد بیان میشوند، مانند raid 1، raid 0، raid 5. هر نوع raid بسته به نحوه نوشتن و توزیع دادههای شما، مزایای متفاوتی از جمله افزایش عملکرد، تحمل خطای بیشتر، یا ترکیبی از هر دو را به کاربران ارائه میدهد. در ادامه این مقاله از تاد سرور به طور کامل با raid و انواع آن آشنا میشویم.
فهرست مطالب
Raid چیست؟
ابتدا باید ببینیم تکنولوژی Raid چیست؟ RAID مخفف Redundant Array of Independent Disks به معنی آرایه افزونه دیسکهای مستقل است. به طور کلی روشی برای ذخیره اطلاعات در چند هارد دیسک با هدف محافظت از دادهها در برابر آسیب و خرابی هارد درایو میباشد.
روش کار RAID به این صورت است که با قراردادن اطلاعات بر روی چندین هارد دیسک، این امکان فراهم میشود که عملیات ورودی و خروجی یا همان I/O با یک همپوشانی متعادل انجام پذیرد تا به افزایش کارایی کمک کند.
مقاله پیشنهادی: حافظه بافر
همچنین از آنجایی که استفاده از چندین هارد دیسک، عمر مفید یا مدت زمان میانگین تا خرابی یا Mean Time Between Failure دیسک را افزایش میدهد، ذخیره اطلاعات parity تحمل خطا را نیز افزایش میدهد. منظور از تحمل خطا، تعداد هارد دیسکهایی است که در زمان کار کردن سیستم، بدون اینکه اطلاعات از دست برود میتواند از کار بیافتند.
هاردهای رید شده به شکل یک هارد منطقی Logical Hard Disk برای سیستم عامل به نمایش گذاشته میشود. RAID از دو تکنیک و روش آینه سازی (Mirroring) یا نواربندی (striping) استفاده میکند. در آینه سازی، اطلاعات مشخصی دقیقا بر روی بیشتر از یک دیسک کپی میشود. در نواربندی، فضای ذخیره سازی به واحدهایی از یک سکتور (512 bytes) تا چندین مگابایت تقسیم میشود.
اینکه اندازه این نوارها چه اندازه باشد به نحوه استفاده از هارد بستگی دارد و با این هدف انجام میشود که همپوشانی عملیات I/O بهینه شود. تکنیک mirroring و striping میتواند هر دو با یکدیگر انجام شود مثل نوع رید 10 یا 01.
تاریخچه Raid
اصطلاح RAID در سال 1987 توسط افرادی به نام دیوید پترسون، رندی کاتز و گارث ای گیبسون ابداع شده است. در گزارش فنی خود که در سال 1988 داشتهاند، روشی برای آرایههای اضافی از دیسکهای با قیمت بسیار ارزان (RAID)، این سه نفر استدلال کردند که مجموعهای از درایوهای قیمت مناسب میتواند عملکرد درایوهای دیسک برتر و عالی آن زمان را شکست دهد. و با استفاده از افزونگی، یک آرایه RAID میتواند از هر درایو دیسکی قابل اعتمادتر باشد.
در حالی که این گزارش اولین گزارشی بود که نامی برای این مفهوم انتخاب کرد، استفاده از دیسکهای اضافی قبلاً توسط دیگران مورد بحث قرار گرفته بود. تد گرونائو و گاس آلمان از Geac Computer Corp ابتدا این ایده و روش را MF-100 معرفی کردند. نورمن کن اوچی از IBM در سال 1977 یک حق اختراع برای این فناوری به ثبت رسانده است که بعداً RAID 4 نام گرفت. در سال 1983، Digital Equipment Corp درایوهایی که تبدیل به RAID 1 میشدند، ارسال کرد و در سال 1986، یک حق اختراع IBM دیگر برای آنچه که RAID نامیده میشد ثبت شد.
مقاله پیشنهادی: انتقال فایل از سرور مجازی به کامپیوتر
معرفی انواع RAID
شش نوع RAID با شمارههای 0 تا 5 معرفی شده است. این اعداد روشهای مختلفی در چگونگی ایجاد آرایههای افزونگی و در کل نوع رید کردن را نشان میدهد. تعداد دیگری از انواع ریدها باعث شد که انواع رید کردن به 3 دسته اصلی تقسیم شوند:
- استاندارد
- ترکیبی
- غیر استاندارد
ریدهای استاندارد به شرح زیر است:
Raid 0
پیکربندی این نوع RAID به این صورت است که اطلاعات را نواربندی میکند اما هیچ اطلاعات افزوده شدهای ندارد. دلیل اصلی Striping در سیستم این است که برای خواندن یک فایل اطلاعات میتواند همزمان از چند هارد خوانده شده استفاده کند.
برای تنظیم این نوع RAID به حداقل یک هارد دیسک نیاز است. بیشترین سرعت و بهترین کارایی را در میان مابقی RAID ها را دارد اما در زمانی که یکی از دیسکها خراب شود هیچ نوع تحمل امنیت و خطا را ندارد و اطلاعات از بین خواهد رفت.
Raid 1
این نوع رید نیاز به حداقل دو دیسک دارد و اطلاعات از یک دیسک عینا بر روی دیسک دیگر کپی میشود. هیچ نواربندی انجام نیز نمیشود.
سرعت خواندن اطلاعات بالا میرود چرا که به طور همزمان میتوان از هر دو دیسک اطلاعات را خواند. سرعت نوشتن در این نوع رید کردن تغییری نمیکند و مانند آن است که روی یک دیسک عملیات نوشتن انجام میشود.
RAID 1 معمولا برای دو دیسک اجرا میشود، اما با استفاده از RAID 1 ADM (advanced data mirroring) تعداد بسیاری از دو هارد را نیز با هم Mirror کرد که در این صورت امنیت به نسبت بالاتر رفته اما عملا از تمام هاردها فقط به اندازه فضای یک دیسک امکان ذخیره سازی وجود دارد.
پیشنهاد میکنیم مقاله تغییر نسخه php در سی پنل را مطالعه کنید.
Raid 2
Raid2 از نوار بندی در دیسکها استفاده میکند. بعضی از دیسکها اطلاعات ECC که برای چک کردن و تصحیح خطاهای احتمالی است را ذخیره میکنند. نسبت به RAID 3 مزیت بیشتری ندارد و در زمان حاظر نیز استفاده چندانی از آن نمیشود.
Raid 3
این روش از نواربندی اطلاعات استفاده میکند و یک هارد دیسک را برای ذخیره اطلاعت parity اختصاص داده است. به طور کلی دارای یک سیستم ECC است که خطاها را تشخیص و تصحیح میکند.
بازیابی دادهها با استفاده از عملیات منطقی XOR از اطلاعات موجود در هاردهی دیگر انجام میشود. از آنجایی که در عملیات خواندن و نوشتن I/O به همه هاردها آدرس داده میشود، هیچ تداخلی در هنگام خواندن و نوشتن به وجود نمیآید. در این رو RAID 3 بهترین انتخاب برای سیستم های تک کاربره با برنامههایی است که به نواربندی بلند نیاز دارند دارند.
Raid 4
این نوع تکنیک از نواربندی اطلاعات استفاده میکند اما این نوارها بسیار بزرگ هستند. بدین معنی که میتوان نوارها یا رکوردها را تنها از یک هارد خواند.
همین باعث میشود که بتوانید عملیات I/O را با همپوشانی انجام دهید. از آنجایی که عملیات نوشتن باید هر بار درایو parity را به روز رسانی کند، هیچ تداخلی در عملیات خواندن و نوشتن اتفاق نمیافتد.RAID 4 هیچ مزیتی نسبت به RAID 5 ندارد.
Raid 5
این تکنیک نوارها را در سطح block-level با استفاده از نوار parity تقسیم میکند. این اطلاعات parity در همهای درایوها وجود دارد و این امکان را به وجود میآورد که اگر یک درایو به مشکل برخورد آرایه به کار خود ادامه میدهد. معماری آرایهها به صورتی است که عملیات خواندن و نوشتن در طول دیسکهای متفاوت انجام میشود.
این کارایی بسیار بالاتری را نسبت به یک دیسک منجر میشود، اما نه به اندازه آرایه RAID 0. RAID 5 که حداقل به سه دیسک نیاز دارد ولی معمولا پیشنهاد میشود که استفاده از حداقل 5 دیسک عالیترین کارایی را دارد. و در زمان استفاده از تعداد n دیسک، فضای قابل کارایی، فضایn-1 دیسک است.
این تکنیک به دلیل ساخت اطلاعات parity عموما انتخاب بسیار ضعیفی برای سیستمهایی با عملیات نوشتن سنگین است. وقتی یکی از هارد درایوها خراب شود مدت زمان بسیاری طول میکشد تا آرایه RAID 5 ساخته شود. کارایی معمولا در زمان ساخت دوباره کاهش خواهد یافت و آرایه در زمان خرابی یک دیسک تا وقتی که ساخت دوباره RAID کامل شود آسیب پذیر میباشد.
تنها نقطه ضعف این سیستم این است که با Failed شدن بیشتر از یک دیسک همهای دادهها از بین میرود یا به عبارتی تحمل خطای این تکنیک برابر با یک دیسک است.
Raid 6
این تکنیک مشابه RAID 5 است اما یک parity دوم در طول آرایههای درایوها ساخته میشود. این parity اضافه این امکان را میدهد که در زمان خرابی دو دیسک آرایه به کار خود ادامه دهد. هر چند این تکنیک محافظت بسیار بالای دارد اما هزینه بسیار بیشتری را تحمیل میکند. RAID 6 هزینه بیشتری را برای هر GB حافظه میبرد و به طور کلی سرعت نوشتن در آن از RAID 5 پایینتر است.
در زمان استفاده از تعداد n دیسک، فضای قابل استفاده، فضای n-2 دیسک است. یعنی به طور کلی تحمل خطای این سیستم (سوختن هارد درایو) برابر با دو دیسک است و با Failed شدن بیش از دو دیسک همهای دادهها از بین خواهد رفت.
Raid سخت افرازی یا نرم افزاری؟
امروزه دو گزینه اصلی RAID برای حرفهای های وب در سروهای مجازی یا vps ویندوز و لینوکس وجود دارد – RAID نرم افزاری و RAID سخت افزاری. RAID نرم افزاری را میتوان به راحتی در یک کامپیوتر یا سرور مجازی یا اختصاصی، بدون نیاز به سخت افزار اضافی گنجانید. از سمت دیگر، RAID سخت افزاری از سخت افزار تخصصی برای ایجاد عملکرد RAID در سرور یا کامپیوتر استفاده میکند.
نرم افزار RAID از قدرت محاسباتی CPU وب سرور یا کامپیوتر استفاده میکند که با استفاده از سیستم عامل و سایر برنامه های در حال اجرا در پس زمینه به اشتراک گذاشته میشود. این حجم کاری مشترک، عملکرد محاسباتی CPU را برای کارهای دیگر کاهش میدهد. بسیاری از سیستم عاملها از تنظیمات RAID پشتیبانی و محافظت میکنند. با این حال، پارتیشنها را نمیتوان با سیستم عاملهای دیگر به اشتراک گذاشت.
از طرف دیگر، RAID سخت افزاری از کنترلر RAID استفاده میکند که دارای پردازنده اختصاصی است. یک کنترلر RAID را میتوان به مادربرد یا روی سروری دیگر اضافه کرد. علاوه بر این، دستگاههای ذخیره سازی RAID اختصاصی نیز در دسترس هستند که به صورت مستقل اجرا میشوند. گزینههای سختافزار RAID کاربرد کمی در CPU رایانه یا سرور دارند و عملکرد کلی بسیار بهتری را در مقایسه با گزینههای RAID نرمافزار ارائه میدهند.
سخن پایانی
هدف ایجاد و استفاده از آرایههای RAID چیست؟ بهبود عملکرد، افزونگی دادههاو فضای ذخیرهسازی بزرگ. اما همچنان، RAID یک فناوری کامل نیست. احتمال خطا در آن وجود دارد که ممکن است منجر به از دست رفتن اطلاعات شود. به دلیل ماهیت پیچیده RAID، بازیابی اطلاعات نیز در مقایسه با سیستمهای ذخیره سازی سنتی پیچیدهتر است. در این صورت، برای سهولت در روند بازیابی اطلاعات، میتوانید از یک نرم افزار بسیار پیشرفته بازیابی اطلاعات RAID مانند Stellar Data Recovery Technician استفاده کنید. این نرمافزار میتوانند دادهها را از آرایههای RAID 0،5 و 6 خراب یا منطقاً خراب بازیابی کند. این به بازسازی پارامترهای RAID و بازیابی تمام دادهها با یکپارچگی کامل کمک میکند.