Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Greške
  • Što su RAID polja i zašto su potrebna? RAID polje

Što su RAID polja i zašto su potrebna? RAID polje

Pogledajmo sada koje vrste postoje i po čemu se razlikuju.

Kalifornijsko sveučilište u Berkeleyju predstavilo je sljedeće razine RAID specifikacije, koje su usvojene kao de facto standard:

  • RAID 0- diskovno polje visokih performansi s stripingom, bez tolerancije na pogreške;
  • - zrcalno diskovno polje;
  • RAID 2 rezervirano za nizove koji koriste Hammingov kod;
  • RAID 3 i 4- diskovni nizovi s stripingom i namjenskim paritetnim diskom;
  • - diskovno polje s stripingom i "nedodijeljenim paritetnim diskom";
  • - isprepleteno diskovno polje koje koristi dva kontrolna zbroja izračunata na dva neovisna načina;
  • - RAID 0 niz izgrađen od RAID 1 nizova;
  • - RAID 0 niz izgrađen od RAID 5 nizova;
  • - RAID 0 niz izgrađen od RAID 6 nizova.

Hardverski RAID kontroler može istovremeno podržavati nekoliko različitih RAID nizova, čiji ukupni broj tvrdih diskova ne premašuje broj konektora za njih. U isto vrijeme, kontroler ugrađen u matičnu ploču ima samo dva stanja u postavkama BIOS-a (omogućeno ili onemogućeno), tako da novi tvrdi disk spojen na neiskorišteni konektor kontrolera s aktiviranim RAID načinom rada sustav može zanemariti dok se ne pridruži kao drugi RAID - JBOD (spanned) niz koji se sastoji od jednog diska.

RAID 0 (pruganje - "izmjena")

Način rada koji postiže maksimalne performanse. Podaci su ravnomjerno raspoređeni po diskovima niza; diskovi su spojeni u jedan, koji se može podijeliti na više. Distribuirane operacije čitanja i pisanja mogu značajno povećati brzinu rada, budući da nekoliko diskova istovremeno čita/piše svoj dio podataka. Korisnik ima pristup cijelom volumenu diskova, ali to smanjuje pouzdanost pohrane podataka, jer ako jedan od diskova pokvari, niz se obično uništi i oporavak podataka je gotovo nemoguć. Opseg primjene - aplikacije koje zahtijevaju velike brzine razmjene s diskom, npr. video snimanje, video editiranje. Preporuča se za korištenje s visoko pouzdanim pogonima.

(zrcaljenje - "zrcaljenje")

niz od dva diska koji su potpune kopije jedan drugog. Ne smije se brkati s nizovima RAID 1+0, RAID 0+1 i RAID 10, koji koriste više od dva pogona i složenije mehanizme zrcaljenja.

Pruža prihvatljivu brzinu pisanja i povećanje brzine čitanja prilikom paraleliziranja upita.

Ima visoku pouzdanost - radi sve dok radi barem jedan disk u nizu. Vjerojatnost kvara dva diska odjednom jednaka je umnošku vjerojatnosti kvara svakog diska, tj. znatno manja od vjerojatnosti kvara pojedinog diska. U praksi, ako jedan od diskova pokvari, potrebno je odmah poduzeti radnje za vraćanje redundancije. Da biste to učinili, preporučuje se korištenje vrućih rezervnih diskova s ​​bilo kojom razinom RAID-a (osim nule).

Varijanta distribucije podataka po diskovima, slična RAID10, koja omogućuje korištenje neparnog broja diskova (minimalni broj je 3)

RAID 2, 3, 4

razne opcije distribuirane pohrane podataka s diskovima dodijeljenim za paritetne kodove i različitim veličinama blokova. Trenutno se praktički ne koriste zbog niskih performansi i potrebe za izdvajanjem velikog kapaciteta diska za pohranu ECC i/ili paritetnih kodova.

Glavni nedostatak RAID razina 2 do 4 je nemogućnost izvođenja paralelnih operacija pisanja, budući da se za pohranjivanje informacija o paritetu koristi zasebni kontrolni disk. RAID 5 nema ovaj nedostatak. Blokovi podataka i kontrolni zbrojevi ciklički se zapisuju na sve diskove niza; nema asimetrije u konfiguraciji diska. Kontrolni zbrojevi znače rezultat operacije XOR (isključivo ili). Xor ima značajku koja omogućuje zamjenu bilo kojeg operanda rezultatom i primjenom algoritma xor, dobiti operand koji nedostaje kao rezultat. Na primjer: a xili b = c(Gdje a, b, c- tri diska raid polja), u slučaju a odbija, možemo ga dobiti tako da ga postavimo na njegovo mjesto c a nakon trošenja xor između c I b: c x ili b = a. Ovo se primjenjuje bez obzira na broj operanda: a xor b xor c xor d = e. Ako odbije c Zatim e zauzima svoje mjesto i drži xor kao rezultat dobivamo c: a xili b xili e xili d = c. Ova metoda u biti osigurava toleranciju greške verzije 5. Za pohranjivanje rezultata xor-a potreban je samo 1 disk čija je veličina jednaka veličini bilo kojeg drugog diska u napadu.

Prednosti

RAID5 je postao široko rasprostranjen, prvenstveno zbog svoje isplativosti. Kapacitet RAID5 diskovnog niza izračunava se pomoću formule (n-1)*hddsize, gdje je n broj diskova u nizu, a hddsize veličina najmanjeg diska. Na primjer, za niz od četiri diska od 80 gigabajta, ukupni volumen će biti (4 - 1) * 80 = 240 gigabajta. Zapisivanje informacija na RAID 5 volumen zahtijeva dodatne resurse i performanse se smanjuju, budući da su potrebni dodatni izračuni i operacije pisanja, ali kod čitanja (u usporedbi s zasebnim tvrdim diskom), postoji dobitak jer tokovi podataka s nekoliko diskova u nizu mogu biti obrađeni paralelno.

Mane

Performanse RAID 5 su osjetno niže, posebno na operacijama kao što je Random Write, u kojoj performanse padaju za 10-25% od performansi RAID 0 (ili RAID 10), budući da zahtijeva više diskovnih operacija (svaka operacija piše, s s izuzetkom takozvanog full-stripe pisanja, poslužitelj se na RAID kontroleru zamjenjuje s četiri - dvije operacije čitanja i dvije operacije pisanja). Nedostaci RAID 5 pojavljuju se kada jedan od diskova ne uspije - cijeli volumen prelazi u kritični način rada (degradira), sve operacije pisanja i čitanja popraćene su dodatnim manipulacijama, a performanse naglo padaju. U tom se slučaju razina pouzdanosti svodi na pouzdanost RAID-0 s pripadajućim brojem diskova (odnosno n puta nižu od pouzdanosti jednog diska). Ako, prije nego što je niz potpuno vraćen, dođe do kvara ili se pojavi nepopravljiva pogreška čitanja na barem još jednom disku, tada je niz uništen i podaci na njemu se ne mogu vratiti uobičajenim metodama. Također treba uzeti u obzir da proces RAID rekonstrukcije (oporavak RAID podataka kroz redundantnost) nakon kvara diska uzrokuje intenzivno opterećenje čitanja s diskova više sati neprekidno, što može uzrokovati kvar bilo kojeg od preostalih diskova u najmanje zaštićeno razdoblje rada RAID-a, kao i identificirati prethodno nedetektirane greške čitanja u hladnim podatkovnim nizovima (podaci kojima se ne pristupa tijekom normalnog rada niza, arhivirani i neaktivni podaci), što povećava rizik od kvara tijekom oporavka podataka.

Najmanji broj korištenih diskova je tri.

RAID 6 je sličan RAID 5, ali ima veći stupanj pouzdanosti - kapacitet 2 diska je dodijeljen za kontrolne zbrojeve, 2 iznosa se izračunavaju pomoću različitih algoritama. Zahtijeva snažniji RAID kontroler. Osigurava rad nakon istovremenog kvara dvaju diskova - zaštita od višestrukih kvarova. Za organizaciju niza potrebna su najmanje 4 diska. Tipično, korištenje RAID-6 uzrokuje oko 10-15% pad u performansama grupe diskova u odnosu na RAID 5, što je uzrokovano velikom količinom obrade za kontroler (potreba za izračunavanjem druge kontrolne sume, kao i čitanje i ponovno pisanje više blokova diska prilikom pisanja svakog bloka).

RAID 0+1

RAID 0+1 može značiti dvije opcije:

  • dva RAID 0 su spojena u RAID 1;
  • tri ili više diskova kombiniraju se u niz, a svaki blok podataka zapisuje se na dva diska ovog niza; Dakle, kod ovog pristupa, kao iu “čistom” RAID-u 1, korisni volumen polja je polovica ukupnog volumena svih diskova (ako se radi o diskovima istog kapaciteta).

RAID 10 (1+0)

RAID 10 je zrcalno polje u kojem se podaci uzastopno zapisuju na nekoliko diskova, poput RAID 0. Ova arhitektura je polje tipa RAID 0, čiji su segmenti polja RAID 1 umjesto pojedinačnih diskova. Sukladno tome, polje ovog razina mora sadržavati najmanje 4 diska (i uvijek paran broj). RAID 10 kombinira visoku toleranciju grešaka i performanse.

Tvrdnja da je RAID 10 najpouzdanija opcija za pohranu podataka sasvim je opravdana činjenicom da će polje biti onesposobljeno nakon kvara svih diskova u istom polju. Ako jedan pogon zakaže, vjerojatnost kvara drugog u istom polju je 1/3*100=33%. RAID 0+1 neće uspjeti ako dva pogona zakažu u različitim nizovima. Mogućnost kvara pogona u susjednom nizu je 2/3*100=66%, međutim, budući da se pogon u nizu s već pokvarenim pogonom više ne koristi, vjerojatnost da će sljedeći pogon otkazati cijeli niz je 2/2 *100=100%

niz sličan RAID5, međutim, osim distribuirane pohrane paritetnih kodova, koristi se raspodjela rezervnih područja - zapravo, koristi se tvrdi disk, koji se može dodati RAID5 polju kao rezervni (takvi nizovi se nazivaju 5+ ili 5+rezerva). U RAID 5 polju rezervni disk miruje sve dok jedan od glavnih tvrdih diskova ne pokvari, dok se u RAID 5EE polju taj disk cijelo vrijeme dijeli s ostatkom HDD-ova, što pozitivno utječe na performanse niz. Na primjer, niz RAID5EE od 5 HDD-ova moći će izvesti 25% više I/O operacija u sekundi od niza RAID5 od 4 primarna i jednog rezervnog HDD-a. Minimalan broj diskova za takvo polje je 4.

kombiniranje dva (ili više, ali ovo se izuzetno rijetko koristi) RAID5 polja u traku, tj. kombinacija RAID5 i RAID0, čime se djelomično ispravlja glavni nedostatak RAID5 - mala brzina zapisivanja podataka zbog paralelnog korištenja više takvih nizova. Ukupni kapacitet polja je smanjen za kapacitet dva diska, ali za razliku od RAID6, takav niz može tolerirati kvar samo jednog diska bez gubitka podataka, a minimalno potreban broj diskova za stvaranje RAID50 polja je 6. Uz RAID10, ovo je najpreporučljivija razina RAID-a za korištenje u aplikacijama gdje su potrebne visoke performanse u kombinaciji s prihvatljivom pouzdanošću.

kombiniranje dva RAID6 polja u traku. Brzina pisanja je približno udvostručena u usporedbi s brzinom pisanja u RAID6. Minimalan broj diskova za stvaranje takvog niza je 8. Informacije se ne gube ako dva diska iz svakog RAID 6 niza pokvare

RAID- skraćenica koja označava Redundant Array of Independent Disks - "niz nezavisnih diskova siguran od kvara" (ranije se umjesto riječi Independent ponekad koristila riječ Inexpensive). Koncept strukture koja se sastoji od višestrukih diskova spojenih u grupu koja pruža toleranciju na pogreške rođen je 1987. godine u temeljnom radu Pattersona, Gibsona i Katza.

Izvorne vrste RAID-a

RAID-0
Ako vjerujemo da je RAID "tolerancija na pogreške" (Redundant...), onda je RAID-0 "nulta tolerancija na pogreške", odsutnost iste. RAID-0 struktura je "prugasti niz diskova." Blokovi podataka se redom zapisuju jedan po jedan na sve diskove uključene u polje. Ovo povećava performanse, idealno onoliko puta koliko je diskova uključeno u niz, budući da je snimanje paralelno između nekoliko uređaja.
Međutim, pouzdanost se smanjuje za isti iznos, budući da će podaci biti izgubljeni ako bilo koji od diskova uključenih u polje pokvari.

RAID-1
Ovo je takozvano "ogledalo". Operacije pisanja izvode se na dva diska paralelno. Pouzdanost takvog niza veća je od pouzdanosti jednog diska, ali se performanse malo povećavaju (ili se uopće ne povećavaju).

