3 دانشمند نوآور به نامهای دیوید، رندی و گارث در سال 1987 میلادی ایدهای را مطرح کردند که منجر به اختراعی شگفت انگیز و ماندگار در دنیای IT شد. آنها معتقد بودند که با داشتن آرایهای از دیسک های ارزان قیمت، میتوان به کارایی دیسکهای High level دست یافت. آنها با تلاشهای بسیار سرانجام توانستند پس از 1 سال این ایده را در مقالهای که متعلق به بنیاد SIGMOD بود، منتشر کنند. در حال حاضر رید بندی هارد یکی از تکنولوژی های پرکاربرد در جهان است. در این نوشتار به معرفی این فناوری محبوب میپردازیم. با ما همراه باشید.
تاریخچه RAID
10 سال قبل از انتشار مقاله دانشمندان مذکور، Gus German و Ted Grunau از شرکت Geac Computer Corp برای اولین بار به چنین ایدهای اشاره کرده بودند. فرد دیگری هم به نام Norman Ken Ouchi از کمپانی IBM در سال ۱۹۷۷، تکنولوژی که بعدها به عنوان RAID 4 شناخته شد، ثبت کرده بود اما این دیوید، رندی و گارث بودند که با زیرکی و با توجه به آنچه که شرکتهایی چون Tandem Computers و Thinking Machines و Maxstor انجام داده بودند، موفق به ارائه RAID خود شدند.
آنها نام RAID که بیانگر Redundant Array of Independent Disks بود را روی این تکنولوژی گذاشتند اما خیلی زود تولیدکنندگان کلمه Inexpensive را جایگزین کلمه Independent که بیانگر قیمت کم بود، کردند.
رید (RAID) چگونه کار میکند؟
رید در اصل تکنولوژی مجازی سازی ذخیره دیتا است و در آن چند هارد درایو فیزیکی با هم ترکیب میشوند و یک یا چند واحد ایجاد میکنند. به زبان ساده در این فناوری دادهها را بین چند هاردی که با هم رید بسته شدهاند توزیع میکنیم. البته سیستم عامل، این هاردهای RAID شده را به عنوان یک هاردِ واحد شناسایی خواهد کرد.
پس با توجه به این توضیحات، به روشی که برای گروه بندی درایوهای فیزیکی مجزا در یک درایو به کار میرود؛ RAID میگوییم که به وسیلهی آن، سرور میتواند همزمان بین چندین درایو، خواندن و نوشتن را انجام دهد بنابراین کارایی در درایوهای رید شده بهتر است.
بسته به نوع رید از هارد دیسکهای مشخصی بهره میبرند که هر کدام از آنها با نام سطوح مختلف Raid شناخته میشوند. تفاوت سطوح مختلف رید به ویژگی های ایجاد شده توسط ترکیب هارد دیسک ها بستگی دارد. 3 ویژگی اصلی این سطوح مختلف عبارتند از:
تحمل خطا (Fault Tolerance)
ایجاد امکانی برای حفظ اطلاعات در برابر بروز هرگونه مشکل در هارد دیسک از مهمترین اهداف رید است.
عملکرد (Performance)
با توجه به اینکه از چند هارد دیسک در یک رید استفاده می شود، سرعت پردازش دادهها افزایش زیادی پیدا میکند و در نتیجه شاهد بهبود عملکرد خواهیم بود.
ظرفیت (capacity)
تعداد هاردهای ترکیب شده در یک رید و نوع اتصال میان آنها می تواند ظرفیت های مختلفی را ایجاد کند.
سازماندهی رید چیست؟
به تکنیک دخیره سازی در هر رید، سازماندهی میگویند و به طور کلی 4 روش اصلی دارد که عبارتند از:
تکنیک striping
در این تکنیک تقسیمبندی دادهها در اندازههای مشخص و یکسان (بلوک) انجام میشود. بعد از تقسیم داده در اندازههای یکسان، سپس تمام این بلوکها را روی هم قرار میدهند. ذخیره سازی اطلاعات به این روش منجر به بهبود عملکرد میشود.
تکنیک mirroring
در این روش نسخه های یکسان داده به صورت همزمان روی همه هاردهای یک رید ذخیره می شوند. از مزایای این روش بهبود عملکرد و افزایش تحمل خطا (Fault Tolerance) است.
تکنیک parity
این روش شبیه به striping است اما به طور همزمان از روش checksum نیز در آن استفاده میشود. به همین دلیل زمانی که هاردی دچار مشکل شود، بلوک از بین رفته به کمک checksum دوباره محاسبه خواهد شد که منجر به بالا رفتن تحمل خطا میشود.
ساخت رید
از 2 روش نرم افزاری و سخت افزاری برای ساخت RAID استفاده میشود که به شرح زیر هستند:
روش نرم افزاری
در این روش از سیستم عامل برای اجرای یک RAID استفاده میشود. مزیت این روش قیمت مناسب آن است چرا که نیازی به خرید سخت افزار مجزا نیست. اما معایبی هم دارد که عبارتند از:
- کاهش کارایی و سرعت کاهش
- تقریبا همه سیستم عاملها قابلیت ایجاد رید را دارند اما از همه سطوح آن پشتیبانی نمیکنند.
- استفاده از CPU سیستم میزبان
- امکان بوت کردن سیستم برای برخی از سطوح رید وجود ندارد.
- در این روش امکان تعویض هارد بدون نیاز به خاموش کردن دستگاه وجود ندارد بنابراین در جاهایی که نیاز است سیستم به صورت مداوم در دسترس باشد، گزینه مناسبی نیست.
روش سخت افزاری
در این روش برای اجرای Raid از یک سخت افزار مشخص استفاده میشود و تنها مشکل آن قیمت بالای آن است اما مزایای فوقالعادهای دارد که استفاده از آن را توجیه میکند. این مزایا عبارتند از:
- عدم استفاده از CPU کامپیوتر میزبان
- امکان بوت کردن
- به دلیل ارتباط مستقیم با تجهیزات، رفع خطاها بسیار راحتتر است.
- پشتیبانی از قابلیت Hot-Swapping باعث میشود شما هر زمان که بخواهید، هارد دیسک رید خود را تعویض کنید.
سطوح مختلف RAID
با توجه به این که رید، سخت افزاری باشد یا نرم افزاری سطح بندی میشوند. این سطوح شامل سطوح استاندار، سطوح غیراستاندارد و Nested هستند که هر کدام ویژگی ها، مزایا و معایب خود را دارند. در مقالههای آینده تمام این سطوح را به تفکیک به شما معرفی میکنیم اما اگر بخواهیم به صورت خلاصه انواع آن را ببینیم، این جدول راهنمای خوبی است:
تفاوت SSD و RAID
در بین انواع RAID ها، تنها RAID 0 میتواند سرعتی مشابه با سرعت SSD در خواندن و نوشتن داشته باشد البتهRAID 0 دارای محدودیتهایی است که به توان عملیاتی RAID Cnotroller و سرعت پردازشهای عمومی مربوط میشود. اما کارایی و سرعت رید صفر به SSD نمیرسد و تنها مزیت RAID در مقابل SSD هزینه پایینتر آن است.
سخن پایانی
در این نوشتار به معرفی کلی RAID پرداختیم اما انواع آن را به صورت کامل در مقالاتی جداگانه مورد بررسی قرار خواهیم داد. به نظر شما بهترین نوع RAID کدام است؟