1. RAID-yleiskatsaus
Vuonna 1988 Kalifornian yliopisto, Berkeley, ehdotti RAID-konseptia (RedundantArrayofInexpensiveDisks), ja levyjen hinnan laskiessa RAIDista tuli (RedundantArrayofIndependentDisks), mutta sisältö ei muuttunut. SNIA, Berkeley ja muut organisaatiot ovat asettaneet RAID0~RAID6:n seitsemän tasoa standarditasoiksi, ja standardi RAID voidaan yhdistää muihin RAID-tasoihin, ja käytetyimmät tasot ovat RAID0, RAID1, RAID3, RAID5, RAID6 ja RAID10. Jokainen RAID-taso edustaa toteutusmenetelmää ja teknologiaa, eikä tasojen välillä ole eroa. Käytännön sovelluksissa sopiva RAID-taso ja erityiset toteutusmenetelmät tulisi valita käyttäjän datasovelluksen ominaisuuksien perusteella, ottaen huomioon saatavuus, suorituskyky ja kustannukset.
Toteutuksen näkökulmasta RAID jaetaan pääasiassa kolmeen tyyppiin: soft RAID, hard RAID ja hybridi-RAID. Kaikki soft RAIDin toiminnot hoitavat käyttöjärjestelmä ja prosessori, mikä on luonnollisesti vähiten tehokas. Hard RAID on varustettu erikoistuneilla RAID-ohjaus-/prosessointipiireillä sekä I/O-prosessointipiireillä ja taulukon puskureilla, jotka eivät vie prosessorin resursseja mutta ovat kalliita. Hybridi-RAIDissa on RAID-ohjaus- ja käsittelypiirit, mutta siitä puuttuvat I/O-prosessointipiirit, jotka vaativat suorittimen ja ajureita, ja suorituskyky sekä kustannukset ovat pehmeän ja kovan RAID:n välillä.
2. Perusperiaatteet
RAID on levyalijärjestelmä, joka koostuu useista itsenäisistä, suorituskykyisistä levyasemista, tarjoten näin korkeampaa tallennustehoa ja datan redundanssiteknologiaa kuin yksittäinen levy. RAID on monilevyn hallintateknologian luokka, joka tarjoaa korkean suorituskyvyn tallennusta ja korkeaa datan luotettavuutta kohtuulliseen hintaan isäntäympäristössä. RAIDin kaksi keskeistä tavoitetta ovat datan luotettavuuden ja I/O-suorituskyvyn parantaminen. Levyryhmässä data jakautuu useille levyille, mutta tietokonejärjestelmässä se on kuin yksi levy. Redundanssi saavutetaan kirjoittamalla sama data useille levyille samanaikaisesti (tyypillisesti peilauksella) tai kirjoittamalla laskettuja tarkistustietoja taulukkoon, varmistaen, ettei datan menetys synny yhden levyn vikaantuessa.
RAIDissa on kolme pääasiallista käsitettä ja tekniikkaa: peilaus, dataStripping ja datapariteetti:
Peilaus, joka replikoi dataa useille levyille, parantaa luotettavuutta toisaalta ja parantaa lukukykyä lukemalla dataa kahdesta tai useammasta replikasta samanaikaisesti. Ilmeisesti kuvan kirjoituskyky on hieman heikompi, ja datan kirjoittaminen useille levyille vie enemmän aikaa. Data striping, jossa datasirpaleet ovat useilla eri levyillä ja useita datashardseja yhdessä muodostavat täydellisen datakopion, joka eroaa useista peilauksista, ja sitä käytetään usein suorituskyvyn kannalta. Datanauhoilla on suurempi samanaikaisuustarkkuus, ja kun dataa käytetään, se voi lukea ja kirjoittaa dataa eri levyille samanaikaisesti, mikä parantaa merkittävästi I/O-suorituskykyä. Datan varmennus, jossa käytetään redundanttia dataa virheiden havaitsemiseen ja korjaamiseen, redundantti data lasketaan yleensä Hemingwayn koodilla, XOR-toiminnolla ja muilla algoritmeilla. Varmennustoiminto voi merkittävästi parantaa levyryhmien luotettavuutta, ryöstöjä ja vikansietokykyä. Datan validointi vaatii kuitenkin datan lukemista useista lähteistä, laskemista ja vertailua, mikä voi vaikuttaa järjestelmän suorituskykyyn. Eri RAID-luokissa käytetään yhtä tai useampaa näistä kolmesta teknologiasta saavuttaakseen erilaisen datan luotettavuuden, saatavuuden ja I/O-suorituskyvyn. Mitä tulee siihen, mitä RAIDia suunnitellaan (tai vaikka uuden luokan tai tyyppi) tai mitä RAID-muotoa käyttää, on tarpeen tehdä kohtuullinen valinta syvällisen järjestelmän tarpeiden ymmärryksen perusteella sekä arvioida kattavasti luotettavuus, suorituskyky ja kustannukset kompromissin tekemiseksi.
Yleisesti ottaen RAIDin tärkeimmät edut ovat: suuri kapasiteetti, korkea suorituskyky, luotettavuus ja hallittavuus.
3. RAID-luokitus
JBOD (JustaBunchOfDisks) ei ole tavallinen RAID-taso, vaan sitä käytetään usein edustamaan kokoelmaa levyjä, joilla ei ole ohjausohjelmistoa koordinoituun ohjaukseen. JBOD yhdistää useita fyysisiä levyjä sarjaan tarjoten suuren loogisen levyn. Tallennusteho on täsmälleen sama kuin yhdellä levyllä, eikä se tarjoa tietoturvaa. Käytettävissä oleva tallennuskapasiteetti on yhtä suuri kuin kaikkien jäsenlevyjen tallennustilan summa.
RAID0, jota kutsutaan raidoittamiseksi, on yksinkertainen, tarkistamaton data striping -teknologia. Suorituskyky on korkein kaikista RAID-tasoista. Minkäänlaisia irtisanomiskäytäntöjä ei ole saatavilla. 100 % tallennustilan hyödyntäminen.
RAID1:tä kutsutaan peilaukseksi, ja se kirjoittaa dataa sekä työlevylle että peilatulle levylle täysin johdonmukaisesti, ja sen levytila on 50 %. Suorituskyky kärsii, kun dataa kirjoitetaan, mutta dataa ei lueta. Se tarjoaa parhaan tietoturvan, sillä kun työlevy hajoaa, järjestelmä lukee automaattisesti tiedot peilatulta levyltä, mikä ei vaikuta käyttäjän työhön.
RAID2:n nimi on Heming Code Disk Array, ja sen suunnitteluidea on käyttää Heming-koodia datan varmennuksen redundanssin saavuttamiseksi. Mitä suurempi datan leveys, sitä enemmän tallennustilaa käytetään, mutta sitä enemmän levyjä tarvitset. Se pystyy korjaamaan virheitä, mutta Hemingcoden datan redundanssiylikuormitus on liian suuri ja datan rekonstruointi vie paljon aikaa, joten RAID2:ta käytetään käytännössä harvoin.
RAID3:ta kutsutaan omistettuna pariteettinauhaksi, joka käyttää omistettua levyä tarkistuslevynä ja muita levyjä datalevynä, ja data tallennetaan ristiintallennettuna jokaiselle datalevylle bitteinä ja tavuina. RAID3 vaatii vähintään kolme levyä.
RAID4 ja RAID3 toimivat pitkälti samalla periaatteella. Tarjoaa erittäin hyvän lukusuorituskyvyn, mutta heikon kirjoituskyvyn. Ja kun jäsenlevyjen määrä kasvaa, tarkistussummalevyn järjestelmän pullonkaula korostuu entisestään. Se on harvinaista todellisissa sovelluksissa, ja valtavirran tallennustuotteet käyttävät harvoin RAID4-suojausta.
RAID5:tä kutsutaan hajautetuksi pariteetin tarkistussummanauhaksi, joka pitäisi olla tällä hetkellä yleisin RAID-taso, ja periaate on samankaltainen kuin RAID4:ssä, mutta RAID4:ssä tarkistuslevyn suorituskyvyssä ei ole pullonkaulaa samanaikaisissa kirjoitusoperaatioissa.
RAID6, jota kutsutaan kaksoispariteettinauhaksi, esittelee kaksoistarkistuksen käsitteen ratkaistakseen ongelman datan eheydestä, kun kaksi levyä hajoaa samanaikaisesti, mitä muut RAID-luokat eivät pysty ratkaisemaan. Kuitenkin se maksaa paljon enemmän kuin RAID5, sen kirjoitussuorituskyky on heikko ja se on hyvin monimutkainen suunnitella ja toteuttaa. Siksi RAID6:ta käytetään käytännössä harvoin, ja se on yleensä taloudellinen vaihtoehto RAID10-ratkaisuille.
Tavallisilla RAID-tasoilla on vahvuutensa ja heikkoutensa. Yhdistä useita RAID-tasoja saadaksesi toisiaan täydentäviä etuja ja korvataksesi toistensa puutteet, jotta saavutetaan RAID-järjestelmä, jolla on parempi suorituskyky, tietoturva ja muut indikaattorit. Tietenkin yhdistelmätason toteutuskustannukset ovat yleensä hyvin kalliita ja sitä käytetään vain muutamissa erityistapauksissa. Itse asiassa vain RAID01 ja RAID10 ovat laajasti käytössä.
RAID01 raidataan ensin ja sitten peilataan, mikä käytännössä kuvaa fyysisestä levystä; RAID10:n tarkoitus on ensin kuvata ja sitten raita, eli kuvata virtuaalilevy. Saman kokoonpanon alla RAID01:llä on yleensä parempi viansietokyky kuin RAID10:llä. RAID01 yhdistää RAID0:n ja RAID1:n edut, ja levyn kokonaiskäyttö on vain 50 %.
4. Valtavirran RAID-tasojen vertailu
RAID-kokoonpano
Taso/Kuvaus: | Vikasieto | ansio | puute | RAID 0
Kartoita dataa levyjen välillä luodaksesi suuria virtuaalilevyjä. Koska jokainen fyysinen levy käsittelee vain osan pyynnöstä, se voi tarjota paremman suorituskyvyn. Jos kuitenkin yksi levy hajoaa, virtuaalilevy (VD) menettää pääsyn ja data katoaa pysyvästi. | ei | Parempi suorituskyky Lisätallennustila | Sitä ei saa käyttää kriittisen datan käsittelyyn | RAID 1
Peilaa dataa, tallenna datan redundanssi kahdelle levylle. Jos toinen levy hajoaa, toinen levy ottaa pääaseman roolin. | Levyvirhe Yksittäisen levyn vika | Korkea lukusuorituskyky Palautu nopeasti aseman vian jälkeen Datan redundanssi | Levyn ylikuormitus on suuri Rajoitettu kapasiteetti | RAID 5
Kartoita data levyjen välillä ja tallenna kunkin datakaistan pariteettibitit eri levyille VD:ssä. Pariteettibitti sisältää tietoa, jota voidaan käyttää rekonstruoimaan dataa vialliselta levyltä toiselta levyltä yksittäisen levyn vian sattuessa. | Levyvirhe Yksittäisen levyn vika | Voimansiirron tehokas käyttö Korkea lukusuorituskyky Keskitasoinen tai korkea kirjoituskyky | Kohtalainen levyn vikaantuminen Pariteetin uudelleenlaskennan vuoksi rekonstruointiaika on pidempi | RAID 6
Kartoita data levyjen välillä ja tallenna kunkin datakaistan pariteettibitit eri levyille VD:ssä. Toisin kuin RAID 5, RAID 6 suorittaa kaksi pariteettilaskelmaa (P ja Q), mikä mahdollistaa kaksoislevyn vikaantumisen. | Datan redundanssi Korkea lukusuorituskyky | Levyvirhe Kaksoislevyn vika | Kirjoitussuorituskyky heikkenee kahden pariteettilaskennan vuoksi Koska se vastaa kahden levyn käyttöä pariteettina, siihen liittyy lisäkustannus | RAID 10
Peilisarjan nauhat. Levyn ylikuormitus on suuri, mutta se on erinomainen ratkaisu korkeaan suorituskykyyn, redundanssiin ja nopeaan palautukseen levyn vian sattuessa. | Levyvirhe Yksi levyn vika per kuvasarja | Korkea lukusuorituskyky RAID-ryhmiä, joissa on enintään 192 asemaa, voidaan tukea | Korkeimmat kustannukset | RAID 50
RAID 5 -nauha setissä. Vähentämällä levyn lukemista pariteettilaskelmaa kohden suorituskykyä voidaan parantaa RAID 5:llä kokoonpanosta riippuen. | Levyvirhe Yksi levyn vika per väli | Korkea lukusuorituskyky Keskitasoinen tai korkea kirjoituskyky RAID-ryhmiä, joissa on enintään 192 asemaa, voidaan tukea | Kohtalainen levyn vikaantuminen Pariteetin uudelleenlaskennan vuoksi rekonstruointiaika on pidempi | RAID 60
RAID 6 -kuori lavastuksessa. Vähemmillä levyn lukumäärillä per pariteettilaskenta suorituskykyä voidaan parantaa RAID 6:lla kokoonpanosta riippuen. | Levyvirhe Kaksi levyä vikaantuu per span | Korkea lukusuorituskyky RAID-ryhmiä, joissa on enintään 192 asemaa, voidaan tukea | Kirjoitussuorituskyky heikkenee kahden pariteettilaskennan vuoksi Koska se vastaa kahden levyn käyttöä pariteettina, siihen liittyy lisäkustannus |
5. RAID-ohjelmistojen ja laitteistojen erot
Soft RAID
Soft RAIDissa ei ole erillistä ohjauspiiriä eikä I/O-piiriä, ja käyttöjärjestelmä sekä suoritin toteuttavat kaikki RAID-toiminnot. Nykyaikaiset käyttöjärjestelmät tarjoavat käytännössä pehmeän RAID-tuen, tarjoten abstraktion fyysisten ja loogisten levyjen välille lisäämällä ohjelmistokerroksen levynohjaimen ajureiden päälle. Tällä hetkellä yleisimmät käyttöjärjestelmän tukemat RAID-luokitukset ovat RAID0, RAID1, RAID10, RAID01 ja RAID5. Esimerkiksi Windows Server tukee RAID0:aa, RAID1:tä ja RAID5:ttä, Linux tukee RAID0:aa, RAID1:tä, RAID4:ää, RAID5:tä, RAID6:ta jne., ja Mac OS X Server, FreeBSD, NetBSD, OpenBSD, Solaris ja muut käyttöjärjestelmät tukevat myös vastaavia RAID-tasoja.
Soft RAIDin konfiguraation hallinta ja tietojen palautus ovat suhteellisen yksinkertaisia, mutta kaikki RAID-tehtävät suoritetaan täysin suorittimen toimesta, kuten tarkistusarvojen laskeminen, joten suoritustehokkuus on suhteellisen alhainen.
Soft RAID toteutetaan käyttöjärjestelmässä, joten osio, jossa järjestelmä sijaitsee, ei voi toimia RAIDin loogisena jäsenlevynä, eikä soft RAID voi suojata järjestelmälevyä D. Joissain käyttöjärjestelmissä RAID-konfiguraatiotiedot tallennetaan järjestelmätietoihin erillisenä tiedostona levyllä. Näin, kun järjestelmä kaatuu yllättäen ja se täytyy asentaa uudelleen, RAID-tiedot katoavat. Lisäksi levyn vikansietokykytekniikka ei täysin tue online-vaihtoa, hot swapia tai hot swappingia, ja se, pystyykö se tukemaan väärän levyn hot swapia, riippuu käyttöjärjestelmän toteutuksesta.
Hard RAID
Hard RAIDilla on omat RAID-ohjausprosessointinsa ja I/O-prosessointipiirit sekä jopa taulukon puskurointi, joka on paras kolmesta toteutustyypistä suorittimen käytön ja suorituskyvyn osalta, mutta sillä on myös korkein toteutuskustannus. Hard RAID tukee tyypillisesti hotswap-tekniikkaa, joka korvaa vialliset levyt järjestelmän ollessa käynnissä.
Hard RAID koostuu RAID-kortista ja RAID-piiristä, jotka on integroitu emolevylle, ja palvelinalustat käyttävät usein RAID-kortteja. RAID-kortti koostuu neljästä osasta: RAID-ydinprosessoripiiristä (RAID-kortin suorittimesta), portista, välimuistista ja akusta. Näistä portit viittaavat RAID-korttien tukemiin levyliitäntöihin, kuten IDE/ATA, SCSI, SATA, SAS, FC ja muut liitännät.
Sekoitettu kova ja pehmeä RAID
Soft RAID ei ole kovin hyvä eikä suojaa järjestelmän osioita, mikä tekee sen soveltamisesta työpöytäjärjestelmiin vaikeaa. Hard RAID on hyvin kallista, ja eri RAD:t ovat toisistaan riippumattomia eivätkä yhteensopivia. Siksi ihmiset ottavat käyttöön yhdistelmän ohjelmistoa ja laitteistoa RAID:n toteuttamiseen, jotta saavutetaan kompromissi suorituskyvyn ja kustannusten välillä, eli korkea kustannus.
Vaikka tämä RAID käyttää prosessointipiiriä, kustannusten säästämiseksi siru on usein halvempi ja heikompi laskentateho, ja suurin osa RAIDin tehtävien käsittelystä hoidetaan edelleen suorittimen toimesta laiteohjelmistoajureiden kautta.
6. RAID-hakemuksen valinta
RAID-tason valinnassa on kolme päätekijää: datan saatavuus, I/O-suorituskyky ja kustannukset. Jos saatavuutta ei vaadita, valitse RAID0 korkean suorituskyvyn vuoksi. Jos saatavuus ja suorituskyky ovat tärkeitä eikä kustannukset ole merkittävä tekijä, valitse RAID1 levyn määrän perusteella. Jos saatavuus, hinta ja suorituskyky ovat yhtä tärkeitä, valitse RAID3 tai RAID5 yleisen tiedonsiirron ja levyjen määrän perusteella. Käytännön sovelluksissa sopiva RAID-taso tulisi valita käyttäjän datasovelluksen ominaisuuksien ja erityisten olosuhteiden perusteella, huomioiden saatavuuden, suorituskyvyn ja kustannukset.
|