RAID-10
Pokušaj kombiniranja prednosti dviju vrsta RAID-a i lišavanje njihovih inherentnih nedostataka. Ako uzmemo RAID-0 grupu s povećanom izvedbom i damo svakoj od njih (ili cijelom nizu) "mirror" diskove kako bismo zaštitili podatke od gubitka uslijed kvara, dobit ćemo polje otporno na pogreške s povećanim performansama kao rezultat korištenja stripinga.
Danas, "u divljini" ovo je jedan od najpopularnijih tipova RAID-a.
Nedostaci - sve navedene prednosti plaćamo polovicom ukupnog kapaciteta diskova uključenih u polje.

RAID-2
Ostala je potpuno teoretska opcija. Ovo je polje u kojem su podaci kodirani Hammingovim kodom otpornim na pogreške, koji vam omogućuje vraćanje pojedinačnih neispravnih fragmenata zbog svoje redundancije. Inače, razne modifikacije Hammingovog koda, kao i njegovi nasljednici, koriste se u procesu čitanja podataka s magnetskih glava tvrdih diskova i optičkih CD/DVD čitača.

RAID-3 i 4
“Kreativni razvoj” ideje zaštite podataka redundantnim kodom. Hammingov kod je neophodan u slučaju "konstantno nepouzdanog" toka zasićenog kontinuiranim slabo predvidivim pogreškama, kao što je, na primjer, šumni zračni komunikacijski kanal. Međutim, u slučaju tvrdih diskova, glavni problem nisu pogreške čitanja (vjerujemo da tvrdi diskovi izlaze podatke u obliku u kojem smo ih zapisali, ako radi), već kvar cijelog diska.
Za takve uvjete možete kombinirati striping shemu (RAID-0) i, kako biste se zaštitili od kvara jednog od diskova, dopuniti snimljene informacije redundancijom, što će vam omogućiti vraćanje podataka ako se neki dio izgubi, dodjeljivanjem dodatnog diska za to.
Ako izgubimo neki od podatkovnih diskova, podatke pohranjene na njemu možemo vratiti pomoću jednostavnih matematičkih operacija nad redundantnim podacima; ako disk s redundantnim podacima otkaže, još uvijek imamo očitane podatke s diskovnog polja tipa RAID-0.
Opcije RAID-3 i RAID-4 se razlikuju po tome što se u prvom slučaju isprepliću pojedinačni bajtovi, au drugom slučaju se isprepliću grupe bajtova, “blokovi”.
Glavni nedostatak ovih dviju shema je izuzetno niska brzina pisanja u polje, budući da svaka operacija pisanja uzrokuje ažuriranje "kontrolnog zbroja", bloka redundantnosti za zapisane informacije. Očito je da je, unatoč prugastoj strukturi, izvedba RAID-3 i RAID-4 polja ograničena izvedbom jednog diska, onog na kojem se nalazi "redundantni blok".

RAID-5
Pokušaj zaobilaženja ovog ograničenja doveo je do sljedeće vrste RAID-a, koja je uz RAID-10 trenutno najrasprostranjenija. Ako pisanje "redundantnog bloka" na disk ograničava cijeli niz, također ga rasporedimo po diskovima niza, napravimo nedodijeljeni disk za ove informacije, čime će se operacije ažuriranja redundantnosti rasporediti na sve diskove niza. Odnosno, kao u slučaju RAID-3(4), uzimamo diskove za pohranjivanje N informacija u količini od N + 1 diska, ali za razliku od tipa 3 i 4, ovaj disk se također koristi za pohranjivanje podataka pomiješanih s redundantnim podacima , kao i ostali N.
Mane? Što bi bilo bez njih? Problem sa sporim snimanjem je djelomično riješen, ali još uvijek ne u potpunosti. Međutim, pisanje u polje RAID-5 je sporije od pisanja u polje RAID-10. Ali RAID-5 je "isplativiji". Za RAID-10 toleranciju na pogreške plaćamo s točno polovicom diskova, au slučaju RAID-5 to je samo jedan disk.

No, brzina pisanja opada proporcionalno porastu broja diskova u nizu (za razliku od RAID-0, gdje se samo povećava). To je zbog činjenice da prilikom pisanja podatkovnog bloka niz mora ponovno izračunati redundantni blok, za što čita preostale "horizontalne" blokove i ponovno izračunava redundantni blok u skladu s njihovim podacima. To jest, za jednu operaciju pisanja, niz od 8 diskova (7 podatkovnih diskova + 1 dodatni) izvršit će 6 operacija čitanja u predmemoriju (preostali blokovi podataka sa svih diskova za izračun redundantnog bloka), izračunajte redundantni blok iz ovih blokova i napravite 2 pisanja (pisanje bloka snimljenih podataka i prepisivanje bloka redundantnosti). U modernim sustavima problem je djelomično ublažen predmemoriranjem, ali ipak produljenje RAID-5 grupe, iako uzrokuje proporcionalno povećanje brzine čitanja, uzrokuje i odgovarajuće smanjenje brzine pisanja.
Situacija sa smanjenim performansama prilikom pisanja na RAID-5 ponekad dovodi do zanimljivog ekstremizma, na primjer, http://www.baarf.com/ ;)

Međutim, budući da je RAID-5 najučinkovitija RAID struktura u smislu potrošnje diska po "linearnom megabajtu", naširoko se koristi tamo gdje smanjenje brzine pisanja nije odlučujući parametar, na primjer, za dugoročnu pohranu podataka ili podaci koji se primarno čitaju.
Zasebno treba spomenuti da proširenje RAID-5 diskovnog niza dodavanjem dodatnog diska uzrokuje potpuno ponovno izračunavanje cijelog RAID-a, što može trajati satima, au nekim slučajevima i danima, tijekom kojih performanse niza katastrofalno padaju.

RAID-6
Daljnji razvoj ideje RAID-5. Ako izračunamo dodatnu redundanciju prema zakonu različitom od onog koji se koristi u RAID-5, tada možemo održati pristup podacima ako dva diska niza zataje.
Cijena za to je dodatni disk za podatke drugog “redundantnog bloka”. Odnosno, za pohranjivanje podataka koji je jednak volumenu N diskova, morat ćemo uzeti diskove N + 2. "Matematika" izračunavanja redundantnih blokova postaje kompliciranija, što uzrokuje još veće smanjenje brzine pisanja u usporedbi s RAID-5 , ali pouzdanost se povećava. Štoviše, u nekim slučajevima čak premašuje razinu pouzdanosti RAID-10. Lako je vidjeti da RAID-10 također može izdržati kvar dvaju diskova u nizu, međutim, ako ti diskovi pripadaju istom "zrcalu" ili različitim, ali ne dvama zrcalnim diskovima. A vjerojatnost upravo takve situacije ne može se odbaciti.

Daljnji porast broja tipova RAID-a događa se zbog “hibridizacije”, tako se pojavljuje RAID-0+1, koji je postao već spomenuti RAID-10, ili sve vrste himeričnih RAID-51 i tako dalje.
Srećom, ne nalaze se u divljini, obično ostaju "san uma" (dobro, osim RAID-10 koji je već opisan gore).

Sve moderne matične ploče opremljene su integriranim RAID kontrolerom, a vrhunski modeli čak imaju nekoliko integriranih RAID kontrolera. Posebno je pitanje koliko su integrirani RAID kontroleri traženi kod kućnih korisnika. U svakom slučaju, moderna matična ploča pruža korisniku mogućnost stvaranja RAID polja od nekoliko diskova. Međutim, ne zna svaki kućni korisnik kako stvoriti RAID polje, koju razinu polja odabrati i općenito nema pojma o prednostima i nedostacima korištenja RAID polja.
U ovom ćemo članku dati kratke preporuke o stvaranju RAID polja na kućnim računalima i na konkretnom primjeru pokazati kako možete samostalno testirati performanse RAID polja.

Povijest stvaranja

Pojam "RAID niz" prvi put se pojavio 1987. godine, kada su američki istraživači Patterson, Gibson i Katz sa kalifornijskog sveučilišta Berkeley u svom članku "A Case for Redundant Arrays of Inexpensive Discs, RAID" opisali kako na ovaj način možete kombinirati nekoliko jeftine tvrde diskove u jedan logički uređaj tako da se rezultirajući kapacitet i performanse sustava povećavaju, a kvar pojedinačnih diskova ne dovodi do kvara cijelog sustava.

Prošlo je više od 20 godina od objavljivanja ovog članka, ali tehnologija izgradnje RAID polja nije izgubila na važnosti ni danas. Jedina stvar koja se od tada promijenila je dekodiranje akronima RAID. Činjenica je da u početku RAID polja uopće nisu izgrađena na jeftinim diskovima, pa je riječ Inexpensive (jeftino) promijenjena u Independent (neovisno), što je bilo istinitije.

Princip rada

Dakle, RAID je redundantni niz nezavisnih diskova (Redundant Arrays of Independent Discs), čija je zadaća osigurati toleranciju na pogreške i povećati performanse. Otpornost na pogreške postiže se redundancijom. Odnosno, dio kapaciteta diskovnog prostora dodjeljuje se u službene svrhe, postajući nedostupan korisniku.

Povećana izvedba diskovnog podsustava osigurava se istovremenim radom više diskova, te u tom smislu, što je više diskova u nizu (do određene granice), to bolje.

Zajednički rad diskova u nizu može se organizirati pomoću paralelnog ili neovisnog pristupa. Kod paralelnog pristupa prostor na disku je podijeljen u blokove (trake) za snimanje podataka. Slično tome, informacije koje se trebaju zapisati na disk podijeljene su u iste blokove. Prilikom pisanja, pojedinačni blokovi se zapisuju na različite diskove, a više blokova se zapisuje na različite diskove istovremeno, što dovodi do povećanja performansi u operacijama pisanja. Potrebne informacije također se čitaju u zasebnim blokovima istovremeno s nekoliko diskova, što također povećava performanse proporcionalno broju diskova u nizu.

Treba napomenuti da se model paralelnog pristupa implementira samo ako je veličina zahtjeva za upis podataka veća od veličine samog bloka. Inače, paralelno snimanje nekoliko blokova gotovo je nemoguće. Zamislimo situaciju da je veličina pojedinog bloka 8 KB, a veličina zahtjeva za upis podataka 64 KB. U ovom slučaju, izvorne informacije su izrezane u osam blokova od po 8 KB. Ako imate niz od četiri diska, možete pisati četiri bloka, ili 32 KB, odjednom. Očito je da će u razmatranom primjeru brzine pisanja i čitanja biti četiri puta veće nego kada se koristi jedan disk. Ovo vrijedi samo za idealnu situaciju, ali veličina zahtjeva nije uvijek višekratnik veličine bloka i broja diskova u nizu.

Ako je veličina snimljenih podataka manja od veličine bloka, tada se implementira bitno drugačiji model - neovisni pristup. Štoviše, ovaj se model također može koristiti kada je veličina podataka koji se upisuju veća od veličine jednog bloka. Kod neovisnog pristupa svi podaci iz jednog zahtjeva zapisuju se na poseban disk, odnosno situacija je identična kao i rad s jednim diskom. Prednost modela neovisnog pristupa je u tome što će, ako nekoliko zahtjeva za pisanje (čitanje) stigne istovremeno, svi biti izvršeni na zasebnim diskovima neovisno jedan o drugom. Ova situacija je tipična, na primjer, za poslužitelje.

Sukladno različitim vrstama pristupa, postoje različite vrste RAID polja, koje se obično karakteriziraju RAID razinama. Osim po vrsti pristupa, razine RAID-a razlikuju se po načinu na koji prihvaćaju i generiraju suvišne informacije. Suvišne informacije mogu se smjestiti na namjenski disk ili distribuirati među svim diskovima. Postoji mnogo načina za generiranje ovih informacija. Najjednostavniji od njih je potpuna duplikacija (100 posto redundancija) ili zrcaljenje. Osim toga, koriste se kodovi za ispravljanje pogrešaka, kao i izračuni pariteta.

RAID razine

Trenutno postoji nekoliko RAID razina koje se mogu smatrati standardiziranim - to su RAID 0, RAID 1, RAID 2, RAID 3, RAID 4, RAID 5 i RAID 6.

Također se koriste različite kombinacije RAID razina, što vam omogućuje kombiniranje njihovih prednosti. Obično je to kombinacija neke vrste razine otporne na greške i nulte razine koja se koristi za poboljšanje performansi (RAID 1+0, RAID 0+1, RAID 50).

Imajte na umu da svi moderni RAID kontroleri podržavaju funkciju JBOD (Just a Bench Of Disks) koja nije namijenjena stvaranju nizova – ona pruža mogućnost povezivanja pojedinačnih diskova na RAID kontroler.

Treba napomenuti da RAID kontroleri integrirani na matičnim pločama za kućna računala ne podržavaju sve razine RAID-a. RAID kontroleri s dva priključka podržavaju samo razine 0 i 1, dok RAID kontroleri s više priključaka (na primjer, RAID kontroler sa 6 priključaka integriran u južni most ICH9R/ICH10R čipseta) također podržavaju razine 10 i 5.

Osim toga, ako govorimo o matičnim pločama temeljenim na Intelovim čipsetima, oni također implementiraju funkciju Intel Matrix RAID, koja vam omogućuje da istovremeno stvorite RAID matrice nekoliko razina na nekoliko tvrdih diskova, dodjeljujući dio prostora na disku za svaku od njih.

RAID 0

