قبل از هرچیزی باید با XOR آشنا شویم:
عملگر XOR زمانی برابر با 1 است که دو آرگومان متفاوت داشته باشیم.
XOR (0,1)= 1
XOR (1,0)= 1
و این عملگر زمانی برابر با صفر است که آرگومانها یکسان باشند.
XOR (0,0)= 0
XOR (1,1)= 0
حالا فرض کنیم 3 دیسک با مقادیر زیر داریم:
| 101 | 010 | 011 |
خب با محاسبه ی XOR سه مقدار، مقدار درایو چهارم را بدست میآوریم
XOR (101, 010, 011)= 100
بنابراین دادهی درایو چهارم بصورت زیر در میآید:
| 101 | 010 | 011 | 100 |
حالا میتوانیم شگفت انگیز بودن RAID 5 را ببینیم که چگونه با از بین رفتن یکی از درایوها داده موجود بر روی آن را بازگردانی میکند.
| 101 | 010 | 011| 100 |
XOR (101, 010, 100)= 011
RAID 5 نه تنها بر روی 3 بیت و 4 هارد دیسک کار میکند، بلکه با استفاده از هر تعداد هارد دیسک (بیش از 3) و هر میزان بی از اطلاعات نیز عملکرد بسیار خوبی دارد. RAID 5 در عمل از رایج ترین Strip Size یعنی 64K استفاده و پشتیبانی میکند. (65536*8=524288 bit)
بنابراین XOR در واقع با 524288 بیت سر و کار دارد و نه با 3 بیتی که در آزمایش ما موجود بود! برای این کار RAID 5 نیازمند موتور بسیار توانمندی در XOR میباشد تا بتواند محاسبات لازم را در کمترین زمان ممکن انجام دهد.
پس زمانی که یک هارد دیسک به منظور Parity اضافه می گردد، در صورتی که یکی از هارد دیسکها با مشکل مواجه شود با استفاده از هارد دیسک Parity می توان آن را بازسازی کرد.
در RAID 4 یک هارد دیسک به منظور Parity درنظر گرفته میشد. اما Parity در RAID 5 میان همهی هارد دیسکهای Array پخش میشود. این توزیع بصورت چشم گیری عملکرد را افزایش میدهد و جادوی XOR هم کماکان ادامه مییابد.
برای اطلاع بیشتر درمورد RAID میتوانید به این صفحات مراجعه کنید:
What is RAID 0
What are RAID 1, RAID 1+0 and RAID 0+1
RAID 2, RAID 3, RAID 4 – what it is, how it works?
RAID 5? RAID 6?
Standard RAID levels
همچنین با توجه به اهمیت بسیار بالای این بحث، از این پس سلسله مقالات و ترجمههایی در مورد RAID توسط تیم فنی شرکت داده رایانش ابری پردیس، منتشر خواهد شد.