1. RAID-i ülevaade
1988. aastal pakkus California Ülikool Berkeley välja RAID-i (RedundantArrayofInexpensiveDisks) kontseptsiooni ning kuna ketaste hind jätkas langemist, sai RAID-ist (RedundantArrayofIndependentDisks), kuid sisu ei muutunud. SNIA, Berkeley ja teised organisatsioonid on seadnud RAID0~RAID6 seitse taset standardseks RAID-tasemeks ning standardseid RAID-i saab kombineerida teiste RAID-tasemetega, kus enim kasutatavad tasemed on RAID0, RAID1, RAID3, RAID5, RAID6 ja RAID10. Iga RAID tase esindab rakendusmeetodit ja tehnoloogiat ning tasemete vahel ei tehta vahet. Praktilistes rakendustes tuleks valida sobiv RAID-tase ja spetsiifilised rakendusmeetodid kasutaja andmerakenduse omaduste põhjal, arvestades kättesaadavust, jõudlust ja kulusid.
Rakenduse seisukohast jaguneb RAID peamiselt kolmeks tüübiks: pehme RAID, kõva RAID ja hübriidne RAID. Kõik soft RAID-i funktsioonid täidavad operatsioonisüsteem ja protsessor, mis on loomulikult kõige vähem efektiivne. Hard RAID on varustatud spetsiaalsete RAID-i juhtimis-/töötlemiskiipide ning I/O töötlemiskiipide ja massiivipuhvritega, mis ei võta protsessori ressursse, kuid on kulukad. Hübriid-RAID-il on RAID-i juhtimis-/töötlemiskiibid, kuid puuduvad I/O protsessorikiibid, mis vajavad protsessorit ja draivereid ning jõudlus ja hind jäävad pehme ja kõva RAID vahele.
2. Põhiprintsiibid
RAID on kettaalamsüsteem, mis koosneb mitmest sõltumatust, kõrge jõudlusega kettaseadmest, pakkudes seeläbi kõrgemat salvestusvõimet ja andmete redundantsuse tehnoloogiat kui üks ketas. RAID on mitme ketta haldustehnoloogia klass, mis pakub kõrge jõudlusega salvestust ja andmete usaldusväärsust taskukohase hinnaga hostikeskkonnale. RAID-i kaks peamist eesmärki on parandada andmete usaldusväärsust ja I/O jõudlust. Kettamassiivis on andmed hajutatud mitme ketta vahel, kuid arvutisüsteemis on see nagu üks ketas. Redundantsus saavutatakse, kirjutades sama andmed samaaegselt mitmele kettale (tavaliselt peegeldades) või kirjutades arvutatud kontrollandmeid massiivi, tagades, et andmekadu ei tekiks ühe ketta rikke korral.
RAID-is on kolm peamist kontseptsiooni ja tehnikat: peegeldamine, andmeeemaldamine ja andmepariteet:
Peegeldamine, mis replitseerib andmeid mitmele kettale, parandab töökindlust ühelt poolt ja parandab lugemisvõimet, lugedes andmeid samaaegselt kahest või enamast koopiast. Ilmselgelt on pildi kirjutamisvõime veidi madalam ning andmete korrektne kirjutamine mitmele kettale võtab rohkem aega. Data striping, mis hoiab andmekilde mitmel erineval kettal, ja mitmed andmekillud koos, moodustavad täieliku andmekoopia, mis erineb mitmest peegeldamise koopiast ning seda kasutatakse sageli jõudluse kaalumiseks. Andmeribadel on suurem paralleelsuse detailsus ning kui andmeid kasutatakse, saab see lugeda ja kirjutada andmeid erinevatel ketastel samaaegselt, mis toob kaasa väga olulise I/O jõudluse paranemise. Andmete verifitseerimine, kasutades redundantseid andmeid andmevigade tuvastamiseks ja parandamiseks, arvutatakse tavaliselt Hemingway koodi, XOR-operatsiooni ja teiste algoritmidega. Verifitseerimisfunktsioon võib oluliselt parandada ketasmassiivide töökindlust, röövimisi ja riketaluvust. Kuid andmete valideerimine nõuab andmete lugemist mitmest allikast, arvutamist ja võrdlemist, mis võib mõjutada süsteemi jõudlust. Erinevad RAID-i klassid kasutavad üht või mitut kolmest tehnoloogiast, et saavutada erinev andmete usaldusväärsus, kättesaadavus ja I/O jõudlus. Mis puudutab seda, millist RAID-i disainida (või isegi uut kvaliteeti või tüüpi) või millist RAID-i režiimi kasutada, on vajalik teha mõistlik valik süsteemi vajaduste põhjaliku mõistmise põhjal ning põhjalikult hinnata töökindlust, jõudlust ja kulusid, et teha kompromiss.
Üldiselt on RAID-i peamised eelised: suur mahutavus, kõrge jõudlus, töökindlus ja hallatavus.
3. RAID-reiting
JBOD (JustaBunchOfDisks) ei ole standardne RAID-i tase, seda kasutatakse sageli ketaste kogumi esindamiseks, millel puudub juhtimistarkvara koordineeritud juhtimise tagamiseks. JBOD ühendab mitu füüsilist ketast järjestikku, pakkudes suurt loogilist ketast. Salvestusjõudlus on täpselt sama mis ühel kettal ja see ei taga andmeturvalisust. Saadaval olev salvestusmaht on võrdne kõigi liikmeketaste salvestusruumi summaga.
RAID0, mida nimetatakse triibutamiseks, on lihtne, kontrollimatu andmetriibutamise tehnoloogia. Jõudlus on kõrgeim kõigist RAID-tasemetest. Mingisuguseid koondamispoliitikaid ei pakuta. 100% salvestusruumi kasutamine.
RAID1 on nimetatud peegeldamiseks, mis kirjutab andmeid töötavale ja peegeldatud kettale täiesti järjepidevalt, kasutades kettaruumi 50%. Andmete kirjutamine mõjutab jõudlust, kuid andmeid ei loeta. See pakub parimat andmekaitset – kui tööketas rikneb, loeb süsteem automaatselt andmed peegeldatud kettalt, mis ei mõjuta kasutaja tööd.
RAID2 kannab nime Heming Code Disk Array ning selle disainiidee on kasutada Heming Code'i andmete verifitseerimise korduvuse saavutamiseks. Mida suurem on andmete laius, seda suurem on salvestusruumi kasutus, kuid seda rohkem kettaid on vaja. Sellel on võime vigu parandada, kuid Hemingcode'i andmete redundantsuse koormus on liiga suur ja andmete rekonstrueerimine väga ajamahukas, mistõttu RAID2 kasutatakse praktikas harva.
RAID3 nimetatakse spetsiaalseks pariteediribaks, mis kasutab pühendatud ketast kontrollkettana ja ülejäänud kettaid andmekettana ning andmed salvestatakse ristsalvestatuna igale andmekettale bittide ja baitidena. RAID3 nõuab vähemalt kolme ketast.
RAID4 ja RAID3 toimivad enam-vähem samal põhimõttel. Pakub väga head lugemisvõimet, kuid kehva kirjutamisvõimet. Ja kui liikmeketaste arv kasvab, muutub kontrollsumma ketta süsteemi kitsaskoht üha silmatorkavamaks. See on reaalses rakenduses haruldane ning tavapärased salvestustooted kasutavad harva RAID4 kaitset.
RAID5 nimetatakse hajutatud pariteedi kontrollsumma ribaks, mis peaks praegu olema kõige levinum RAID-tase ning põhimõte sarnaneb RAID4-le, kuid RAID4-s ei esine kontrollketta jõudluses pudelikaela samaaegsete kirjutamistoimingute ajal.
RAID6, mida nimetatakse topeltpariteedi ribaks, tutvustab topeltkontrollide kontseptsiooni, et lahendada andmete terviklikkuse probleem, kui kaks ketast ebaõnnestuvad samaaegselt, mida teised RAID-klassid lahendada ei suuda. Kuid see maksab palju rohkem kui RAID5, on kehva kirjutamisjõudlusega ning disainimine ja rakendamine on väga keeruline. Seetõttu kasutatakse RAID6-d praktikas harva ning see on üldiselt majanduslik alternatiiv RAID10 lahendustele.
Tavalistel RAID-tasemetel on omad tugevused ja nõrkused. Kombineerida mitu RAID-taset, et saavutada täiendavaid eeliseid ja kompenseerida üksteise puudusi, et saavutada RAID-süsteem kõrgema jõudluse, andmeturvalisuse ja muude näitajatega. Loomulikult on kombinatsiooni taseme rakenduskulud üldiselt väga kallid ja seda kasutatakse vaid mõnel üksikul juhul. Tegelikult kasutatakse laialdaselt ainult RAID01 ja RAID10.
RAID01 triibutakse esmalt ja seejärel peegeldatakse, mis on sisuliselt füüsilise ketta pildistamine; RAID10 on esmalt pildistada ja seejärel triibuda, mis on virtuaalse ketta pildistamine. Samas konfiguratsioonis on RAID01-l tavaliselt parem veakindlus kui RAID10-l. RAID01 ühendab RAID0 ja RAID1 eelised, kus ketta üldine kasutus on vaid 50%.
4. Peavoolu RAID-tasemete võrdlus
RAID-konfiguratsioon
Tase/Kirjeldus: | Rikete taluvus | Merit | Puudus | RAID 0
Kaardista andmed ketaste vahel, et luua suuri virtuaalseid kettaid. Kuna iga füüsiline ketas töötleb ainult osa päringust, suudab see pakkuda suuremat jõudlust. Kui aga üks ketas rikneb, muutub virtuaalketas (VD) ligipääsmatuks ja andmed kaovad jäädavalt. | ei | Parem jõudlus Täiendav salvestusruum | Seda ei tohi kasutada kriitiliste andmete jaoks | RAID 1
Peegelda andmeid, salvestada andmete varukoopia kahele kettale. Kui üks ketas rikneb, võtab teine ketas peamise ketta rolli. | Kettaviga Ühe ketta rike | Kõrge lugemisjõudlus Kiire taastumine pärast ketta riket Andmete redundantsus | Ketta ülekoormus on suur Piiratud mahutavus | RAID 5
Kaardista andmed ketaste vahel ja salvesta iga andmeriba pariteedibitid erinevatele ketastele VD-s. Pariteedibitt sisaldab infot, mida saab kasutada riknenud ketta andmete taastamiseks teiselt kettalt juhul, kui tekib üks ketas rike. | Kettaviga Ühe ketta rike | Ajamivõimsuse tõhus kasutamine Kõrge lugemisjõudlus Keskmine kuni kõrge kirjutamisjõudlus | Mõõdukas kettarikke mõju Pariteedi ümberarvutamise tõttu on rekonstrueerimisaeg pikem | RAID 6
Kaardista andmed ketaste vahel ja salvesta iga andmeriba pariteedibitid erinevatele ketastele VD-s. Erinevalt RAID 5-st teeb RAID 6 kaks pariteediarvutust (P ja Q), mis võimaldab tal taluda kahe ketta rikkeid. | Andmete redundantsus Kõrge lugemisjõudlus | Kettaviga Kahe ketta rike | Kirjutusvõime väheneb kahe pariteedi arvutuse tõttu Kuna see on võrdne kahe ketta kasutamisega pariteediks, kaasneb lisakulu | RAID 10
Ribad peeglikomplektil. Ketta ülekoormus on suur, kuid see on suurepärane lahendus kõrge jõudluse, redundantsuse ja kiire taastamise jaoks ketas rikke korral. | Kettaviga Üks kettarike iga pildikomplekti kohta | Kõrge lugemisjõudlus RAID-gruppe, millel on kuni 192 ketast, saab toetada | Kõrgeim hind | RAID 50
RAID 5 võtteplatsil. Vähendades ketta lugemisi pariteedi arvutuse kohta, saab RAID 5-ga jõudlust parandada, sõltuvalt konfiguratsioonist. | Kettaviga Üks ketta rike iga kohta | Kõrge lugemisjõudlus Keskmine kuni kõrge kirjutamisjõudlus RAID-gruppe, millel on kuni 192 ketast, saab toetada | Mõõdukas kettarikke mõju Pariteedi ümberarvutamise tõttu on rekonstrueerimisaeg pikem | RAID 60
RAID 6 strip komplektis. Vähemate kettalugemiste korral pariteedi arvutuse kohta saab RAID 6-ga jõudlust parandada, sõltuvalt konfiguratsioonist. | Kettaviga Kaks ketast rikevad iga spandi kohta | Kõrge lugemisjõudlus RAID-gruppe, millel on kuni 192 ketast, saab toetada | Kirjutusvõime väheneb kahe pariteedi arvutuse tõttu Kuna see on võrdne kahe ketta kasutamisega pariteediks, kaasneb lisakulu |
5. RAID-tarkvara ja riistvara erinevus
Soft RAID
Soft RAID-il puudub eraldi juhtkiip ja I/O kiip ning operatsioonisüsteem ja protsessor rakendavad kõiki RAID-funktsioone. Kaasaegsed operatsioonisüsteemid pakuvad põhimõtteliselt pehmet RAID-i tuge, pakkudes abstraktsiooni füüsiliste ja loogiliste draivide vahel, lisades tarkvarakihi kettaseadme draiverite peale. Praegu on operatsioonisüsteemi kõige levinumad RAID-reitingud RAID0, RAID1, RAID10, RAID01 ja RAID5. Näiteks Windows Server toetab RAID0, RAID1 ja RAID5, Linux toetab RAID0, RAID1, RAID4, RAID5, RAID6 jne ning Mac OS X Server, FreeBSD, NetBSD, OpenBSD, Solaris ja teised operatsioonisüsteemid toetavad vastavaid RAID-tasemeid.
Soft RAID-i konfiguratsioonihaldus ja andmete taastamine on suhteliselt lihtsad, kuid kõik RAID-ülesanded täidab protsessor täielikult, näiteks kontrollväärtuste arvutamise, mistõttu on täitmise efektiivsus suhteliselt madal.
Soft RAID on operatsioonisüsteemi poolt teostatud, seega ei saa süsteemi asukohta olevat partitsiooni kasutada RAID-i loogilise liikme kettana ning soft RAID ei saa kaitsta süsteemiketast D. Mõne operatsioonisüsteemi puhul salvestatakse RAID-konfiguratsiooni info süsteemiinformatsiooni, mitte eraldi failina kettal. Nii kaob RAID-info ootamatu krahhi korral ja vajab uuesti paigaldamist. Lisaks ei toeta ketta rikete taluvuse tehnoloogia täielikult veebis asendamist, kuumvahetust ega kuumvahetust ning kas see suudab toetada vale ketta kuuma vahetust, sõltub operatsioonisüsteemi rakendusest.
Hard RAID
Hard RAID-il on oma RAID juhtimisprotsessor ja I/O töötlemiskiibid ning isegi massiivipuhverdamine, mis on CPU kasutuse ja üldise jõudluse poolest parim kolmest rakendustüübist, kuid samas kõrgeima rakenduskuluga. Hard RAID toetab tavaliselt hot-swap tehnoloogiat, mis asendab riknenud kettad süsteemi töötamise ajal.
Hard RAID koosneb RAID-kaardist ja RAID-kiibist, mis on integreeritud emaplaadile, ning serveriplatvormid kasutavad sageli RAID-kaarte. RAID-kaart koosneb neljast osast: RAID tuumatöötluskiibist (RAID-kaardi protsessor), pordist, vahemälust ja akust. Nende hulgas viitavad pordid RAID-kaartide poolt toetatud kettaliideste tüüpidele, nagu IDE/ATA, SCSI, SATA, SAS, FC ja teised liidesed.
Segatud kõva ja pehme RAID
Soft RAID ei ole väga hea ega kaitse süsteemipartitsioone, muutes selle rakendamise lauaarvutitele keeruliseks. Hard RAID on väga kallis ja erinevad RAD-id on üksteisest sõltumatud ega ühilduvad. Seetõttu kasutavad inimesed RAID rakendamiseks tarkvara ja riistvara kombinatsiooni, et saavutada kompromiss jõudluse ja kulu vahel, st kõrge kuluga jõudlus.
Kuigi see RAID kasutab töötlemisjuhtimiskiipi, on kiip kulude kokkuhoiuks sageli odavam ja nõrgem protsessorivõimsusega ning enamik RAID-i ülesannete töötlemisest toimub endiselt CPU poolt püsivara draiverite kaudu.
6. RAID-i rakenduse valik
RAID-taseme valikul on kolm peamist tegurit: andmete kättesaadavus, I/O jõudlus ja hind. Kui saadavus pole vajalik, vali RAID0 kõrge jõudluse jaoks. Kui saadavus ja jõudlus on olulised ning hind pole peamine tegur, vali RAID1 ketaste arvu põhjal. Kui saadavus, hind ja jõudlus on võrdselt olulised, vali RAID3 või RAID5 üldise andmeedastuse ja ketaste arvu põhjal. Praktilistes rakendustes tuleks sobiv RAID-tase valida kasutaja andmerakenduse omaduste ja spetsiifiliste tingimuste põhjal, arvestades kättesaadavust, jõudlust ja kulusid.
|