RAID razine 0, strogo govoreći, nije redundantno polje i, sukladno tome, ne pruža pouzdanu pohranu podataka. Ipak, ova se razina aktivno koristi u slučajevima kada je potrebno osigurati visoke performanse diskovnog podsustava. Prilikom stvaranja niza RAID razine 0, informacije se dijele na blokove (ponekad se ti blokovi nazivaju trake), koji se zapisuju na zasebne diskove, odnosno stvara se sustav s paralelnim pristupom (ako, naravno, veličina bloka to dopušta ). Omogućujući simultani I/O s više diskova, RAID 0 pruža najbrže brzine prijenosa podataka i maksimalnu učinkovitost prostora na disku jer nije potreban prostor za pohranu za kontrolne zbrojeve. Implementacija ove razine je vrlo jednostavna. RAID 0 se uglavnom koristi u područjima gdje je potreban brzi prijenos velikih količina podataka.

RAID 1 (zrcalni disk)

RAID Level 1 je niz od dva diska sa 100 posto redundancije. Odnosno, podaci se jednostavno u potpunosti dupliciraju (zrcaljavaju), čime se postiže vrlo visoka razina pouzdanosti (kao i cijene). Imajte na umu da za implementaciju razine 1 nije potrebno prvo particionirati diskove i podatke u blokove. U najjednostavnijem slučaju, dva diska sadrže iste informacije i jedan su logički disk. Ako jedan disk zakaže, njegove funkcije obavlja drugi (što je korisniku apsolutno transparentno). Vraćanje niza izvodi se jednostavnim kopiranjem. Osim toga, ova razina udvostručuje brzinu čitanja informacija, jer se ova operacija može izvoditi istovremeno s dva diska. Ova vrsta sheme pohranjivanja informacija koristi se uglavnom u slučajevima kada je trošak sigurnosti podataka mnogo veći od troška implementacije sustava za pohranu.

RAID 5

RAID 5 je diskovno polje otporno na pogreške s distribuiranom pohranom kontrolne sume. Prilikom snimanja, tok podataka se dijeli na blokove (trake) na razini bajtova i istovremeno zapisuje na sve diskove niza u cikličkom redoslijedu.

Pretpostavimo da niz sadrži n diskova i veličine trake d. Za svaku porciju n–1 pruge, izračunava se kontrolni zbroj str.

Pruga d 1 snimljeno na prvom disku, pruga d 2- na drugom i tako dalje do pruge dn–1, koji je zapisan na ( n–1)-i disk. Sljedeći n-zapisuje se kontrolni zbroj diska p n, a proces se ciklički ponavlja od prvog diska na kojem je traka zapisana d n.

Proces snimanja (n–1) trake i njihov kontrolni zbroj proizvode se istovremeno za sve n diskovi.

Kontrolni zbroj izračunava se korištenjem bit-wise-exclusive-or (XOR) operacije primijenjene na podatkovne blokove koji se zapisuju. Dakle, ako postoji n tvrdi diskovi, d- blok podataka (traka), tada se kontrolni zbroj izračunava pomoću sljedeće formule:

pn=d1 d 2 ... d 1–1.

Ako bilo koji disk otkaže, podaci na njemu mogu se vratiti pomoću kontrolnih podataka i podataka preostalih na radnim diskovima.

Kao ilustraciju, razmotrite blokove od četiri bita. Neka postoji samo pet diskova za pohranu podataka i snimanje kontrolnih zbrojeva. Ako postoji slijed bitova 1101 0011 1100 1011, podijeljen u blokove od četiri bita, tada je za izračunavanje kontrolne sume potrebno izvršiti sljedeću bitnu operaciju:

1101 0011 1100 1011 = 1001.

Stoga je kontrolni zbroj zapisan na peti disk 1001.

Ako jedan od diskova, na primjer četvrti, ne uspije, tada blok d 4= 1100 neće biti dostupno prilikom čitanja. Međutim, njegova se vrijednost može lako vratiti pomoću kontrolne sume i vrijednosti preostalih blokova koristeći istu operaciju "isključivo ILI":

d4 = d1 d 2d 4p5.

U našem primjeru dobivamo:

d4 = (1101) (0011) (1100) (1011) = 1001.

U slučaju RAID 5, svi diskovi u nizu su iste veličine, ali ukupni kapacitet diskovnog podsustava dostupnog za pisanje postaje točno jedan disk manji. Na primjer, ako je pet diskova veličine 100 GB, tada je stvarna veličina niza 400 GB jer je 100 GB dodijeljeno kontrolnim informacijama.

RAID 5 se može izgraditi na tri ili više tvrdih diskova. Kako se broj tvrdih diskova u polju povećava, redundancija se smanjuje.

RAID 5 ima neovisnu arhitekturu pristupa, koja omogućuje istovremeno izvođenje višestrukih čitanja ili pisanja.

RAID 10

RAID razina 10 kombinacija je razina 0 i 1. Minimalni zahtjev za ovu razinu su četiri diska. U nizu RAID 10 od četiri pogona, oni se kombiniraju u parovima u nizove razine 0, a oba ova niza kao logički pogoni kombiniraju se u nizove razine 1. Moguć je i drugi pristup: u početku se diskovi kombiniraju u zrcaljena polja od razine 1, a zatim logičke pogone temeljene na tim nizovima - u polje razine 0.

Intel Matrix RAID

Razmatrani RAID nizovi razine 5 i 1 rijetko se koriste kod kuće, prvenstveno zbog visoke cijene takvih rješenja. Najčešće se za kućna računala koristi niz razine 0 na dva diska. Kao što smo već napomenuli, RAID razine 0 ne pruža sigurnu pohranu podataka, pa su krajnji korisnici suočeni s izborom: stvoriti brzo, ali nepouzdano polje RAID razine 0 ili, udvostručivši cijenu prostora na disku, RAID - polje razine 1 koji pruža pouzdanu pohranu podataka, ali ne daje značajne prednosti performansi.

Kako bi riješio ovaj težak problem, Intel je razvio tehnologiju Intel Matrix Storage Technology, koja kombinira prednosti nizova Tier 0 i Tier 1 na samo dva fizička diska. A kako bismo naglasili da u ovom slučaju ne govorimo samo o RAID nizu, već o nizu koji objedinjuje fizičke i logičke diskove, u nazivu tehnologije umjesto riječi “niz” koristi se riječ “matrica”. ”.

Dakle, što je RAID matrica s dva diska koja koristi tehnologiju Intel Matrix Storage? Osnovna ideja je da ako sustav ima nekoliko tvrdih diskova i matičnu ploču s Intelovim čipsetom koji podržava Intel Matrix Storage tehnologiju, moguće je podijeliti prostor na disku u nekoliko dijelova, od kojih će svaki funkcionirati kao zasebno RAID polje.

Pogledajmo jednostavan primjer RAID matrice koja se sastoji od dva diska od po 120 GB. Svaki od diskova može se podijeliti na dva logička diska, na primjer 40 i 80 GB. Zatim se dva logička pogona iste veličine (na primjer, 40 GB svaki) mogu spojiti u matricu RAID razine 1, a preostale logičke pogone u matricu RAID razine 0.

U principu, pomoću dva fizička diska također je moguće kreirati samo jednu ili dvije RAID matrice razine 0, ali je nemoguće dobiti samo matrice razine 1. To jest, ako sustav ima samo dva diska, tada vam tehnologija Intel Matrix Storage omogućuje stvaranje sljedećih vrsta RAID matrica:

  • jedna matrica razine 0;
  • dvije matrice razine 0;
  • matrica razine 0 i matrica razine 1.

Ako sustav ima tri tvrda diska, mogu se kreirati sljedeće vrste RAID matrica:

  • jedna matrica razine 0;
  • jedna matrica razine 5;
  • dvije matrice razine 0;
  • dvije matrice razine 5;
  • matrice razine 0 i matrice razine 5.

Ako sustav ima četiri tvrda diska, tada je dodatno moguće kreirati RAID matricu razine 10, kao i kombinacije razine 10 i razine 0 ili 5.

Od teorije do prakse

Ako govorimo o kućnim računalima, najpopularniji i najpopularniji su RAID nizovi razine 0 i 1. Upotreba RAID nizova od tri ili više diskova u kućnim računalima prilično je iznimka od pravila. To je zbog činjenice da, s jedne strane, cijena RAID nizova raste proporcionalno broju diskova koji su uključeni u njega, as druge strane, za kućna računala kapacitet diskovnog polja je od primarne važnosti. , a ne njegove performanse i pouzdanost.

Stoga ćemo ubuduće razmatrati RAID razine 0 i 1 na temelju samo dva diska. Cilj našeg istraživanja bit će usporedba performansi i funkcionalnosti RAID polja razine 0 i 1, kreiranih na temelju nekoliko integriranih RAID kontrolera, kao i proučavanje ovisnosti brzinskih karakteristika RAID polja o traci. veličina.

Činjenica je da iako bi se teoretski, pri korištenju polja RAID razine 0, brzina čitanja i pisanja trebala udvostručiti, u praksi je povećanje karakteristika brzine mnogo manje skromno i varira za različite RAID kontrolere. Isto vrijedi i za polje RAID razine 1: unatoč činjenici da bi se teoretski brzina čitanja trebala udvostručiti, u praksi to nije tako glatko.

Za naše usporedno testiranje RAID kontrolera koristili smo matičnu ploču Gigabyte GA-EX58A-UD7. Ova ploča je bazirana na Intel X58 Express čipsetu sa ICH10R južnim mostom, koji ima integrirani RAID kontroler za šest SATA II portova, koji podržava organizaciju RAID nizova razina 0, 1, 10 i 5 sa Intel Matrix RAID funkcijom. Osim toga, ploča Gigabyte GA-EX58A-UD7 integrira GIGABYTE SATA2 RAID kontroler, koji ima dva SATA II porta s mogućnošću organiziranja RAID nizova razina 0, 1 i JBOD.

Također na ploči GA-EX58A-UD7 nalazi se integrirani SATA III kontroler Marvell 9128, na temelju kojeg su implementirana dva SATA III porta s mogućnošću organiziranja RAID nizova razina 0, 1 i JBOD.

Dakle, ploča Gigabyte GA-EX58A-UD7 ima tri odvojena RAID kontrolera, na temelju kojih možete kreirati RAID nizove razine 0 i 1 te ih međusobno uspoređivati. Podsjetimo se da je standard SATA III unatrag kompatibilan sa standardom SATA II, stoga, na temelju kontrolera Marvell 9128, koji podržava pogone sa sučeljem SATA III, također možete stvoriti RAID nizove pomoću pogona sa sučeljem SATA II.

Stalak za ispitivanje imao je sljedeću konfiguraciju:

  • procesor - Intel Core i7-965 Extreme Edition;
  • matična ploča - Gigabyte GA-EX58A-UD7;
  • verzija BIOS-a - F2a;
  • tvrdi diskovi - dva pogona Western Digital WD1002FBYS, jedan pogon Western Digital WD3200AAKS;
  • integrirani RAID kontroleri:
  • ICH10R,
  • GIGABYTE SATA2,
  • Marvell 9128;
  • memorija - DDR3-1066;
  • kapacitet memorije - 3 GB (tri modula od po 1024 MB);
  • način rada memorije - DDR3-1333, trokanalni način rada;
  • video kartica - Gigabyte GeForce GTS295;
  • napajanje - Tagan 1300W.

Testiranje je provedeno pod operativnim sustavom Microsoft Windows 7 Ultimate (32-bit). Operativni sustav je instaliran na Western Digital WD3200AAKS disku, koji je bio spojen na port SATA II kontrolera integriranog u ICH10R južni most. RAID polje je sastavljeno na dva pogona WD1002FBYS sa SATA II sučeljem.

Za mjerenje brzinskih karakteristika kreiranih RAID polja koristili smo pomoćni program IOmeter, koji je industrijski standard za mjerenje performansi diskovnih sustava.

Uslužni program IOmeter

Budući da smo ovaj članak zamislili kao svojevrsni korisnički vodič za izradu i testiranje RAID polja, logično bi bilo započeti s opisom uslužnog programa IOmeter (Input/Output meter) koji je, kao što smo već primijetili, svojevrsni industrijski standard za mjerenje performansi diskovnih sustava. Ovaj uslužni program je besplatan i može se preuzeti s http://www.iometer.org.

Uslužni program IOmeter sintetički je test i omogućuje vam rad s tvrdim diskovima koji nisu particionirani na logičke particije, tako da možete testirati pogone bez obzira na strukturu datoteka i svesti utjecaj operativnog sustava na nulu.

Prilikom testiranja moguće je stvoriti određeni model pristupa ili "uzorak", koji vam omogućuje da odredite izvršavanje određenih operacija od strane tvrdog diska. Ako izradite određeni model pristupa, dopušteno vam je promijeniti sljedeće parametre:

  • veličina zahtjeva za prijenos podataka;
  • slučajna/sekvencijalna distribucija (u%);
  • raspodjela operacija čitanja/pisanja (u%);
  • Broj pojedinačnih I/O operacija koje se izvode paralelno.

Uslužni program IOmeter ne zahtijeva instalaciju na računalu i sastoji se od dva dijela: samog IOmetera i Dynamo.

