RAID гэж юу вэ?

RAID нь сүлжээний серверийн зах зээлд зориулж боловсруулагдсан шийдэл юм. Үндсэндээ, хямд өртөгтэй хатуу дискийг олон дахин хянаж, нэг хянагчийн тусламжтайгаар нэг том багтаамжийн хөтчийг өгөх болно. Энэ нь RAID гэж юу вэ гэвэл: хямд үнэтэй хөтчүүд эсвэл дискнүүд. Үүнийг хэрэгжүүлэхийн тулд янз бүрийн хөтчүүд хооронд өгөгдөл хуваахын тулд нарийн мэргэжлийн програм хангамж болон хянагчууд хэрэгтэй байв.

Эцэст нь, таны компьютерийн системийн боловсруулалтын хүчин чадал хувийн компьютерийн зах зээлд нэвтрэх боломжийг харуулах боломжийг олгосон.

Одоо RAID хадгалалт нь програм хангамж эсвэл тоног төхөөрөмж дээр тулгуурладаг бөгөөд гурван өөр зорилгоор ашиглагдаж болно. Эдгээрт чадавхи, аюулгүй байдал, гүйцэтгэл орно. Чадавхи нь ашиглагддаг бараг бүх төрлийн RAID тохиргоонд хамаатай энгийн нэг юм. Жишээ нь, хоёр хатуу дискийг хоёр удаа хүчин чадалтай хоёр виртуал хөтөчтэйгээр үр дүнтэйгээр үйлдлийн систем болгон холбож болох юм. Гүйцэтгэл нь компьютер дээрээ RAID тохируулгыг ашиглах бас нэг чухал шалтгаан юм. Хоёр хөтөчийг нэг хөтөч болгон ашигладагтай адил жишээлбэл, хянагч нь өгөгдөл зүсмэлийг хоёр хэсэг болгон хувааж тэдгээр тус бүрийг тус тусад нь хөтлөнө. Энэ нь хадгалалтын системд өгөгдөл бичих буюу унших чадварыг хослуулах үр дүнтэй байдаг. Эцэст нь RAID өгөгдлийн аюулгүй байдлын хувьд ашиглаж болно.

Энэ хөтөч дээрх зарим зайг ашиглан хоюулан дээр нь хоюуланд нь бичигддэг өгөгдлийг хуулбарлах замаар хийдэг. Дахин хэлэхэд хоёр хөтөчтэй хамт өгөгдлийг хоёр хөтөч уруу бичигддэг болгохын тулд бид хийж чаддаг. Тиймээс хэрэв нэг хөтөч амжилтгүй бол нөгөө нь өгөгдөлтэй хэвээр байна.

Таны компьютерийн системд зориулж хадгалах агуулахын зорилгоос хамааран та эдгээр гурван зорилгыг хангахын тулд янз бүрийн түвшингийн RAID-ийн аль нэгийг ашиглах болно.

Хатуу дискийг компьютер дээрээ хэрэглэдэг хүмүүст зориулсан гүйцэтгэл нь хүчин чадлаас илүүтэй асуудал юм. Нөгөө талаас хатуу улсын хөтөчүүдийг ашигладаг програмууд нь жижиг хөтчийг авах арга замыг хүсэж байгаа бөгөөд нэг том диск үүсгэхийн тулд тэдгээрийг холбох арга замыг хүсэх байх. Тиймээс хувийн компьютер ашиглан ашиглаж болох RAID-ийн янз бүрийн түвшинг харцгаая.

RAID 0

Энэ нь RAID-ийн хамгийн бага түвшин бөгөөд үнэндээ нөөцлөлтийн ямар ч хэлбэрийг санал болгодоггүй бөгөөд тэгэхээр энэ нь 0-р түвшн рүү чиглэсэн гэж үздэг. Үндсэндээ RAID 0 нь хоёр буюу түүнээс олон хөтөчүүдийг шаарддаг бөгөөд том багтаамжийн хөтчийг загварчлахад зориулж тэдгээрийг нийлүүлдэг. Үүнийг striping гэж нэрлэдэг процессороор дамжуулан олж авдаг. Өгөгдлийн блокууд нь өгөгдлийн хэсгүүдэд хуваагддаг ба дараагаар нь дискнүүдийн дагуу бичигдсэн байдаг. Энэ нь хөтчүүдэд хурдыг үр дүнтэй үржүүлж өгдөг учраас өгөгдлийг зэрэгцүүлж болох учраас энэ нь ажиллагааг сайжруулдаг. Доор гурван диск дээр хэрхэн ажиллах жишээ харуулав:

Драйв 1 Драйв 2 Драйв 3
Блок 1 1 2 3
Блок 2 4 5 6
Блок 3 7 8 9


