رید سختافزار در مقابل رید نرمافزار
رید سختافزار: با راه اندازی پیکربندی سخت افزار، درایوها به کارت ریدکنترلر که در مادربرد سرور قرار دارد متصل میشوند. این عملکرد مطلوب را ارائه میدهد، زیرا پردازش توسط کارت رید انجام میشود و فشار کمتری هنگام نوشتن پشتیبان و بازیابی داده ها ایجاد میکند.
- رید نرمافزار: هنگامی که درایوها بدون ریدکنترلر به مادربرد سرور متصل میشوند، پیکربندی توسط نرم افزار سیستم عامل مدیریت میشود. این گزینه ارزان تر است تنها کاری که باید انجام دهید اتصال درایوها و پیکربندی سیستم عامل است. با این حال، شما محدود به سطوح رید هستید که سیستم عامل شما می تواند پشتیبانی کند.
پیکربندی سخت افزاری انعطافپذیری بیشتری را از طریق گزینههای پیکربندی بیشتر ارائه میدهد و شما را از محدودیتهای پیکربندی نرمافزاری رها میکند. بسته به پیچیدگی رید، در صورت استفاده از پیکربندی نرم افزاری، عملکرد سیستم میتواند مشکل ساز باشد.
انتخاب پیکربندی مناسب و نکات مهم در انتخاب
- توان و کارایی سیستم: در انتخاب پیکربندی، باید به توان و کارایی سیستمهای ذخیرهسازی توجه کرد. انتخاب رید با توجه به نیاز و نوع کاربری، باعث بهبود عملکرد و کارایی سیستم خواهد شد.
- سطح پشتیبانی: سطح پشتیبانی از پیکربندی رید نیز مهم است. باید اطمینان حاصل کرد که سیستمهای ذخیرهسازی و سرورها، از پشتیبانی کامل و قابل اعتماد برخوردار هستند.
- هزینهها: نکته دیگری که باید مورد توجه قرار گیرد، هزینههای مرتبط با انتخاب پیکربندی رید است. باید تعادلی بین کیفیت و هزینهها داشته باشیم تا به بهترین نتیجه برسیم.
رید RAID 0
فرآیند تقسیم مجموعهای از داده ها به بلوکها و پخش بلوکهای داده در چندین دستگاه ذخیره سازی، مانند هارد دیسک یا درایوهای اِساِسدی (SSD)، در یک آرایه اضافی از دیسکهای مستقل (RAID) است. گروه یک نوار شامل دادههایی است که در مجموعه هارد دیسکها یا اساسدی ها تقسیم میشوند و یک واحد راه راه به برش داده در یک درایو جداگانه اشاره دارد.
از آنجایی که نواردیسک دادهها را در درایوهای فیزیکی بیشتری پخش میکند، چندین دیسک میتوانند به محتویات یک فایل دسترسی داشته باشند و امکان نوشتن و خواندن سریعتر را فراهم میکند. با این حال، بر خلاف سایر سطوح رید 0 با رید (بدون داده) برابری ندارد. نواردیسک بدون داده برابری افزونگی یا تحمل خطا ندارد. یعنی اگر یک درایو از کار بیفتد، تمام اطلاعات آن درایو از بین میرود.
سیستمهای ذخیرهسازی، نوار دیسک را به روشهای مختلفی انجام میدهند. یک سیستم ممکن است دادهها را در سطح بایت، بلوک یا پارتیشن نواری کند، یا می تواند دادهها را در تمام یا برخی از دیسکهای یک خوشه نواری کند. به عنوان مثال، یک سیستم ذخیرهسازی با 10 هارددیسک ممکن است یک بلوک 64 کیلوبایتی (KB) را روی دیسکهای اول، دوم، سوم، چهارم و پنجم خط بکشد و سپس دوباره در دیسک اول شروع به کار کند. سیستم دیگری ممکن است 1 مگابایت (مگابایت) داده را روی هر یک از 10 دیسک خود قبل از بازگشت به دیسک اول برای تکرار فرآیند، نوار خط بکشد.
رید 0 بهتر است برای ذخیرهسازی غیربحرانی اما به خواندن و نوشتن با سرعت بالا استفاده شود. ذخیره کردن جریان زنده ویدئو و ویرایش ویدئو از کاربردهای رایج رید 0 به دلیل سرعت و عملکرد است. نوار دیسک بدون افزونگی داده ممکن است برای دادههای موقت، فضای خالی یا در شرایطی استفاده شود که یک نسخه اصلی از دادهها به راحتی از یک دستگاه ذخیرهسازی دیگر قابل بازیابی است.
رید Raid 1
خلاصه: رید 1 دادهها را در سطح بلوک روی دو دیسک منعکس میکند. هر بار که یک بلوک داده در زیر سیستم ذخیره سازی نوشته میشود، کنترلر رید شما همان بلوک داده را روی هر دو دیسک مینویسد و در صورت خرابی یکی از دیسکها تحمل خطا را ارائه میدهد. به همین دلیل، ویژگی های عملکرد ورودی/خروجی در مقایسه با یک دیسک عملکرد نوشتاری کمی پایین تر دارد، در حالیکه عملکرد خواندن تقریباً دو برابر یک دیسک است.
این امر به این دلیل است که وقتی ریدکنترلر نیاز به نوشتن داده دارد، باید این کار را روی هر دو دیسک انجام دهد، اما هنگامی که به خواندن دادهها نیاز دارد، میتواند همزمان دو خواندن مختلف را از هر یک از دیسکها دریافت کند، زیرا مجموعه دادههای هر دو دیسک به صورت آینه (Mirror) درآمده است. از آنجایی که داده ها در هر دو دیسک در آرایه آینه میشوند، یکی از دیسکها میتواند خراب شود، زیرا log به عنوان یکی عملکردی باقی میماند، بدون اینکه باعث خرابی آرایه شود.
توجه: در حالیکه اکثر ریدکنترلرهای مبتنی بر سخت افزار معمولاً فقط از دو دیسک در یک آرایه رید یک پشتیبانی میکنند، برخی از کنترلرها و سیستمهای رید نرمافزاری ممکن است بیش از دو دیسک را پشتیبانی کنند. در این موارد، با افزایش تعداد دیسکها، عملکرد نوشتن کمی کاهش مییابد و عملکرد خواندن با تعداد دیسکها افزایش مییابد.
ظرفیت: VD = (C * n) / n | VirtualDrive = (ظرفیت یک دیسک * تعداد دیسک) / تعداد دیسک
عملکرد ورودی/خروجی: عملکرد نوشتن کمی پایینتر با تقریباً دو برابر عملکرد خواندن
تحمل خطا: n / n
رید Raid 5
خلاصه:رید 5 دادهها را در سطح بلوک در هر یک از دیسکهای آرایه قرار میدهد، در حالی که دادههای برابری را نیز محاسبه میکند، که برای افزودن تحمل خطا در دیسکهای آرایه توزیع میشود. با یک آرایه رید 5، یک مجموعه برابری در سراسر آرایه توزیع میشود، که به هر دیسک موجود در آرایه اجازه میدهد بدون ایجاد خرابی آرایه خراب شود. از آن جایی که برابری توزیع شده باید حاوی اطلاعات برابری برای اطلاعات یک دیسک باشد، فضای خالی ارائه شده توسط آرایه ظرفیت کل همه دیسکها منهای یک دیسک با ظرفیت خواهد بود.
به همین دلیل است که پیکربندی 5 حداقل به سه دیسک نیاز دارد. عملکرد I/O برای رید 5 عملکرد خواندن و نوشتن را بهبود میبخشد، با این حال، نوشتن به دلیل رید 0 خطی نخواهد بود زیرا ریدکنترلر نیاز به محاسبه برابری و همچنین ذخیره دادههای برابری حاصل دارد.
توجه: در حالی که برخی از سیستمهای رید نرم افزاری از رید 5 پشتیبانی میکنند، ما این را در تولید توصیه نمیکنیم زیرا محاسبات برابری باید توسط سیپییو سرور شما انجام شود تا کنترل کننده سخت افزاری تخصصی اختصاصی که برای تسریع این نوع محاسبات طراحی شده است.
به این ترتیب، یک رید نرم افزار 5 مقیاس بار پردازنده را با ورودی/خروجی دیسک مشاهده میکند و اغلب با افزایش نوشتن دیسک میتواند باعث اضافه بار شود.
ظرفیت: VD = (C * n) – C | VirtualDrive = (ظرفیت یک دیسک * تعداد دیسک) – ظرفیت یک دیسک
عملکرد I/O: بهبود عملکرد خواندن و نوشتن
تحمل خطا: n – 1
رید Raid 10
خلاصه: رید 10 یک آرایه تو در تو، که شامل رید 0 از مجموعه رید 1 است. به عبارت دیگر، یک آرایه RAID از چند آرایه رید است. به این ترتیب، این سطح پیکربندی برای برخی از ویژگیهای عملکرد رید 0 و رید 1 را ترکیب میکند. عملکرد ورودی/خروجی برای خواندن و نوشتن بهبود مییابد، که براساس تعداد دیسکهای آرایه مقیاس متفاوتی خواهد داشت. عملکرد خواندن با تعداد دیسکهای آرایه مقیاس میشود، در حالیکه عملکرد نوشتن با تعداد مجموعههای رید 1 در آرایه مقیاس مییابد.
به عنوان مثال: یک رید 10 با چهار دیسک دارای دو مجموعه رید 1 است که سپس بخشی از رید 0 هستند، بنابراین عملکرد خواندن تقریباً چهار برابر یک دیسک واحد در آرایه خواهد بود و عملکرد نوشتن تقریباً دو برابر یک تک دیسک این سطح رید ترکیبی عالی از عملکرد و تحمل خطا را ارائه میدهد.
نیمی از دیسکهای آرایه میتوانند بدون خرابی آرایه خراب شوند. این به این دلیل است که یک دیسک در هر یک از مجموعههای RAID 1 بدون خرابی آن مجموعه RAID میتواند خراب شود. به دلیل این ویژگیها، متوجه خواهید شد که حداقل تعداد دیسکهای مورد نیاز چهار و تعداد کل دیسک ها باید زوج باشد، به طوری که افزایش تعداد دیسکها در آرایه به صورت جفت دیسک انجام میشود.
در حالیکه تعداد دیسکهای مورد نیاز در مقایسه با ظرفیت خام قابل استفاده کمتر است، این سطح رید بهترین ترکیب کلی عملکرد و تحمل خطا را ارائه میدهد که یک گزینه عالی برای خواندن پایگاههای داده سنگین یا بارهای ترکیبی است.
ظرفیت: VD = (C * n) / n | VirtualDrive = (ظرفیت یک دیسک * تعداد دیسک)/تعداد دیسک
عملکرد ورودی/خروجی: بهبود عملکرد نوشتن با عملکرد خواندن بسیار بهبود یافته است
تحمل خطا: n / 2