IOmeter je upravljački dio programa s korisničkim grafičkim sučeljem koje omogućuje sva potrebna podešavanja. Dynamo je generator opterećenja koji nema sučelje. Svaki put kada pokrenete IOmeter.exe, automatski se pokreće generator učitavanja Dynamo.exe.

Za početak rada s programom IOmeter samo pokrenite datoteku IOmeter.exe. Otvara se glavni prozor programa IOmeter (slika 1).

Riža. 1. Glavni prozor programa IOmeter

Treba napomenuti da vam uslužni program IOmeter omogućuje testiranje ne samo lokalnih diskovnih sustava (DAS), već i mrežnih uređaja za pohranu podataka (NAS). Na primjer, može se koristiti za testiranje performansi diskovnog podsustava poslužitelja (poslužitelj datoteka) pomoću nekoliko mrežnih klijenata. Stoga se neke oznake i alati u prozoru uslužnog programa IOmeter odnose posebno na mrežne postavke programa. Jasno je da nam prilikom testiranja diskova i RAID polja neće trebati ove programske mogućnosti, pa stoga nećemo objašnjavati svrhu svih kartica i alata.

Dakle, kada pokrenete program IOmeter, struktura stabla svih pokretačkih generatora opterećenja (Dynamo instance) bit će prikazana na lijevoj strani glavnog prozora (u prozoru Topologija). Svaka pokrenuta instanca generatora opterećenja Dynamo naziva se upravitelj. Dodatno, program IOmeter je multi-threaded i svaka pojedinačna nit koja se izvodi na instanci generatora opterećenja Dynamo naziva se Worker. Broj aktivnih radnika uvijek odgovara broju jezgri logičkog procesora.

U našem primjeru koristimo samo jedno računalo s četverojezgrenim procesorom koje podržava tehnologiju Hyper-Threading, pa se pokreće samo jedan upravitelj (jedna instanca Dynamo) i osam (prema broju jezgri logičkog procesora) Workera.

Zapravo, za testiranje diskova u ovom prozoru nema potrebe ništa mijenjati ili dodavati.

Ako mišem odaberete naziv računala u strukturi stabla pokrenutih Dynamo instanci, tada u prozoru Cilj na kartici Cilj diska Prikazat će se svi diskovi, diskovna polja i drugi pogoni (uključujući mrežne pogone) instalirani na računalu. Ovo su diskovi s kojima IOmeter može raditi. Mediji mogu biti označeni žutom ili plavom bojom. Logičke particije medija označene su žutom bojom, a fizički uređaji bez kreiranih logičkih particija na njima označeni su plavom bojom. Logički dio može, ali ne mora biti prekrižen. Činjenica je da kako bi program mogao raditi s logičkom particijom, prvo se mora pripremiti stvaranjem posebne datoteke na njoj, veličine jednake kapacitetu cijele logičke particije. Ako je logička particija prekrižena, to znači da odjeljak još nije pripremljen za testiranje (pripremit će se automatski u prvoj fazi testiranja), ali ako odjeljak nije prekrižen, to znači da je datoteka već bila kreiran na logičkoj particiji, potpuno spreman za testiranje.

Imajte na umu da je, unatoč podržanoj mogućnosti rada s logičkim particijama, optimalno testirati pogone koji nisu particionirani na logičke particije. Logičku particiju diska možete izbrisati vrlo jednostavno - kroz snap-in Upravljanje diskovima. Da biste mu pristupili, samo kliknite desnom tipkom miša na ikonu Računalo na radnoj površini i odaberite stavku u izborniku koji se otvori Upravljati. U prozoru koji se otvori Upravljanje računalom s lijeve strane morate odabrati stavku Skladištenje, a u njemu - Upravljanje diskovima. Nakon toga, na desnoj strani prozora Upravljanje računalom Prikazat će se svi povezani pogoni. Desnim klikom na željeni disk i odabirom stavke u izborniku koji se otvori Izbriši glasnoću..., možete izbrisati logičku particiju na fizičkom disku. Podsjetimo, kada izbrišete logičku particiju s diska, brišu se svi podaci na njoj bez mogućnosti oporavka.

Općenito, korištenjem uslužnog programa IOmeter možete testirati samo prazne diskove ili diskovne nizove. To jest, ne možete testirati disk ili diskovno polje na kojem je instaliran operativni sustav.

Dakle, vratimo se na opis uslužnog programa IOmeter. U prozoru Cilj na kartici Cilj diska morate odabrati disk (ili niz diskova) koji će se testirati. Zatim morate otvoriti karticu Specifikacije pristupa(Sl. 2), na kojem će biti moguće odrediti scenarij testiranja.

Riža. 2. Pristupite kartici Specifikacije uslužnog programa IOmeter

U prozoru Specifikacije globalnog pristupa Postoji popis unaprijed definiranih testnih skripti koje se mogu dodijeliti upravitelju pokretanja. Međutim, nećemo trebati ove skripte, tako da ih sve možete odabrati i izbrisati (za to postoji gumb Izbrisati). Nakon toga kliknite na gumb Novi za izradu nove testne skripte. U prozoru koji se otvori Uredi specifikaciju pristupa Možete definirati scenarij pokretanja za disk ili RAID polje.

Pretpostavimo da želimo saznati ovisnost brzine sekvencijalnog (linearnog) čitanja i pisanja o veličini bloka zahtjeva za prijenos podataka. Da bismo to učinili, moramo generirati niz skripti za pokretanje u načinu sekvencijalnog čitanja u različitim veličinama blokova, a zatim niz skripti za pokretanje u načinu sekvencijalnog pisanja u različitim veličinama bloka. Tipično, veličine blokova se biraju kao niz, čiji je svaki član dvostruko veći od prethodnog, a prvi član ovog niza je 512 bajtova. Odnosno, veličine blokova su sljedeće: 512 bajtova, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512 KB, 1 MB. Nema smisla da veličina bloka bude veća od 1 MB za sekvencijalne operacije, budući da se s tako velikim veličinama podatkovnog bloka brzina sekvencijalnih operacija ne mijenja.

Dakle, stvorimo skriptu za učitavanje u sekvencijalnom načinu čitanja za blok od 512 bajtova.

U polju Ime prozor Uredi specifikaciju pristupa unesite naziv skripte za učitavanje. Na primjer, Sequential_Read_512. Sljedeći na terenu Veličina zahtjeva za prijenos postavili smo veličinu bloka podataka na 512 bajtova. Klizač Postotna nasumična/sekvencijalna distribucija(postotni omjer između sekvencijalnih i selektivnih operacija) pomičemo skroz ulijevo tako da su sve naše operacije samo sekvencijalne. Pa, klizač , koji postavlja postotni omjer između operacija čitanja i pisanja, pomaknut je skroz udesno tako da su sve naše operacije samo za čitanje. Ostali parametri u prozoru Uredi specifikaciju pristupa nije potrebno mijenjati (slika 3).

Riža. 3. Uredite prozor specifikacije pristupa za stvaranje sekvencijalne skripte za učitavanje čitanja
s veličinom bloka podataka od 512 bajtova

Kliknite na gumb U redu, a prva skripta koju smo izradili pojavit će se u prozoru Specifikacije globalnog pristupa na kartici Specifikacije pristupa IOmeter pomoćni programi.

Slično, trebate izraditi skripte za preostale blokove podataka, međutim, kako biste si olakšali rad, lakše je ne stvarati skriptu svaki put iznova klikom na gumb Novi, i nakon odabira posljednjeg kreiranog scenarija pritisnite gumb Uredi kopiju(uredi kopiju). Nakon toga prozor će se ponovno otvoriti Uredi specifikaciju pristupa s postavkama zadnje kreirane skripte. Bit će dovoljno promijeniti samo naziv i veličinu bloka. Nakon što ste dovršili sličan postupak za sve ostale veličine blokova, možete početi stvarati skripte za sekvencijalno snimanje, što se radi na potpuno isti način, osim što je klizač Postotak distribucije čitanja/pisanja, koji postavlja postotni omjer između operacija čitanja i pisanja, mora se pomaknuti skroz ulijevo.

Slično tome, možete izraditi skripte za selektivno pisanje i čitanje.

Nakon što su sve skripte spremne, potrebno ih je dodijeliti upravitelju preuzimanja, odnosno naznačiti koje će skripte raditi s Dinamo.

Da bismo to učinili, ponovno provjeravamo što je u prozoru Topologija Ime računala (odnosno upravitelja opterećenja na lokalnom računalu) je istaknuto, a ne pojedinačni radnik. Ovo osigurava da će scenariji opterećenja biti dodijeljeni svim radnicima odjednom. Sljedeći u prozoru Specifikacije globalnog pristupa odaberite sve scenarije opterećenja koje smo izradili i pritisnite gumb Dodati. Svi odabrani scenariji opterećenja bit će dodani u prozor (slika 4).

Riža. 4. Dodjeljivanje kreiranih scenarija opterećenja upravitelju opterećenja

Nakon toga morate otići na karticu Postavljanje testa(Sl. 5), gdje možete postaviti vrijeme izvršenja svake skripte koju smo izradili. Da biste to učinili u grupi Run Time postaviti vrijeme izvršavanja scenarija opterećenja. Bit će dovoljno postaviti vrijeme na 3 minute.

Riža. 5. Postavljanje vremena izvršavanja scenarija opterećenja

Štoviše, na terenu Opis testa Morate navesti naziv cijelog testa. U principu, ova kartica ima puno drugih postavki, ali one nisu potrebne za naše zadatke.

Nakon što su napravljene sve potrebne postavke, preporučljivo je spremiti izrađeni test klikom na gumb sa slikom diskete na alatnoj traci. Test se sprema s ekstenzijom *.icf. Nakon toga možete koristiti kreirani scenarij učitavanja pokretanjem ne datoteke IOmeter.exe, već spremljene datoteke s nastavkom *.icf.

Sada možete izravno započeti testiranje klikom na gumb sa zastavicom. Od vas će se tražiti da navedete naziv datoteke koja sadrži rezultate testa i odaberete njezino mjesto. Rezultati testa spremaju se u CSV datoteku, koju zatim jednostavno možete eksportirati u Excel te postavljanjem filtera na prvom stupcu odabrati željene podatke s rezultatima testa.

Tijekom testiranja međurezultati se mogu vidjeti na kartici Prikaz rezultata, a na kartici možete odrediti kojem scenariju opterećenja pripadaju Specifikacije pristupa. U prozoru Specifikacija dodijeljenog pristupa pokrenuta skripta pojavljuje se zelenom bojom, dovršene skripte crvenom, a neizvršene skripte plavom bojom.

Dakle, pogledali smo osnovne tehnike za rad s uslužnim programom IOmeter, koji će biti potreban za testiranje pojedinačnih diskova ili RAID polja. Imajte na umu da nismo govorili o svim mogućnostima uslužnog programa IOmeter, ali opis svih njegovih mogućnosti je izvan opsega ovog članka.

Stvaranje RAID polja na temelju GIGABYTE SATA2 kontrolera

Dakle, počinjemo kreirati RAID polje temeljeno na dva diska koristeći GIGABYTE SATA2 RAID kontroler integriran na ploči. Naravno, sam Gigabyte ne proizvodi čipove, pa se ispod GIGABYTE SATA2 čipa krije preoznačeni čip druge tvrtke. Kao što možete saznati iz INF datoteke upravljačkog programa, govorimo o kontroleru JMicron JMB36x serije.

Pristup izborniku za podešavanje kontrolera moguć je u fazi pokretanja sustava, za što trebate pritisnuti kombinaciju tipki Ctrl+G kada se na ekranu pojavi odgovarajući natpis. Naravno, prvo u postavkama BIOS-a trebate definirati način rada dvaju SATA portova koji se odnose na GIGABYTE SATA2 kontroler kao RAID (inače će pristup izborniku konfiguratora RAID polja biti nemoguć).

Izbornik za postavljanje GIGABYTE SATA2 RAID kontrolera prilično je jednostavan. Kao što smo već napomenuli, kontroler ima dva ulaza i omogućuje vam stvaranje RAID nizova razine 0 ili 1. Kroz izbornik postavki kontrolera možete izbrisati ili stvoriti RAID niz. Kada stvarate RAID niz, možete odrediti njegov naziv, odabrati razinu polja (0 ili 1), postaviti veličinu pruge za RAID 0 (128, 84, 32, 16, 8 ili 4K), a također odrediti veličinu niz.

Nakon što je niz kreiran, njegove promjene više nisu moguće. To jest, ne možete naknadno promijeniti za kreirani niz, na primjer, njegovu razinu ili veličinu trake. Da biste to učinili, prvo morate izbrisati niz (uz gubitak podataka), a zatim ga ponovno stvoriti. Zapravo, ovo nije jedinstveno za GIGABYTE SATA2 kontroler. Nemogućnost promjene parametara kreiranih RAID polja je karakteristika svih kontrolera, što proizlazi iz samog principa implementacije RAID polja.

Jednom kada je kreiran niz temeljen na GIGABYTE SATA2 kontroleru, njegove trenutne informacije mogu se vidjeti pomoću uslužnog programa GIGABYTE RAID Configurer, koji se automatski instalira zajedno s drajverom.