RAID 0-ийг системийг гүйцээхийн тулд үр дүнтэй ажиллахын тулд та оролдлого хийх хэрэгтэй. Хөтөч бүр хадгалах багтаамж, гүйцэтгэлийн онцлогтой байх ёстой.

Хэрэв тэдгээр нь байхгүй бол тэдгээрийн хамгийн багаар бодоход олон дискнүүд болон ажиллагааг нь хөтлөгчийн хамгийн удаанаар хязгаарлах болно. Энэ нь дараалсан багц уруу шилжихээс өмнө бүх зургуудыг бичихийг хүлээх ёстой. Хуучирсан хөтчүүдийг ашиглаж болох боловч энэ тохиолдолд JBOD тохируулга илүү үр дүнтэй байж болох юм.

JBOD нь зүгээр л нэг хөтөч бөгөөд зөвхөн үр дүнтэй байдаг бөгөөд зөвхөн ганц бие биендээ хандаж болох хөтөчүүдийн цуглуулга боловч үйлдлийн системд зориулж нэг хадгалалтын хөтөч хэлбэрээр гарч ирдэг. Энэ нь ихэвчлэн хөтчүүд хоорондын өгөгдлийн урттай байх замаар хийгддэг. Ихэнхдээ үүнийг SPAN эсвэл BIG гэж нэрлэдэг.

Үйлдлийн систем нь тэдгээрийг бүгдийг нэг диск маягаар хардаг боловч блокуудыг эхний диск дээр бичиж, дараа нь хоёр дахь, гурав дахь гэх мэт ахиц гарна. Энэ нь одоо байгаа компьютерийн системд нэмэлт хүчин чадал нэмэхэд ашигтай байдаг. янз бүрийн хэмжээтэй дискнүүдээр хөтөч массивын гүйцэтгэлийг нэмэгдүүлэхгүй болно.

RAID 0 болон JBOD тохиргоонд хамгийн том асуудал бол өгөгдлийн аюулгүй байдал юм. Олон тооны хөтөчүүд танд байгаа тул өгөгдлийн авлигын боломж нэмэгдсээр байгаа тул алдааны илүү олон цэгүүд бий болсон . Хэрэв RAID 0 массив дахь ямар нэгэн хөтөч нь амжилтгүй болбол бүх өгөгдлүүд нь боломжгүй байдаг. JBOD-д хөтчийн эвдрэл нь тухайн хөтөч дээр гарсан ямар ч өгөгдөл алдагдахад хүргэнэ. Үүний үр дүнд хадгалалтын аргыг ашиглахыг хүссэн хүмүүст өгөгдлөө нөөцлөх өөр арга замтай байх нь зүйтэй юм.

RAID 1

Энэ нь массив дээр хадгалагдаж байгаа өгөгдөлд нөөцлөлтийн бүрэн түвшнийг хангаж өгдөг тул RAID-ийн анхны жинхэнэ түвшин юм. Үүнийг толин тусгал гэж нэрлэдэг процессоор хийгддэг. Системд бичигдсэн бүх өгөгдлийг 1-р түвшний массив дахь хөтөч болгон хуулна. RAID-ийн энэ хэлбэрийг ихэвчлэн хоёр хөтөч ашиглан хийдэг бөгөөд илүү олон тооны дискнүүд нэмэлт хүчин чадлаар нэмж чаддаггүй. Үүнийг илүү сайн жишээлбэл энэ нь хоёр хөтөч уруу хэрхэн бичигдэхийг харуулсан хүснэгтийг энд үзүүлэв:

Драйв 1 Драйв 2
Блок 1 1 1
Блок 2 2 2
Блок 3 3 3


RAID 1 тохиргооноос хамгийн үр ашигтай ашиглахын тулд систем ижил хүчин чадал болон гүйцэтгэлийн зэрэглэлүүдийг хуваалцдаг тохирсон хөтчүүдийг дахин ашигладаг.

Хэрвээ тохиромжгүй хөтөчүүдийг ашиглаж байгаа бол массивын багтаамж массив дахь хамгийн бага чадлын хөтөчтэй тэнцүү байх болно. Жишээ нь хэрэв нэг хагасыг terabyte болон one terabyte хөтөч RAID 1 массивт ашигласан бол энэ массивын багтаамж нь нэг terabyte байх болно.