Izrada RAID polja na temelju kontrolera Marvell 9128

Konfiguriranje Marvell 9128 RAID kontrolera moguće je samo kroz postavke BIOS-a Gigabyte GA-EX58A-UD7 ploče. Općenito, mora se reći da je izbornik konfiguratora kontrolera Marvell 9128 pomalo grub i može dovesti u zabludu neiskusne korisnike. Međutim, o ovim manjim nedostacima ćemo govoriti malo kasnije, ali za sada ćemo razmotriti glavnu funkcionalnost kontrolera Marvell 9128.

Dakle, iako ovaj kontroler podržava SATA III pogone, također je potpuno kompatibilan sa SATA II pogonima.

Kontroler Marvell 9128 omogućuje stvaranje RAID niza razina 0 i 1 na temelju dva diska. Za niz razine 0, možete postaviti veličinu pruge na 32 ili 64 KB, te također odrediti naziv niza. Osim toga, postoji opcija kao što je Gigabyte Rounding, koju treba objasniti. Unatoč nazivu koji je sličan nazivu proizvođača, funkcija Gigabyte Rounding nema nikakve veze s tim. Štoviše, ni na koji način nije povezan s nizom RAID razine 0, iako se u postavkama kontrolera može definirati posebno za niz ove razine. Zapravo, ovo je prvi od onih nedostataka konfiguratora kontrolera Marvell 9128 koje smo spomenuli. Značajka Gigabyte Rounding definirana je samo za RAID Level 1. Omogućuje vam korištenje dva pogona (na primjer, različitih proizvođača ili različitih modela) s malo različitim kapacitetima za stvaranje RAID Level 1 polja. Funkcija Gigabyte Rounding precizno postavlja razliku u veličinama dvaju diskova koji se koriste za stvaranje niza RAID razine 1. U kontroleru Marvell 9128 funkcija Gigabyte Rounding omogućuje vam da postavite razliku u veličinama diskova na 1 ili 10. GB.

Još jedna mana u konfiguratoru kontrolera Marvell 9128 je ta što prilikom kreiranja niza RAID razine 1 korisnik ima mogućnost odabira veličine trake (32 ili 64 KB). Međutim, koncept trake uopće nije definiran za RAID razinu 1.

Stvaranje RAID polja na temelju kontrolera integriranog u ICH10R

Najčešći je RAID kontroler integriran u južni most ICH10R. Kao što je već navedeno, ovaj RAID kontroler ima 6 ulaza i podržava ne samo stvaranje RAID 0 i RAID 1 nizova, već i RAID 5 i RAID 10.

Pristup izborniku za podešavanje kontrolera moguć je u fazi pokretanja sustava, za što morate pritisnuti kombinaciju tipki Ctrl + I kada se na ekranu pojavi odgovarajući natpis. Naravno, prvo u postavkama BIOS-a trebate definirati način rada ovog kontrolera kao RAID (inače pristup izborniku konfiguratora RAID polja neće biti moguć).

Izbornik za postavljanje RAID kontrolera prilično je jednostavan. Putem izbornika postavki kontrolera možete izbrisati ili stvoriti RAID polje. Kada stvarate RAID niz, možete odrediti njegov naziv, odabrati razinu polja (0, 1, 5 ili 10), postaviti veličinu pruge za RAID 0 (128, 84, 32, 16, 8 ili 4K) i također odrediti veličina niza.

Usporedba performansi RAID-a

Kako bismo testirali RAID polja pomoću uslužnog programa IOmeter, stvorili smo scenarije sekvencijalnog čitanja, sekvencijalnog pisanja, selektivnog čitanja i selektivnog pisanja. Veličine blokova podataka u svakom scenariju učitavanja bile su sljedeće: 512 bajtova, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512 KB, 1 MB.

Na svakom od RAID kontrolera stvorili smo polje RAID 0 sa svim dopuštenim veličinama trake i polje RAID 1. Osim toga, kako bismo mogli procijeniti dobitak performansi dobiven upotrebom RAID polja, također smo testirali jedan disk na svakom od RAID kontrolera.

Dakle, pogledajmo rezultate našeg testiranja.

GIGABYTE SATA2 kontroler

Prije svega, pogledajmo rezultate testiranja RAID polja temeljenih na GIGABYTE SATA2 kontroleru (Sl. 6-13). Općenito, kontroler se pokazao doslovno tajanstvenim, a njegova izvedba bila je jednostavno razočaravajuća.

Riža. 6. Sekvencijalna brzina
i selektivne diskovne operacije
Western Digital WD1002FBYS

Riža. 7. Sekvencijalna brzina

s veličinom trake od 128 KB
(GIGABYTE SATA2 kontroler)

Riža. 12. Serijska brzina
i selektivne operacije za RAID 0
s veličinom trake od 4 KB
(GIGABYTE SATA2 kontroler)

Riža. 13. Serijska brzina
i selektivne operacije
za RAID 1 (GIGABYTE SATA2 kontroler)

Ako pogledate karakteristike brzine jednog diska (bez RAID polja), maksimalna sekvencijalna brzina čitanja je 102 MB/s, a maksimalna sekvencijalna brzina pisanja je 107 MB/s.

Prilikom stvaranja RAID 0 polja s veličinom trake od 128 KB, maksimalna sekvencijalna brzina čitanja i pisanja povećava se na 125 MB/s, što je povećanje od približno 22%.

S veličinama traka od 64, 32 ili 16 KB, maksimalna brzina sekvencijalnog čitanja je 130 MB/s, a maksimalna brzina sekvencijalnog pisanja je 141 MB/s. Odnosno, s navedenim veličinama traka, maksimalna brzina sekvencijalnog čitanja povećava se za 27%, a maksimalna brzina sekvencijalnog pisanja povećava se za 31%.

Zapravo, to nije dovoljno za polje razine 0, a volio bih da je maksimalna brzina sekvencijalnih operacija veća.

S veličinom trake od 8 KB, maksimalna brzina sekvencijalnih operacija (čitanje i pisanje) ostaje približno ista kao i s veličinom trake od 64, 32 ili 16 KB, međutim, postoje očiti problemi sa selektivnim čitanjem. Kako se veličina bloka podataka povećava do 128 KB, brzina selektivnog čitanja (kao što bi trebala) raste proporcionalno veličini bloka podataka. Međutim, kada je veličina podatkovnog bloka veća od 128 KB, selektivna brzina čitanja pada gotovo na nulu (na otprilike 0,1 MB/s).

S veličinom stripa od 4 KB, ne samo da opada brzina selektivnog čitanja kada je veličina bloka veća od 128 KB, već i brzina sekvencijalnog čitanja kada je veličina bloka veća od 16 KB.

Korištenje RAID 1 polja na GIGABYTE SATA2 kontroleru ne mijenja značajno sekvencijalnu brzinu čitanja (u usporedbi s jednim pogonom), ali maksimalna sekvencijalna brzina pisanja smanjena je na 75 MB/s. Podsjetimo se da bi za polje RAID 1 brzina čitanja trebala rasti, a brzina pisanja ne bi se trebala smanjivati ​​u usporedbi s brzinom čitanja i pisanja jednog diska.

Na temelju rezultata testiranja GIGABYTE SATA2 kontrolera može se izvući samo jedan zaključak. Ima smisla koristiti ovaj kontroler za stvaranje RAID 0 i RAID 1 polja samo ako su svi ostali RAID kontroleri (Marvell 9128, ICH10R) već korišteni. Iako je prilično teško zamisliti takvu situaciju.

Marvell 9128 kontroler

Kontroler Marvell 9128 pokazao je mnogo veće karakteristike brzine u usporedbi s kontrolerom GIGABYTE SATA2 (Slika 14-17). Zapravo, razlike se pojavljuju čak i kada kontroler radi s jednim diskom. Ako je za GIGABYTE SATA2 kontroler maksimalna sekvencijalna brzina čitanja 102 MB/s i postiže se s veličinom bloka podataka od 128 KB, tada je za Marvell 9128 kontroler maksimalna sekvencijalna brzina čitanja 107 MB/s i postiže se s podacima blok veličine 16 KB.

Prilikom stvaranja RAID 0 polja s veličinama traka od 64 i 32 KB, maksimalna sekvencijalna brzina čitanja povećava se na 211 MB/s, a sekvencijalna brzina pisanja povećava se na 185 MB/s. To jest, s navedenim veličinama traka, maksimalna brzina sekvencijalnog čitanja povećava se za 97%, a maksimalna brzina sekvencijalnog pisanja povećava se za 73%.

Nema značajne razlike u performansama brzine RAID 0 niza s veličinom trake od 32 i 64 KB, međutim, upotreba trake od 32 KB je poželjnija, budući da je u ovom slučaju brzina sekvencijalnih operacija s veličinom bloka manji od 128 KB bit će nešto veći.

Prilikom stvaranja RAID 1 polja na kontroleru Marvell 9128, maksimalna sekvencijalna brzina rada ostaje gotovo nepromijenjena u usporedbi s jednim diskom. Dakle, ako je za jedan disk maksimalna brzina sekvencijalnih operacija 107 MB/s, onda je za RAID 1 105 MB/s. Također imajte na umu da za RAID 1 performanse selektivnog čitanja malo opadaju.

Općenito, treba napomenuti da kontroler Marvell 9128 ima dobre karakteristike brzine i može se koristiti i za stvaranje RAID polja i za povezivanje pojedinačnih diskova na njega.

Kontroler ICH10R

Pokazalo se da RAID kontroler ugrađen u ICH10R ima najbolje performanse od svih koje smo testirali (Slika 18-25). Pri radu s jednim diskom (bez stvaranja RAID polja), njegova izvedba je gotovo ista kao kod kontrolera Marvell 9128. Maksimalna sekvencijalna brzina čitanja i pisanja je 107 MB i postiže se s veličinom bloka podataka od 16 KB.

Riža. 18. Sekvencijalna brzina
i selektivne operacije
za Western Digital WD1002FBYS disk (ICH10R kontroler)

Ako govorimo o polju RAID 0 na kontroleru ICH10R, tada maksimalna sekvencijalna brzina čitanja i pisanja ne ovisi o veličini trake i iznosi 212 MB/s. Samo veličina bloka podataka pri kojoj se postiže maksimalna sekvencijalna brzina čitanja i pisanja ovisi o veličini trake. Rezultati testiranja pokazuju da je za RAID 0 temeljen na kontroleru ICH10R optimalno koristiti stripe od 64 KB. U ovom slučaju, maksimalna sekvencijalna brzina čitanja i pisanja postiže se s veličinom bloka podataka od samo 16 KB.

Dakle, da rezimiramo, još jednom naglašavamo da RAID kontroler ugrađen u ICH10R značajno nadmašuje sve ostale integrirane RAID kontrolere u performansama. A s obzirom da ima i veću funkcionalnost, optimalno je koristiti ovaj određeni kontroler i jednostavno zaboraviti na postojanje svih ostalih (osim ako, naravno, sustav ne koristi SATA III pogone).

Tvrdi diskovi igraju važnu ulogu u računalu. Oni pohranjuju razne korisničke informacije, pokreću OS iz njih itd. Tvrdi diskovi ne traju vječno i imaju određenu granicu sigurnosti. I svaki tvrdi disk ima svoje posebne karakteristike.

Najvjerojatnije ste u nekom trenutku čuli da se takozvani raid nizovi mogu napraviti od običnih tvrdih diskova. To je neophodno kako bi se poboljšale performanse pogona, kao i osigurala pouzdanost pohrane informacija. Osim toga, takvi nizovi mogu imati svoje brojeve (0, 1, 2, 3, 4 itd.). U ovom članku ćemo vam reći o RAID nizovima.

RAID je skup tvrdih diskova ili niz diskova. Kao što smo već rekli, takav niz osigurava pouzdanu pohranu podataka i također povećava brzinu čitanja ili pisanja informacija. Postoje različite konfiguracije RAID polja, koje su označene brojevima 1, 2, 3, 4 itd. a razlikuju se po funkcijama koje obavljaju. Korištenjem takvih nizova s ​​konfiguracijom 0 dobit ćete značajna poboljšanja performansi. Jedno RAID polje jamči potpunu sigurnost vaših podataka, jer ako jedan od diskova pokvari, informacije će se nalaziti na drugom tvrdom disku.

Zapravo, RAID polje– ovo je 2 ili n broj tvrdih diskova spojenih na matičnu ploču, što podržava mogućnost stvaranja racija. Programski možete odabrati raid konfiguraciju, odnosno odrediti kako ti isti diskovi trebaju raditi. Da biste to učinili, morat ćete odrediti postavke u BIOS-u.

Za instalaciju polja potrebna nam je matična ploča koja podržava raid tehnologiju, 2 identična (u svim pogledima) tvrda diska, koje spajamo na matičnu ploču. U BIOS-u trebate postaviti parametar SATA konfiguracija: RAID. Kada se računalo pokrene, pritisnite kombinaciju tipki CTR-I, i već tamo konfiguriramo RAID. I nakon toga instaliramo Windows kao i obično.

Vrijedno je obratiti pozornost na činjenicu da ako stvorite ili izbrišete napad, brišu se sve informacije koje se nalaze na pogonima. Stoga ga prvo morate kopirati.

Pogledajmo RAID konfiguracije o kojima smo već govorili. Postoji nekoliko njih: RAID 1, RAID 2, RAID 3, RAID 4, RAID 5, RAID 6 itd.

RAID-0 (striping), također poznat kao niz nulte razine ili "nulti niz". Ova razina povećava brzinu rada s diskovima za red veličine, ali ne pruža dodatnu toleranciju na pogreške. Zapravo, ova konfiguracija je raid niz čisto formalno, jer kod ove konfiguracije nema redundancije. Snimanje u takvom paketu odvija se u blokovima, naizmjenično zapisanim na različite diskove niza. Glavni nedostatak ovdje je nepouzdanost pohrane podataka: ako jedan od diskova niza zakaže, sve informacije se uništavaju. Zašto se to događa? To se događa jer se svaka datoteka može pisati u blokovima na nekoliko tvrdih diskova odjednom, a ako bilo koji od njih ne radi ispravno, integritet datoteke je narušen, pa je stoga nije moguće vratiti. Ako cijenite performanse i redovito izrađujete sigurnosne kopije, tada se ova razina niza može koristiti na vašem kućnom računalu, što će značajno povećati performanse.

RAID-1 (zrcaljenje)– “zrcalni način rada”. Ovu razinu RAID nizova možete nazvati paranoičnom razinom: ovaj način rada ne daje gotovo nikakvo povećanje performansi sustava, ali apsolutno štiti vaše podatke od oštećenja. Čak i ako jedan od diskova pokvari, točna kopija izgubljenog bit će pohranjena na drugom disku. Ovaj način, kao i prvi, također se može implementirati na kućno računalo za ljude koji izuzetno cijene podatke na svojim diskovima.

Prilikom konstruiranja ovih nizova koristi se algoritam za oporavak informacija pomoću Hammingovih kodova (američki inženjer koji je 1950. godine razvio ovaj algoritam za ispravljanje grešaka u radu elektromehaničkih računala). Kako bi se osigurao rad ovog RAID kontrolera, stvorene su dvije skupine diskova - jedna za pohranu podataka, druga skupina za pohranu kodova za ispravljanje pogrešaka.

Ova vrsta RAID-a postala je manje raširena u kućnim sustavima zbog pretjerane redundancije broja tvrdih diskova - na primjer, u nizu od sedam tvrdih diskova samo će četiri biti dodijeljena za podatke. Kako se broj diskova povećava, redundancija se smanjuje, što se odražava u tablici u nastavku.

Glavna prednost RAID 2 je mogućnost ispravljanja pogrešaka u hodu bez smanjenja brzine razmjene podataka između diskovnog polja i središnjeg procesora.

RAID 3 i RAID 4

Ove dvije vrste diskovnih polja vrlo su slične po dizajnu. Oba koriste više tvrdih diskova za pohranjivanje informacija, od kojih se jedan koristi isključivo za pohranjivanje kontrolnih zbrojeva. Za stvaranje RAID 3 i RAID 4 dovoljna su tri tvrda diska. Za razliku od RAID 2, oporavak podataka u hodu nije moguć - podaci se vraćaju nakon zamjene pokvarenog tvrdog diska tijekom određenog vremenskog razdoblja.

Razlika između RAID 3 i RAID 4 je razina particioniranja podataka. U RAID-u 3 informacije se raščlanjuju na pojedinačne bajtove, što dovodi do ozbiljnog usporavanja prilikom pisanja/čitanja velikog broja malih datoteka. RAID 4 dijeli podatke u zasebne blokove, čija veličina ne prelazi veličinu jednog sektora na disku. Kao rezultat toga, povećava se brzina obrade malih datoteka, što je kritično za osobna računala. Iz tog razloga, RAID 4 je postao rašireniji.

Značajan nedostatak razmatranih polja je povećano opterećenje tvrdog diska namijenjenog pohranjivanju kontrolnih zbrojeva, što značajno smanjuje njegov resurs.

RAID-5. Takozvano polje neovisnih diskova otpornih na pogreške s distribuiranom pohranom kontrolnih zbrojeva. To znači da će na nizu od n diskova, n-1 disk biti dodijeljen za izravnu pohranu podataka, a zadnji će pohraniti kontrolni zbroj iteracije n-1 trake. Da bismo jasnije objasnili, zamislimo da trebamo napisati datoteku. Bit će podijeljen na dijelove iste duljine i počet će se naizmjenično ciklički pisati na sve n-1 diskove. Kontrolni zbroj bajtova dijelova podataka svake iteracije bit će zapisan na zadnji disk, gdje će kontrolni zbroj biti implementiran XOR operacijom po bitovima.

Vrijedno je odmah upozoriti da ako bilo koji od diskova pokvari, sve će prijeći u hitni način rada, što će značajno smanjiti performanse, jer Da biste sastavili datoteku, izvršit će se nepotrebne manipulacije kako bi se obnovili njezini "nedostajući" dijelovi. Ako dva ili više diskova pokvare istodobno, podaci pohranjeni na njima ne mogu se vratiti. Općenito, implementacija raid polja razine 5 osigurava prilično velike brzine pristupa, paralelni pristup raznim datotekama i dobru toleranciju na greške.

U velikoj mjeri, gornji problem je riješen izgradnjom nizova pomoću sheme RAID 6. U tim strukturama, volumen memorije jednak volumenu dva tvrda diska je dodijeljen za pohranu kontrolnih zbrojeva, koji su također ciklički i ravnomjerno raspoređeni na različite diskove. . Umjesto jedne, izračunavaju se dvije kontrolne sume, što jamči cjelovitost podataka u slučaju istovremenog kvara dvaju tvrdih diskova u nizu.

Prednosti RAID-a 6 su visok stupanj informacijske sigurnosti i manji gubitak performansi nego kod RAID-a 5 tijekom oporavka podataka prilikom zamjene oštećenog diska.

Nedostatak RAID-a 6 je što je ukupna brzina razmjene podataka smanjena za otprilike 10% zbog povećanja količine potrebnih izračuna kontrolnih zbrojeva, kao i zbog povećanja količine informacija koje se upisuju/čitaju.

Kombinirane vrste RAID-a

Uz gore navedene glavne vrste, u širokoj su uporabi njihove različite kombinacije koje nadoknađuju određene nedostatke jednostavnog RAID-a. Posebno je raširena uporaba shema RAID 10 i RAID 0+1. U prvom slučaju, par zrcalnih nizova kombinira se u RAID 0, u drugom, naprotiv, dva RAID 0 kombiniraju se u zrcalo. U oba slučaja, povećana izvedba RAID-a 0 dodaje se informacijskoj sigurnosti RAID-a 1.

Često se radi povećanja razine zaštite važnih informacija koriste RAID 51 ili RAID 61 konstrukcijske sheme - zrcaljenje već visoko zaštićenih nizova osigurava iznimnu sigurnost podataka u slučaju bilo kakvih kvarova. Međutim, nepraktično je implementirati takve nizove kod kuće zbog pretjerane redundancije.

Izrada diskovnog polja - od teorije do prakse

Specijalizirani RAID kontroler odgovoran je za izgradnju i upravljanje radom bilo kojeg RAID-a. Na veliko olakšanje prosječnog korisnika osobnog računala, u većini modernih matičnih ploča ti su kontroleri već implementirani na razini južnog mosta čipseta. Dakle, da biste izgradili niz tvrdih diskova, sve što trebate učiniti je kupiti potreban broj njih i odrediti željenu vrstu RAID-a u odgovarajućem odjeljku BIOS postavki. Nakon toga, umjesto nekoliko tvrdih diskova u sustavu, vidjet ćete samo jedan, koji se po želji može podijeliti na particije i logičke diskove. Imajte na umu da će oni koji još uvijek koriste Windows XP morati instalirati dodatni upravljački program.

I na kraju, još jedan savjet - za izradu RAID-a kupujte tvrde diskove istog kapaciteta, istog proizvođača, istog modela i po mogućnosti iz iste serije. Tada će biti opremljeni istim logičkim setovima i rad niza ovih tvrdih diskova bit će najstabilniji.

Oznake: , https://site/wp-content/uploads/2017/01/RAID1-400x333.jpg 333 400 Leonid Borislavski /wp-content/uploads/2018/05/logo.pngLeonid Borislavski 2017-01-16 08:57:09 2017-01-16 07:12:59 Što su RAID polja i zašto su potrebna?

Pomak u fokusu s aplikacija usmjerenih na procesore na aplikacije usmjerene na podatke pokreće povećanu važnost sustava za pohranu podataka. Istodobno, problem niske propusnosti i otpornosti na pogreške karakterističan za takve sustave uvijek je bio vrlo važan i uvijek je zahtijevao rješenje.

U suvremenoj računalnoj industriji magnetski diskovi imaju široku primjenu kao sekundarni sustav za pohranu podataka, jer unatoč svim svojim nedostacima imaju najbolje karakteristike za odgovarajuću vrstu uređaja po pristupačnoj cijeni.

Značajke tehnologije za izradu magnetskih diskova dovele su do značajnog neslaganja između povećanja performansi procesorskih modula i samih magnetskih diskova. Ako su 1990. najbolji među serijskim bili 5,25″ diskovi s prosječnim vremenom pristupa od 12 ms i vremenom latencije od 5 ms (pri brzini vretena od oko 5000 o/min 1), danas dlan pripada 3,5″ pogonima s prosječno vrijeme pristupa od 5 ms i vrijeme kašnjenja 1 ms (pri brzini vretena 10.000 okr/min). Ovdje vidimo poboljšanje tehničkih karakteristika od oko 100%. U isto vrijeme, performanse procesora porasle su za više od 2000%. To je uvelike moguće jer procesori imaju izravne prednosti korištenja VLSI-ja (Very Large Scale Integration). Njegova uporaba ne samo da omogućuje povećanje frekvencije, već i broja komponenti koje se mogu integrirati u čip, što omogućuje uvođenje arhitektonskih prednosti koje omogućuju paralelno računanje.

1 - Prosječni podaci.

Trenutna situacija može se okarakterizirati kao I/O kriza sekundarnog sustava pohrane.

Povećanje učinka

Nemogućnost značajnog povećanja tehnoloških parametara magnetskih diskova povlači za sobom potrebu traženja drugih načina, od kojih je jedan paralelna obrada.

Ako rasporedite blok podataka na N diskova nekog niza i organizirate ovaj položaj tako da je moguće istovremeno čitati informacije, tada se taj blok može čitati N puta brže (bez uzimanja u obzir vremena formiranja bloka). Budući da se svi podaci prenose paralelno, ovo arhitektonsko rješenje je tzv niz s paralelnim pristupom(niz s paralelnim pristupom).

Paralelni nizovi obično se koriste za aplikacije koje zahtijevaju velike prijenose podataka.

Neke zadatke, naprotiv, karakterizira veliki broj malih zahtjeva. Takvi zadaci uključuju, na primjer, zadatke obrade baze podataka. Distribucijom zapisa baze podataka preko niza diskova, možete rasporediti opterećenje neovisnim pozicioniranjem diskova. Ova se arhitektura obično naziva niz s neovisnim pristupom(niz s neovisnim pristupom).

Povećanje tolerancije na pogreške

Nažalost, kako se broj diskova u nizu povećava, pouzdanost cijelog niza opada. Uz neovisne kvarove i eksponencijalni zakon raspodjele vremena između kvarova, MTTF cijelog niza (srednje vrijeme do kvara) izračunava se pomoću formule MTTF niz = MMTF hdd /N hdd (MMTF hdd je srednje vrijeme do kvara jednog diska ; NHDD je broj diskova).

Stoga postoji potreba za povećanjem otpornosti na pogreške diskovnih polja. Kako bi se povećala tolerancija grešaka nizova, koristi se redundantno kodiranje. Postoje dvije glavne vrste kodiranja koje se koriste u redundantnim diskovnim nizovima - dupliciranje i paritet.

Dupliciranje ili zrcaljenje se najčešće koristi u diskovnim poljima. Jednostavni zrcalni sustavi koriste dvije kopije podataka, a svaka se kopija nalazi na zasebnim diskovima. Ova shema je prilično jednostavna i ne zahtijeva dodatne hardverske troškove, ali ima jedan značajan nedostatak - koristi 50% prostora na disku za pohranjivanje kopije informacija.

Drugi način implementacije redundantnih diskovnih nizova je korištenje redundantnog kodiranja pomoću izračuna pariteta. Paritet se izračunava XOR-om svih znakova u podatkovnoj riječi. Korištenje pariteta u redundantnim diskovnim nizovima smanjuje opterećenje na vrijednost izračunatu formulom: HP hdd =1/N hdd (HP hdd - opterećenje; N hdd - broj diskova u nizu).

Povijest i razvoj RAID-a

Unatoč činjenici da se sustavi za pohranu temeljeni na magnetskim diskovima proizvode već 40 godina, masovna proizvodnja sustava otpornih na greške započela je tek nedavno. Redundantna diskovna polja, koja se obično nazivaju RAID (redundant arrays of inexpensive disks), predstavili su istraživači (Petterson, Gibson i Katz) na Kalifornijskom sveučilištu Berkeley 1987. godine. Ali RAID sustavi postali su rašireni tek kada su diskovi koji su bili prikladni za korištenje u redundantnim nizovima postali dostupni i dovoljno produktivni. Od bijele knjige o RAID-u 1988., istraživanje redundantnih diskovnih nizova je eksplodiralo u pokušaju da se pruži širok raspon kompromisa između cijene i učinka i pouzdanosti.