RAID-ийн түвшин нь өгөгдлийн аюулгүй байдлын хувьд өндөр үр дүнтэй байдаг тул хоёр хөтөч нь адилхан үр дүнтэй байдаг. Хэрэв хоёр хөтөчийн аль нэг нь амжилтгүй болбол нөгөө нь нөгөө талын бүрэн мэдээлэлтэй байна. Энэ төрлийн тохиргоонд байгаа асуудал нь ерөнхийдөө дискний файлын аль нь буруу болохыг тогтоодог. Учир нь ихэвчлэн хоёр нь амжилтгүй болж, бүтэлгүйтсэн нэгний оронд шинэ дискийг оруулах хүртэл сэргээх боломжгүй болдог. процесс ажиллаж байна. Урьд нь дурьдсанчлан, энэ нь гүйцэтгэлийн үр ашиггүй байна. Үнэн хэрэгтээ RAID-ийн хянагчийн хэт ачааллаас бага зэрэг гүйцэтгэл алдагдах болно.

RAID 1 + 0 эсвэл 10

Энэ нь RAID түвшний 0 болон 1 түвшний аль алины хувьд төвөгтэй хослол юм . Энэ горимд ажиллахын тулд хянагч хамгийн багадаа дөрвөн хөтөч хэрэгтэй болно. Учир нь үүнийг хийх хоёр зүйл нь хоёр хос хөтөч болгоно. Эхний багц хөтөчүүд нь толин тусгал хийгдсэн массив бөгөөд энэ хоёр хоёрын хооронд өгөгдлийг үүсгэдэг. Хоёр дахь багц хөтчүүд нь бас толин тусгал хийгдсэн боловч эхний зурвасыг үүсгэсэн. Энэ нь өгөгдлийн илүүдэл болон гүйцэтгэлийн үр дүнг хоёуланг нь хангадаг. Доорх жишээ нь ийм төрлийн тохиргоог ашиглан дөрвөн диск дээр өгөгдөл хэрхэн яаж бичигдэх жишээ юм:

Драйв 1 Драйв 2 Драйв 3 Драйв 4
Блок 1 1 1 2 2
Блок 2 3 3 4 4
Блок 3 5 5 6 6


Үнэнийг хэлэхэд энэ нь компьютерийн систем дээр ажиллаж байх RAID-ийн хүсээгүй горим биш юм. Зарим гүйцэтгэлийг хурдасгадаг боловч энэ систем нь асар их хэмжээний агаарын хөлгийн улмаас энэ нь тийм ч сайн биш юм. Үүнээс гадна, хөтөч массив нь зөвхөн бүх хөтчийн багтаамжийн хагас тэн хагасыг л багтаадаг тул энэ нь ихээхэн хэмжээний хог хаягдал юм. Хэрвээ тохиромжгүй дискнүүд ашиглагдаж байгаа бол гүйцэтгэл нь хөтчийн хамгийн удаанаар хязгаарлагддаг бөгөөд хүчин чадал нь хамгийн жижиг хөтөчийг хоёр дахин ихэсгэх болно.

RAID 5

Энэ нь хэрэглээний компьютерийн системээс олж болох хамгийн өндөр түвшний RAID бөгөөд чадавхи, нөөцийг нэмэгдүүлэх илүү үр дүнтэй арга юм. Энэ нь өгөгдлийг судалж харьцуулах замаар боловсруулдаг. Үүнийг хийхэд хамгийн багаар бодоход гурван хөтөч шаардлагатай бөгөөд хэд хэдэн диск дээр өгөгдлүүд нь хуваагдмал байдаг бөгөөд судал дээр нэг блокийг parity-д зориулж тавьдаг. Үүнийг илүү тайлбарлахын тулд өгөгдлийг гурван хөтөчөөр хэрхэн бичиж болох талаар эхлээд үзээрэй:

Драйв 1 Драйв 2 Драйв 3
Блок 1 1 2 х
Блок 2 3 х 4
Блок 3 х 5 6


Ерөнхийдөө дискийн хөтөч нь массив дахь бүх хөтчүүд дээр бичигдэх өгөгдлийн олон тооны хэсгийг авдаг. Өгөгдөл эхлүүлэх эхний бит нь эхний хөтөч дээр байрладаг ба хоёр дахь нь секундэнд байрладаг. Гурав дахь хөтөч нь эхний болон секундын хоёртын тооны харьцуулалтыг гол төлөв тэнцүү хуваадаг. Хоёртын математикт та 0, 1 гэсэн утгатай байна. Бутан математик процесс нь битүүдийг харьцуулахын тулд хийгддэг. Хэрэв хоѐр тоог (0 + 0 эсвэл 1 + 1) хүртэл тоог нэмбэл тэнцвэрийн бит нь тэг болно. Хэрэв хоёр сондгой тоог (1 + 0 эсвэл 0 + 1) нэмэх бол parity бит нь байх болно. Үүний шалтгаан нь хэрэв хөтчийн аль нэг нь ажиллахгүй бол хянагч нь дутуу өгөгдөл юу болохыг мэдэх болно. Жишээ нь, хөтөч нэг нь амжилтгүй болвол хоёр, гурван хөтөч хоёр хөтөч, хоёр хөтөч нь нэг өгөгдлийн блоктой байх бөгөөд гурван хөтөч нь нэг паритет блоктой бол хөтчийн алга болсон өгөгдлийн блок нь тэг байх ёстой.