Svojedobno je došlo do incidenta sa skraćenicom RAID. Činjenica je da su se u vrijeme pisanja ovog članka svi diskovi koji su se koristili u osobnim računalima nazivali jeftinim diskovima, za razliku od skupih diskova za velika računala (mainframe računala). Ali za korištenje u RAID nizovima bilo je potrebno koristiti prilično skupu opremu u usporedbi s ostalim konfiguracijama računala, pa se RAID počeo dešifrirati kao redundant array of independent disks 2 - redundantni niz neovisnih diskova.

2 - Definicija RAID savjetodavnog odbora

Industrija je predstavila RAID 0 kao definiciju diskovnog niza koji nije otporan na pogreške. Berkeley je definirao RAID 1 kao zrcalno diskovno polje. RAID 2 je rezerviran za nizove koji koriste Hammingov kod. RAID razine 3, 4, 5 koriste paritet za zaštitu podataka od pojedinačnih grešaka. Te su razine, uključujući razinu 5, predstavljene na Berkeleyju, a ova je RAID taksonomija usvojena kao de facto standard.

RAID razine 3,4,5 prilično su popularne i imaju dobru iskorištenost prostora na disku, ali imaju jedan značajan nedostatak - otporne su samo na pojedinačne greške. To se posebno odnosi na korištenje velikog broja diskova, kada se povećava vjerojatnost istovremenog prekida rada više od jednog uređaja. Osim toga, karakterizira ih dugi oporavak, što također nameće neka ograničenja u njihovoj uporabi.

Danas je razvijen prilično velik broj arhitektura koje osiguravaju rad niza čak i uz istovremeni kvar bilo koja dva diska bez gubitka podataka. Među cijelim skupom vrijedi istaknuti dvodimenzionalni paritet i EVENODD, koji koriste paritet za kodiranje, te RAID 6, koji koristi Reed-Solomonovo kodiranje.

U shemi koja koristi paritet dvostrukog prostora, svaki blok podataka sudjeluje u konstrukciji dviju neovisnih kodnih riječi. Dakle, ako drugi disk u istoj kodnoj riječi zakaže, koristi se druga kodna riječ za rekonstrukciju podataka.

Minimalna redundancija u takvom nizu postiže se jednakim brojem stupaca i redaka. I jednako je: 2 x kvadrat (N disk) (u "kvadratu").

Ako dvoprostorni niz nije organiziran u "kvadrat", tada će pri implementaciji gornje sheme redundantnost biti veća.

EVENODD arhitektura ima shemu tolerancije grešaka sličnu dual-space paritetu, ali drugačiji položaj informacijskih blokova koji jamči minimalno iskorištenje redundantnog kapaciteta. Kao i kod dvoprostorne parnosti, svaki podatkovni blok sudjeluje u konstrukciji dviju neovisnih kodnih riječi, ali su riječi postavljene na takav način da je koeficijent redundantnosti konstantan (za razliku od prethodne sheme) i jednak je: 2 x kvadrat (N Disk).

Upotrebom dva znaka za provjeru, paritetnog i nebinarnog koda, podatkovna riječ može biti dizajnirana da pruži toleranciju na grešku kada se dogodi dvostruka greška. Ovaj dizajn je poznat kao RAID 6. Nebinarni kod, temeljen na Reed-Solomonovom kodiranju, obično se izračunava pomoću tablica ili kao iterativni proces pomoću linearnih registara zatvorene petlje, što je relativno složena operacija koja zahtijeva specijalizirani hardver.

S obzirom da korištenje klasičnih RAID opcija, koje pružaju dovoljnu toleranciju na pogreške za mnoge aplikacije, često ima nedopustivo niske performanse, istraživači s vremena na vrijeme provode različite poteze koji pomažu povećati performanse RAID sustava.

Godine 1996. Savage i Wilks predložili su AFRAID - Često redundantni niz neovisnih diskova. Ova arhitektura u određenoj mjeri žrtvuje toleranciju na pogreške radi izvedbe. U pokušaju da se kompenzira problem malog pisanja tipičan za nizove RAID razine 5, moguće je ostaviti striping bez izračuna pariteta određeno vrijeme. Ako je disk određen za paritetno snimanje zauzet, paritetno snimanje se odgađa. Teoretski je dokazano da smanjenje tolerancije grešaka od 25% može povećati performanse za 97%. AFRAID učinkovito mijenja model kvara pojedinačnih nizova otpornih na pogreške jer je kodna riječ koja nema ažurirani paritet osjetljiva na kvarove na disku.

Umjesto da žrtvujete toleranciju na greške, možete koristiti tradicionalne tehnike izvedbe kao što je predmemorija. S obzirom na to da je promet na disku nestašan, možete koristiti predmemoriju povratnog pisanja za pohranu podataka kada su diskovi zauzeti. A ako je predmemorija napravljena u obliku trajne memorije, tada će se podaci spremiti u slučaju nestanka struje. Osim toga, odgođene diskovne operacije omogućuju nasumično kombiniranje malih blokova za izvođenje učinkovitijih diskovnih operacija.

Postoje i mnoge arhitekture koje žrtvuju volumen kako bi povećale performanse. Među njima su odgođena modifikacija na log disku i razne sheme za modificiranje logičkog smještaja podataka u fizički, koje vam omogućuju učinkovitiju distribuciju operacija u nizu.

Jedna od opcija - zapis pariteta(registracija pariteta), što uključuje rješavanje problema malog pisanja i učinkovitijeg korištenja diskova. Zapisivanje pariteta odgađa promjene pariteta na RAID 5 bilježeći ih u FIFO zapisnik, koji se dijelom nalazi u memoriji kontrolera, a dijelom na disku. S obzirom na to da je pristup punoj stazi u prosjeku 10 puta učinkovitiji od pristupa sektoru, bilježenje pariteta prikuplja velike količine modificiranih podataka o paritetu, koji se zatim zajedno zapisuju na disk posvećen pohranjivanju pariteta na cijeloj stazi.

Arhitektura plutajući podaci i paritet(floating and parity), koji omogućuje preraspodjelu fizičkog smještaja diskovnih blokova. Slobodni sektori postavljeni su na svaki cilindar radi smanjenja rotacijska latencija(kašnjenja rotacije), podaci i paritet se dodjeljuju tim slobodnim prostorima. Kako bi se osigurao rad tijekom nestanka struje, paritet i mapa podataka moraju biti pohranjeni u trajnoj memoriji. Ako izgubite kartu položaja, izgubit će se svi podaci u nizu.

Virtualno skidanje- je plutajuća arhitektura podataka i pariteta koja koristi povratnu predmemoriju. Naravno, shvaćajući pozitivne strane oba.

Osim toga, postoje i drugi načini za poboljšanje performansi, kao što su RAID operacije. Svojedobno je Seagate ugradio podršku za RAID operacije u svoje pogone s Fiber Chanel i SCSI sučeljima. To je omogućilo smanjenje prometa između središnjeg kontrolera i diskova u nizu za sustave RAID 5. To je bila temeljna inovacija u području implementacije RAID-a, ali tehnologija nije zaživjela jer su neke značajke Fibera Standardi Chanel i SCSI slabe model kvara za diskovne nizove.

Za isti RAID 5 predstavljena je TickerTAIP arhitektura. To izgleda ovako - središnji upravljački mehanizam pokretački čvor (inicijatorski čvor) prima korisničke zahtjeve, odabire algoritam obrade i zatim prenosi rad diska i paritet na radni čvor (radni čvor). Svaki radni čvor obrađuje podskup diskova u nizu. Kao u Seagate modelu, radni čvorovi međusobno prenose podatke bez sudjelovanja inicijalnog čvora. Ako radni čvor zakaže, diskovi koje poslužuje postaju nedostupni. Ali ako je kodna riječ konstruirana na takav način da svaki njen simbol obrađuje zaseban radni čvor, tada shema tolerancije grešaka ponavlja RAID 5. Da bi se spriječili kvarovi početnog čvora, on se duplicira, čime dobivamo arhitekturu koja je otporan na kvarove bilo kojeg od svojih čvorova. Unatoč svim svojim pozitivnim značajkama, ova arhitektura pati od problema "rupe za pisanje". Što znači da dolazi do pogreške kada nekoliko korisnika promijeni kodnu riječ u isto vrijeme i čvor ne uspije.

Treba spomenuti i prilično popularnu metodu za brzo vraćanje RAID-a - korištenje slobodnog diska (rezervnog). Ako jedan od diskova u nizu pokvari, RAID se može vratiti korištenjem slobodnog diska umjesto pokvarenog. Glavna značajka ove implementacije je da sustav prelazi u svoje prethodno (fail-safe stanje bez vanjske intervencije). Kada koristite distribuiranu sparing arhitekturu, logički blokovi rezervnog diska fizički su raspoređeni po svim diskovima u nizu, eliminirajući potrebu za ponovnom izgradnjom niza u slučaju kvara diska.

Kako bi se izbjegao problem oporavka tipičan za klasične RAID razine, arhitektura tzv deklasterizacija pariteta(razdioba pariteta). To uključuje postavljanje manjeg broja logičkih pogona većeg kapaciteta na manje fizičke pogone većeg kapaciteta. Korištenjem ove tehnologije vrijeme odziva sustava na zahtjev tijekom rekonstrukcije je više od polovice poboljšano, a vrijeme rekonstrukcije značajno smanjeno.

Arhitektura osnovnih RAID razina

Sada pogledajmo detaljnije arhitekturu osnovnih razina RAID-a. Prije razmatranja, napravimo neke pretpostavke. Kako bismo demonstrirali principe izgradnje RAID sustava, razmotrimo skup od N diskova (radi jednostavnosti, pretpostavit ćemo da je N paran broj), od kojih se svaki sastoji od M blokova.

Podatke ćemo označavati - D m,n, gdje je m broj blokova podataka, n broj podblokova na koje je blok podataka D podijeljen.

Diskovi se mogu spojiti na jedan ili više kanala za prijenos podataka. Korištenje više kanala povećava propusnost sustava.

RAID 0. Striped Disk Array bez tolerancije na greške

To je diskovno polje u kojem su podaci podijeljeni u blokove, a svaki blok se zapisuje (ili čita) na poseban disk. Stoga se više I/O operacija može izvoditi istovremeno.

Prednosti:

  • najviše performanse za aplikacije koje zahtijevaju intenzivnu obradu I/O zahtjeva i velike količine podataka;
  • jednostavnost implementacije;
  • niska cijena po jedinici volumena.

Mane:

  • nije rješenje otporno na pogreške;
  • Kvar jednog pogona rezultira gubitkom svih podataka u nizu.

RAID 1. Redundantno diskovno polje ili zrcaljenje

Zrcaljenje je tradicionalni način povećanja pouzdanosti malog diskovnog polja. U najjednostavnijoj verziji koriste se dva diska na kojima se snimaju iste informacije, a ako jedan od njih zakaže, ostaje njegov duplikat koji nastavlja raditi u istom načinu rada.

Prednosti:

  • jednostavnost implementacije;
  • jednostavnost oporavka polja u slučaju kvara (kopiranje);
  • dovoljno visoke performanse za aplikacije s visokim intenzitetom zahtjeva.

Mane:

  • visoki trošak po jedinici volumena - 100% redundancija;
  • niska brzina prijenosa podataka.

RAID 2. Diskovni niz otporan na pogreške koji koristi Hammingov kod ECC.

Suvišno kodiranje koje se koristi u RAID 2 naziva se Hammingov kod. Hammingov kod omogućuje ispravljanje pojedinačnih grešaka i otkrivanje dvostrukih grešaka. Danas se aktivno koristi u tehnologiji kodiranja podataka u RAM-u tipa ECC. I kodiranje podataka na magnetskim diskovima.

U ovom slučaju prikazan je primjer s fiksnim brojem diskova zbog glomaznosti opisa (podatkovna riječ sastoji se od 4 bita, odnosno ECC kod je 3).

Prednosti:

  • brzo ispravljanje grešaka (“on the fly”);
  • vrlo velika brzina prijenosa podataka za velike količine;
  • kako se broj diskova povećava, režijski troškovi se smanjuju;
  • prilično jednostavna implementacija.

Mane:

  • visoka cijena s malim brojem diskova;
  • mala brzina obrade zahtjeva (nije prikladno za sustave orijentirane na transakcije).

RAID 3. Niz otporan na pogreške s paralelnim prijenosom podataka i paritetom (Parallel Transfer Disks with Parity)

Podaci se dijele na podblokove na razini bajtova i istovremeno zapisuju na sve diskove u nizu osim na jedan, koji se koristi za paritet. Korištenje RAID-a 3 rješava problem visoke zalihosti u RAID-u 2. ​​Većina kontrolnih diskova koji se koriste u RAID razini 2 potrebni su za određivanje položaja pokvarenog bita. Ali to nije potrebno, budući da većina kontrolera može odrediti kada je disk pokvaren korištenjem posebnih signala ili dodatnog kodiranja informacija zapisanih na disku i korištenih za ispravljanje slučajnih kvarova.

Prednosti:

  • vrlo velika brzina prijenosa podataka;
  • kvar diska ima mali utjecaj na brzinu niza;

Mane:

  • teška provedba;
  • niske performanse s visokim intenzitetom zahtjeva za malim podacima.

RAID 4. Niz neovisnih diskova otpornih na pogreške s dijeljenim paritetnim diskom (Independent Data disks with shared Parity disk)

Podaci se raščlanjuju na razini bloka. Svaki blok podataka zapisuje se na poseban disk i može se zasebno čitati. Paritet za grupu blokova generira se prilikom pisanja i provjerava prilikom čitanja. RAID Level 4 poboljšava performanse malih prijenosa podataka kroz paralelizam, dopuštajući da se više od jednog I/O pristupa izvodi istovremeno. Glavna razlika između RAID-a 3 i 4 je u tome što se u potonjem raščlanjivanje podataka izvodi na razini sektora, a ne na razini bita ili bajta.

Prednosti:

  • vrlo velika brzina čitanja velikih količina podataka;
  • visoke performanse pri visokom intenzitetu zahtjeva za čitanje podataka;
  • niske režijske troškove za implementaciju redundancije.

Mane:

  • vrlo niske performanse pri pisanju podataka;
  • mala brzina čitanja malih podataka s pojedinačnim zahtjevima;
  • asimetrija izvedbe u čitanju i pisanju.

RAID 5. Niz nezavisnih diskova s ​​distribuiranim paritetom otporan na pogreške (Independent Data disks with distributed parity blocks)

Ova je razina slična RAID-u 4, ali za razliku od prethodne, paritet se ciklički raspoređuje na sve diskove u nizu. Ova promjena poboljšava izvedbu pisanja malih količina podataka na multitasking sustavima. Ako su operacije pisanja ispravno planirane, moguće je paralelno obraditi do N/2 blokova, gdje je N broj diskova u grupi.

Prednosti:

  • velika brzina snimanja podataka;
  • prilično visoka brzina čitanja podataka;
  • visoke performanse pri visokom intenzitetu zahtjeva za čitanje/pisanje podataka;
  • niske režijske troškove za implementaciju redundancije.

Mane:

  • Brzina čitanja podataka manja je nego u RAID 4;
  • mala brzina čitanja/pisanja malih podataka s pojedinačnim zahtjevima;
  • prilično složena implementacija;
  • složeni oporavak podataka.

RAID 6. Niz neovisnih diskova otpornih na pogreške s dvije neovisne raspodijeljene paritetne sheme (Nezavisni podatkovni diskovi s dvije neovisne distribuirane paritetne sheme)

Podaci su particionirani na razini bloka, slično RAID 5, ali uz prethodnu arhitekturu koristi se druga shema za poboljšanje tolerancije na greške. Ova arhitektura otporna je na dvostruku grešku. Međutim, kada se izvodi logičko pisanje, zapravo postoji šest pristupa disku, što uvelike povećava vrijeme obrade jednog zahtjeva.

Prednosti:

  • visoka tolerancija grešaka;
  • prilično velika brzina obrade zahtjeva;
  • relativno niske režijske troškove za implementaciju redundancije.

Mane:

  • vrlo složena izvedba;
  • složeni oporavak podataka;
  • vrlo niska brzina pisanja podataka.

Moderni RAID kontroleri omogućuju vam kombiniranje različitih RAID razina. Na ovaj način moguće je implementirati sustave koji objedinjuju prednosti različitih razina, kao i sustave s velikim brojem diskova. Obično je ovo kombinacija nulte razine (skidanje) i neke vrste razine otporne na greške.

RAID 10. Polje otporno na pogreške s dupliciranjem i paralelnom obradom

Ova arhitektura je niz RAID 0 čiji su segmenti nizovi RAID 1. Kombinira vrlo visoku toleranciju grešaka i performanse.

Prednosti:

  • visoka tolerancija grešaka;
  • visoke performanse.

Mane:

  • vrlo visoka cijena;
  • ograničeno skaliranje.

RAID 30. Polje otporno na pogreške s paralelnim prijenosom podataka i povećanom izvedbom.

To je niz RAID 0, čiji segmenti su nizovi RAID 3. Kombinira toleranciju na pogreške i visoke performanse. Obično se koristi za aplikacije koje zahtijevaju velike količine serijskih prijenosa podataka.

Prednosti:

  • visoka tolerancija grešaka;
  • visoke performanse.

Mane:

  • visoka cijena;
  • ograničeno skaliranje.

RAID 50: Polje otporno na pogreške s distribuiranim paritetom i povećanom izvedbom

To je niz RAID 0, čiji segmenti su nizovi RAID 5. Kombinira toleranciju na pogreške i visoke performanse za aplikacije s visokim intenzitetom zahtjeva i visokim brzinama prijenosa podataka.

Prednosti:

  • visoka tolerancija grešaka;
  • velika brzina prijenosa podataka;
  • velika brzina obrade zahtjeva.

Mane:

  • visoka cijena;
  • ograničeno skaliranje.

RAID 7: Niz otporan na greške optimiziran za performanse. (Optimizirana asinkronija za visoke I/O stope kao i visoke brzine prijenosa podataka). RAID 7® je registrirani zaštitni znak tvrtke Storage Computer Corporation (SCC)

Da bismo razumjeli RAID 7 arhitekturu, pogledajmo njegove značajke:

  1. Svi zahtjevi za prijenos podataka obrađuju se asinkrono i neovisno.
  2. Sve operacije čitanja/pisanja pohranjuju se u predmemoriju putem brze x-sabirnice.
  3. Paritetni disk se može postaviti na bilo koji kanal.
  4. Mikroprocesor kontrolera polja koristi operativni sustav u stvarnom vremenu usmjeren na procese obrade.
  5. Sustav ima dobru skalabilnost: do 12 host sučelja i do 48 diskova.
  6. Operativni sustav kontrolira komunikacijske kanale.
  7. Koriste se standardni SCSI diskovi, sabirnice, matične ploče i memorijski moduli.
  8. Za rad s internom cache memorijom koristi se X-bus velike brzine.
  9. Postupak generiranja pariteta integriran je u predmemoriju.
  10. Diskovi priključeni na sustav mogu se deklarirati kao zasebni.
  11. SNMP agent se može koristiti za upravljanje i nadzor sustava.

Prednosti:

  • velika brzina prijenosa podataka i velika brzina obrade zahtjeva (1,5 - 6 puta veća od ostalih standardnih RAID razina);
  • visoka skalabilnost host sučelja;
  • brzina zapisivanja podataka raste s brojem diskova u nizu;
  • Nema potrebe za dodatnim prijenosom podataka za izračun pariteta.

Mane:

  • vlasništvo jednog proizvođača;
  • vrlo visoki trošak po jedinici volumena;
  • kratko jamstveno razdoblje;
  • korisnik ne može servisirati;
  • morate koristiti neprekidni izvor napajanja kako biste spriječili gubitak podataka iz predmemorije.

Pogledajmo sada zajedno standardne razine kako bismo usporedili njihove karakteristike. Usporedba je napravljena u okviru arhitektura navedenih u tablici.

RAIDMinimum
diskovi
Potreba
u diskovima
Neuspjeh
održivost
Ubrzati
prijenos podataka
Intenzitet
obrada
zahtjevi
Praktično
korištenje
0 2 N vrlo visoko
do N x 1 disk
Grafika, video
1 2 2N* R > 1 disk
W = 1 disk
do 2 x 1 disk
W = 1 disk
male poslužitelje datoteka
2 7 2N ~RAID 3Niskaglavna računala
3 3 N+1 NiskaGrafika, video
4 3 N+1 R WR=RAID 0
W
poslužitelji datoteka
5 3 N+1 R WR=RAID 0
W
poslužitelji baze podataka
6 4 N+2najvišinizakR > 1 disk
W
korišten izuzetno rijetko
7 12 N+1 najvišinajviširazličite vrste aplikacija

Pojašnjenja:

  • * - uzima se u obzir najčešće korištena opcija;
  • k - broj podsegmenata;
  • R - čitanje;
  • W - rekord.

Neki aspekti implementacije RAID sustava

Razmotrimo tri glavne opcije za implementaciju RAID sustava:

  • softver (temeljen na softveru);
  • hardver - baziran na sabirnici;
  • hardverski – autonomni podsustav (baziran na podsustavu).

Nemoguće je jednoznačno reći da je bilo koja implementacija bolja od druge. Svaka opcija za organiziranje niza zadovoljava potrebe jednog ili drugog korisnika, ovisno o financijskim mogućnostima, broju korisnika i korištenim aplikacijama.

Svaka od navedenih implementacija temelji se na izvršavanju programskog koda. Zapravo se razlikuju po tome gdje se ovaj kod izvršava: u središnjem procesoru računala (softverska implementacija) ili u specijaliziranom procesoru na RAID kontroleru (hardverska implementacija).

Glavna prednost implementacije softvera je niska cijena. Ali u isto vrijeme ima mnogo nedostataka: niske performanse, opterećenje središnjeg procesora dodatnim radom i povećan promet autobusa. Jednostavne RAID razine 0 i 1 obično se implementiraju u softver, budući da ne zahtijevaju značajno računanje. Uzimajući u obzir ove značajke, RAID sustavi temeljeni na softveru koriste se u početnim poslužiteljima.

Hardverske RAID implementacije stoga koštaju više od softverskih, budući da koriste dodatni hardver za obavljanje I/O operacija. U isto vrijeme rasterećuju ili oslobađaju središnji procesor i sistemsku sabirnicu te, u skladu s tim, omogućuju povećanje performansi.

Bus orijentirane implementacije su RAID kontroleri koji koriste brzu sabirnicu računala u koje su ugrađeni (u posljednje vrijeme najčešće se koristi PCI sabirnica). Zauzvrat, implementacije orijentirane na sabirnicu mogu se podijeliti na nisku i visoku razinu. Prvi obično nemaju SCSI čipove i koriste takozvani RAID port na matičnoj ploči s ugrađenim SCSI kontrolerom. U ovom slučaju, funkcije obrade RAID koda i I/O operacija raspoređene su između procesora na RAID kontroleru i SCSI čipova na matičnoj ploči. Tako je središnji procesor oslobođen obrade dodatnog koda, a promet sabirnice je smanjen u usporedbi s verzijom softvera. Cijena takvih ploča obično je niska, pogotovo ako su usmjerene na RAID 0 ili 1 sustave (postoje i implementacije RAID 3, 5, 10, 30, 50, ali su skuplje), zbog čega se postupno istiskujući softverske implementacije s tržišta početnih poslužitelja. Kontroleri visoke razine s implementacijom sabirnice imaju nešto drugačiju strukturu od svoje mlađe braće. Oni preuzimaju sve funkcije vezane uz I/O i izvršavanje RAID koda. Osim toga, oni nisu toliko ovisni o implementaciji matične ploče i, u pravilu, imaju više mogućnosti (na primjer, mogućnost povezivanja modula za pohranjivanje informacija u predmemoriju u slučaju kvara matične ploče ili nestanka struje) . Takvi kontroleri obično su skuplji od kontrolera niže klase i koriste se u poslužiteljima srednje i visoke klase. Oni, u pravilu, implementiraju RAID razine 0.1, 3, 5, 10, 30, 50. S obzirom da su implementacije orijentirane na sabirnicu povezane izravno na internu PCI sabirnicu računala, one su najproduktivnije među sustavima koji se razmatraju ( pri organiziranju sustava s jednim domaćinom). Maksimalne performanse takvih sustava mogu doseći 132 MB/s (32-bitni PCI) ili 264 MB/s (64-bitni PCI) na frekvenciji sabirnice od 33MHz.

Uz navedene prednosti, autobusno orijentirana arhitektura ima sljedeće nedostatke:

  • ovisnost o operativnom sustavu i platformi;
  • ograničena skalabilnost;
  • ograničene mogućnosti organiziranja sustava otpornih na greške.

Svi ovi nedostaci mogu se izbjeći korištenjem autonomnih podsustava. Ovi sustavi imaju potpuno autonomnu vanjsku organizaciju i u principu su zasebno računalo koje se koristi za organiziranje sustava za pohranu informacija. Osim toga, ako se tehnologija optičkih kanala uspješno razvije, izvedba autonomnih sustava neće biti ni na koji način inferiornija od sustava orijentiranih na sabirnicu.

Obično se vanjski kontroler nalazi u zasebnom stalku i, za razliku od sustava s organizacijom sabirnice, može imati veliki broj ulazno/izlaznih kanala, uključujući host kanale, što omogućuje povezivanje nekoliko host računala na sustav i organiziranje klastera sustava. U sustavima sa samostalnim regulatorom mogu se implementirati hot standby regulatori.

Jedan od nedostataka autonomnih sustava je njihova visoka cijena.

Uzimajući u obzir gore navedeno, napominjemo da se autonomni kontroleri obično koriste za implementaciju sustava za pohranu podataka velikog kapaciteta i klasterskih sustava.

Najbolji članci na temu