Энэ нь жолоодлогын бүтэлгүйтлийн үед бүх өгөгдлийг сэргээх боломжийг олгодог үр дүнтэй өгөгдлийн нөөцийг өгдөг. Одоо хэрэглээний ихэнх тохиргоонуудын хувьд алдаа нь функциональ төлөвт биш учраас системд нөлөөлөхгүй хэвээр байх болно. Системийг ажиллагаатай болгохын тулд амжилтгүй болсон дискийг шинэ дискээр солих хэрэгтэй. Дараа нь өгөгдөл сэргээн засварлах үйл явцыг хянагч түвшинд хийх ёстой бөгөөд дараа нь дутуу хөтөч дээрх өгөгдлийг дахин үүсгэх буцаах boolean функцийг хийх болно. Энэ нь их хэмжээний багтаамжтай хөтчүүдэд зориулж зарим цаг хугацаа шаардаж болох боловч энэ нь наад зах нь сэргээгдэх боломжтой юм.

Одоо RAID 5 массивын багтаамж нь массив дахь дискний тоо болон тэдгээрийн багтаамжаас хамаардаг. Дахин хэлэхэд массив нь массив дахь хамгийн бага багтаамжийн хөтөчөөр хязгаарлагдсан тул тохирсон хөтчүүдийг ашиглах нь зүйтэй юм. Үр дүнтэй хадгалах зай нь хөтчүүдийн тоо нь хамгийн бага хүчин чадалаас 1 дахин их байна. Тэгэхээр математикийн хувьд энэ нь (n-1) * Capacitymin . Тийм болохоор хэрэв та RAID 5 массивт гурван 2GB хөтөч байгаа бол нийт багтаамж нь 4GB байна. Дөрвөн 2GB дискийг ашигласан өөр нэг RAID 5 массив нь 6GB чадалтай байх болно.

Одоо RAID 5-ийн гүйцэтгэл нь өгөгдлийг хөтөчүүд уруу бичигдэж байх үед өгөгдлийн процессийн битийг үүсгэхийн тулд boolean процесс шаардагдах тул жаахан илүү төвөгтэй байдаг. Энэ нь бичих гүйцэтгэл нь ижил тооны хөтчүүдтэй RAID 0 -с бага байх болно гэсэн үг юм. Нөгөө талаас гүйцэтгэлийг унших нь хөтөчөөс шууд өгөгдлийг уншдаг учир boolean процесс хийгдээгүй учраас бичвэрийн адил зовлонгүй.

Бүх RAID тохиргоонуудтай Big Issue

Бид өөрсдийн компьютер дээр ашиглаж болох RAID түвшин бүрийн давуу болон сул талуудыг хэлэлцсэн боловч RAID хөтчийг үүсгэх талаар олон хүн мэддэггүй өөр нэг асуудал бий. RAID тохируулгыг ашиглаж эхлэхээсээ өмнө эхлээд тоног төхөөрөмжийн хянагч програм хангамж эсвэл үйлдлийн системийн програм хангамжаар хийгдсэн байх ёстой. Энэ нь өгөгдөл хэрхэн бичигдэж, хөтөч дээр уншиж байгааг хянахын тулд шаардлагатай тусгай форматыг эхлүүлнэ.

Энэ нь магадгүй асуудал шиг сонсогдож чадахгүй байна гэхдээ та өөрийн RAID массивыг тохируулахыг хүссэнээ өөрчлөх хэрэгтэй болно. Жишээ нь өгөгдөл багатай бөгөөд RAID 0 эсвэл RAID 5 массивын хувьд нэмэлт зай нэмэхийг хүсэж байгаа гэж хэлж болно. Ихэнх тохиолдолд та RAID массивыг дахин тохируулах шаардлагагүй бөгөөд тэдгээр хөтчүүдэд хадгалагдсан өгөгдлийг устгах болно. Энэ нь таны өгөгдлийг бүрэн нөөцлөх, шинэ хөтөч нэмэх, дискийн массивыг дахин тохируулах, массивыг форматлах, дараа нь таны өгөгдлийг диск уруу буцааж сэргээх хэрэгтэй гэсэн үг юм. Энэ нь маш хэцүү үйл явц байж болох юм. Үүний үр дүнд, та үүнийг анх удаа хийхийг хүсч байгаа байдлаараа массивыг тохируулах хэрэгтэйг анхаараарай.