Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • Greške
  • Šta su RAID nizovi i zašto su potrebni? RAID niz

Šta su RAID nizovi i zašto su potrebni? RAID niz

Sada da vidimo koje vrste postoje i po čemu se razlikuju.

Univerzitet Kalifornije u Berkliju uveo je sljedeće nivoe RAID specifikacije, koji su usvojeni kao de facto standard:

  • RAID 0- niz diskova visokih performansi sa trakama, bez tolerancije grešaka;
  • - zrcaljeno polje diskova;
  • RAID 2 rezervirano za nizove koji koriste Hammingov kod;
  • RAID 3 i 4- nizovi diskova sa stripingom i namjenskim paritetnim diskom;
  • - niz diskova sa stripingom i “nelociranim paritetnim diskom”;
  • - interleaved disk array koristeći dvije kontrolne sume izračunate na dva nezavisna 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 podržati nekoliko različitih RAID nizova istovremeno, čiji ukupan broj tvrdih diskova ne prelazi broj konektora za njih. Istovremeno, kontroler ugrađen u matičnu ploču ima samo dva stanja u BIOS postavkama (omogućeno ili onemogućeno), tako da novi čvrsti disk povezan na neiskorišteni konektor kontrolera sa aktiviranim RAID načinom može biti ignorisan od strane sistema dok se ne poveže kao drugi RAID -JBOD (spanned) niz koji se sastoji od jednog diska.

RAID 0 (prugasto - "alternacija")

Način rada koji postiže maksimalne performanse. Podaci su ravnomjerno raspoređeni po diskovima niza; diskovi se kombiniraju u jedan, koji se može podijeliti na nekoliko. 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štava i oporavak podataka je gotovo nemoguć. Opseg primjene - aplikacije koje zahtijevaju velike brzine razmjene sa diskom, na primjer snimanje videa, uređivanje videa. Preporučuje se za upotrebu sa visoko pouzdanim diskovima.

(zrcaljenje - “zrcaljenje”)

niz od dva diska koji su potpune kopije jedan drugog. Ne treba ih brkati sa RAID 1+0, RAID 0+1 i RAID 10 nizovima, koji koriste više od dva diska i složenije mehanizme preslikavanja.

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

Ima visoku pouzdanost - radi sve dok barem jedan disk u nizu radi. Verovatnoća kvara dva diska odjednom jednaka je proizvodu verovatnoće kvara svakog diska, tj. znatno manja od vjerovatnoće kvara pojedinog diska. U praksi, ako jedan od diskova pokvari, mora se odmah poduzeti radnja za vraćanje redundantnosti. Da biste to učinili, preporučuje se korištenje vrućih rezervnih diskova sa bilo kojim RAID nivoom (osim nulte).

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

RAID 2, 3, 4

razne opcije za pohranu distribuiranih podataka s diskovima dodijeljenim za paritetne kodove i različite veličine blokova. Trenutno se praktički ne koriste zbog niskih performansi i potrebe da se dodijeli veliki kapacitet diska za pohranjivanje ECC i/ili paritetnih kodova.

Glavni nedostatak RAID nivoa od 2 do 4 je nemogućnost obavljanja paralelnih operacija pisanja, budući da se za skladištenje informacija o paritetu koristi poseban kontrolni disk. RAID 5 nema ovaj nedostatak. Blokovi podataka i kontrolni sumi se ciklički upisuju na sve diskove niza; nema asimetrije u konfiguraciji diska. Kontrolne sume znače rezultat operacije XOR (isključiva ili). Xor ima funkciju koja omogućava zamjenu bilo kojeg operanda rezultatom, i primjenom algoritma xor, kao rezultat dobijete operand koji nedostaje. Na primjer: a xor b = c(Gdje a, b, c- tri diska raid niza), u slučaju a odbije, možemo ga dobiti tako što ćemo ga staviti na njegovo mjesto c i nakon trošenja xor između c I b: c xor b = a. Ovo se primjenjuje bez obzira na broj operanada: a xor b xor c xor d = e. Ako odbije c Onda e zauzima svoje mjesto i drži xor kao rezultat dobijamo c: a xor b xor e xor d = c. Ova metoda u suštini pruža 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 raid-u.

Prednosti

RAID5 je postao široko rasprostranjen, prvenstveno zbog svoje isplativosti. Kapacitet niza diskova RAID5 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 u RAID 5 volumen zahtijeva dodatne resurse i smanjuje se performanse, jer su potrebne dodatne kalkulacije i operacije pisanja, ali pri čitanju (u poređenju sa zasebnim čvrstim diskom) postoji dobit jer se tokovi podataka s nekoliko diskova u nizu mogu obrađene paralelno.

Nedostaci

Performanse RAID-a 5 su znatno niže, posebno na operacijama kao što je nasumično upisivanje, u kojima performanse opadaju za 10-25% performansi RAID-a 0 (ili RAID-a 10), jer zahtijeva više operacija na disku (svaka operacija upisuje, sa izuzev takozvanog full-stripe pisanja, server se na RAID kontroleru zamjenjuje sa četiri - dvije operacije čitanja i dvije operacije pisanja). Nedostaci RAID-a 5 pojavljuju se kada jedan od diskova pokvari - cijeli volumen prelazi u kritični mod (degradiranje), sve operacije pisanja i čitanja su praćene dodatnim manipulacijama, a performanse naglo opadaju. U ovom slučaju, nivo pouzdanosti se svodi na pouzdanost RAID-0 sa odgovarajućim brojem diskova (tj. n puta manjim od pouzdanosti jednog diska). Ako prije nego što se niz potpuno obnovi, dođe do kvara ili se pojavi nepopravljiva greška čitanja na barem još jednom disku, tada se niz uništava i podaci na njemu se ne mogu vratiti konvencionalnim metodama. Također treba uzeti u obzir da proces rekonstrukcije RAID-a (oporavak RAID podataka putem redundancije) nakon kvara diska uzrokuje intenzivno čitanje s diskova više sati neprekidno, što može uzrokovati kvar bilo kojeg od preostalih diskova u najmanje zaštićeni period rada RAID-a, kao i identifikovanje prethodno neotkrivenih grešaka čitanja u hladnim nizovima podataka (podaci kojima se ne pristupa tokom normalnog rada niza, arhivirani i neaktivni podaci), što povećava rizik od kvara tokom oporavka podataka.

Minimalni broj korištenih diskova je tri.

RAID 6 je sličan RAID-u 5, ali ima veći stepen pouzdanosti - kapacitet od 2 diska je dodijeljen za kontrolne sume, 2 iznosa se izračunavaju pomoću različitih algoritama. Zahtijeva snažniji RAID kontroler. Osigurava rad nakon istovremenog kvara dva diska - zaštitu od višestrukih kvarova. Za organizaciju niza potrebna su najmanje 4 diska. Tipično, korištenje RAID-6 uzrokuje oko 10-15% pad performansi 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 za čitanje i ponovno pisanje više blokova diska prilikom pisanja svakog bloka).

RAID 0+1

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

  • dva RAID-a 0 se kombinuju u RAID 1;
  • tri ili više diskova se kombinuju u niz, a svaki blok podataka se upisuje na dva diska ovog niza; Dakle, sa ovim pristupom, kao u „čistom“ RAID 1, korisna zapremina niza je polovina ukupnog volumena svih diskova (ako su to diskovi istog kapaciteta).

RAID 10 (1+0)

RAID 10 je zrcaljeni niz u kojem se podaci upisuju uzastopno na nekoliko diskova, kao što je RAID 0. Ova arhitektura je niz tipa RAID 0, čiji su segmenti RAID 1 nizovi umjesto pojedinačnih diskova. Prema tome, niz ovog nivo mora sadržavati najmanje 4 diska (i uvijek paran broj). RAID 10 kombinuje visoku toleranciju grešaka i performanse.

Tvrdnja da je RAID 10 najpouzdanija opcija za skladištenje podataka sasvim je opravdana činjenicom da će niz biti onemogućen nakon kvara svih diskova u istom nizu. Ako jedan disk pokvari, šansa za kvar drugog u istom nizu je 1/3*100=33%. RAID 0+1 neće uspjeti ako dva diska pokvare u različitim nizovima. Šansa za kvar diska u susjednom nizu je 2/3*100=66%, međutim, pošto se disk u nizu sa već neispravnim pogonom više ne koristi, postoji šansa da će sljedeći disk otkazati cijeli niz je 2/2 *100=100%

niz sličan RAID5, međutim, pored distribuiranog skladištenja paritetnih kodova, koristi se i distribucija rezervnih područja - u stvari, koristi se čvrsti disk, koji se može dodati u RAID5 niz kao rezervni (takvi nizovi se nazivaju 5+ ili 5+ rezervni). U RAID 5 nizu, rezervni disk je neaktivan dok jedan od glavnih tvrdih diskova ne pokvari, dok se u RAID 5EE nizu ovaj disk cijelo vrijeme dijeli s ostatkom HDD-a, što ima pozitivan učinak na performanse niz. Na primjer, RAID5EE niz od 5 HDD-a će moći da izvrši 25% više I/O operacija u sekundi od RAID5 niza od 4 primarna i jednog rezervnog HDD-a. Minimalni broj diskova za takav niz je 4.

kombinovanje dva (ili više, ali se to izuzetno retko koristi) RAID5 niza u traku, tj. kombinacija RAID5 i RAID0, koja djelimično ispravlja glavni nedostatak RAID5 - nisku brzinu pisanja podataka zbog paralelne upotrebe nekoliko takvih nizova. Ukupni kapacitet niza je smanjen za kapacitet dva diska, ali, za razliku od RAID6, takav niz može tolerisati kvar samo jednog diska bez gubitka podataka, a minimalno potreban broj diskova za kreiranje RAID50 niza je 6. Uz RAID10, ovo je najpreporučljiviji nivo RAID-a za korištenje u aplikacijama gdje su potrebne visoke performanse u kombinaciji sa prihvatljivom pouzdanošću.

kombinujući dva RAID6 niza u traku. Brzina pisanja je približno udvostručena u poređenju sa brzinom pisanja u RAID6. Minimalni broj diskova za kreiranje 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 - "fail-safe niz nezavisnih diskova" (ranije se ponekad koristila riječ Jeftin umjesto Nezavisan). Koncept strukture koja se sastoji od više diskova kombinovanih u grupu koja obezbeđuje toleranciju grešaka rođen je 1987. godine u glavnom radu Pattersona, Gibsona i Katza.

Originalni RAID tipovi

RAID-0
Ako vjerujemo da je RAID “tolerantnost grešaka” (Redundant...), onda je RAID-0 “nulta tolerancija grešaka”, odsustvo iste. RAID-0 struktura je „prugasti niz diskova“. Blokovi podataka se upisuju jedan po jedan na sve diskove uključene u niz, redom. Ovo povećava performanse, idealno za onoliko puta koliko je broj diskova uključenih u niz, budući da je snimanje paralelno između nekoliko uređaja.
Međutim, pouzdanost se smanjuje za istu količinu, jer će podaci biti izgubljeni ako bilo koji od diskova uključenih u niz pokvari.

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

RAID-10
Pokušaj da se kombinuju prednosti dve vrste RAID-a i da im se liše urođenih nedostataka. Ako uzmemo RAID-0 grupu sa povećanim performansama, i svakom od njih (ili cijelom nizu) damo "zrcaljene" diskove kako bismo zaštitili podatke od gubitka zbog kvara, dobit ćemo niz otporan na greške sa povećanim performansama kao rezultat korištenja prugasta.
Danas, "u divljini" ovo je jedan od najpopularnijih tipova RAID-a.
Nedostaci - sve gore navedene prednosti plaćamo sa polovinom ukupnog kapaciteta diskova uključenih u niz.

RAID-2
Ostala je potpuno teoretska opcija. Ovo je niz u kojem su podaci kodirani Hammingovim kodom otpornim na greške, koji vam omogućava da vratite pojedinačne neispravne fragmente zbog njegove redundancije. Inače, razne modifikacije Hamingovog koda, kao i njegovi naslednici, koriste se u procesu čitanja podataka sa magnetnih glava tvrdih diskova i optičkih CD/DVD čitača.

RAID-3 i 4
„Kreativni razvoj“ ideje zaštite podataka redundantnim kodom. Hamingov kod je neophodan u slučaju „stalno nepouzdanog“ toka zasićenog kontinuiranim slabo predvidljivim greškama, kao što je, na primjer, bučni zračni komunikacijski kanal. Međutim, u slučaju tvrdih diskova, glavni problem nisu greške u čitanju (smatramo da hard diskovi izlaze podatke u obliku u kojem smo mi napisali, ako radi), već kvar cijelog diska.
Za takve uvjete možete kombinirati shemu crtanja (RAID-0) i, kako biste se zaštitili od kvara jednog od diskova, dopuniti snimljene informacije redundantnošću, što će vam omogućiti da vratite podatke ako se neki dio izgubi, dodjeljivanjem dodatnog diska za to.
Ako izgubimo bilo koji od diskova s ​​podacima, možemo vratiti podatke pohranjene na njemu pomoću jednostavnih matematičkih operacija nad redundantnim podacima; ako disk sa redundantnim podacima ne uspije, i dalje imamo podatke koji se čitaju iz diskovnog niza tipa RAID-0.
Opcije RAID-3 i RAID-4 se razlikuju po tome što se u prvom slučaju prepliću pojedinačni bajtovi, au drugom se prepliću grupe bajtova, „blokovi“.
Glavni nedostatak ove dvije šeme je ekstremno mala brzina upisivanja u niz, budući da svaka operacija pisanja uzrokuje ažuriranje „kontrolne sume“, bloka redundancije za zapisane informacije. Očigledno je da je, uprkos prugastoj strukturi, performanse RAID-3 i RAID-4 niza ograničene performansama jednog diska, onog na kojem se nalazi „blok redundanse“.

RAID-5
Pokušaj da se zaobiđe ovo ograničenje doveo je do sljedećeg tipa RAID-a, koji je trenutno najrašireniji, zajedno sa RAID-10. Ako pisanje “bloka redundantnosti” na disk ograničava cijeli niz, proširimo ga i na diskove niza, napravimo nedodijeljeni disk za ove informacije, čime će operacije ažuriranja redundantnosti biti raspoređene na sve diskove niza. Odnosno, kao iu slučaju RAID-3(4), uzimamo diskove za pohranjivanje N informacija u količini od N + 1 disk, ali za razliku od tipa 3 i 4, ovaj disk se također koristi za pohranjivanje podataka pomiješanih sa redundantnim podacima , kao i ostali N.
Nedostaci? Šta bi bilo bez njih? Problem sa sporim snimanjem je djelimično riješen, ali još uvijek ne u potpunosti. Međutim, upisivanje u RAID-5 niz je sporije od pisanja u RAID-10 niz. Ali RAID-5 je „isplativiji“. Za RAID-10 toleranciju na greške plaćamo sa tačno polovinom diskova, au slučaju RAID-5 to je samo jedan disk.

Međutim, brzina pisanja opada proporcionalno povećanju broja diskova u nizu (za razliku od RAID-0, gdje se samo povećava). To je zbog činjenice da prilikom pisanja bloka podataka, niz treba ponovo izračunati redundantni blok, za koji čita preostale "horizontalne" blokove i ponovo izračunava blok redundancije u skladu s njihovim podacima. To jest, za jednu operaciju pisanja, niz od 8 diskova (7 diskova sa podacima + 1 dodatni) izvršit će 6 operacija čitanja u keš memoriju (preostali blokovi podataka sa svih diskova za izračunavanje bloka redundancije), izračunajte blok redundancije iz ovih blokova i izvrši 2 upisivanja (upisivanje bloka snimljenih podataka i prepisivanje bloka redundanse). U savremenim sistemima, problem je djelimično ublažen keširanjem, ali ipak, produžavanje RAID-5 grupe, iako uzrokuje proporcionalno povećanje brzine čitanja, također uzrokuje odgovarajuće smanjenje brzine pisanja.
Situacija sa smanjenim performansama prilikom pisanja u RAID-5 ponekad izaziva zanimljiv ekstremizam, na primjer, http://www.baarf.com/ ;)

Međutim, budući da je RAID-5 najefikasnija RAID struktura u smislu potrošnje diska po "linearnom megabajtu", on se široko koristi tamo gdje smanjenje brzine pisanja nije odlučujući parametar, na primjer, za dugotrajno skladištenje podataka ili za podatke koji se prvenstveno čitaju.
Posebno treba spomenuti da proširenje RAID-5 diskovnog niza dodavanjem dodatnog diska uzrokuje potpuno ponovno izračunavanje cijelog RAID-a, što može potrajati satima, au nekim slučajevima i danima, tokom kojih performanse niza katastrofalno opadaju.

RAID-6
Dalji razvoj RAID-5 ideje. Ako izračunamo dodatnu redundantnost prema zakonu različitom od onog koji se koristi u RAID-5, tada možemo zadržati pristup podacima ako dva diska niza pokvare.
Cijena za to je dodatni disk za podatke drugog „bloka redundanse“. Odnosno, da bismo pohranili podatke jednak volumenu N diskova, trebat ćemo uzeti N + 2 diska. „Matematika“ izračunavanja redundantnih blokova postaje složenija, što uzrokuje još veće smanjenje brzine pisanja u odnosu na RAID-5 , ali se povećava pouzdanost. Štaviše, u nekim slučajevima čak i premašuje nivo pouzdanosti RAID-10. Lako je uočiti da RAID-10 može izdržati i kvar dva diska u nizu, međutim, ako ti diskovi pripadaju istom „ogledalu“ ili različitim, ali ne i dva preslikana diska. A vjerovatnoća upravo takve situacije ne može se zanemariti.

Do daljeg povećanja broja RAID tipova dolazi zbog „hibridizacije“, tako se pojavljuje RAID-0+1, koji je postao već diskutovani RAID-10, ili sve vrste himeričnih RAID-51 i tako dalje.
Srećom, oni se ne nalaze u divljim životinjama, obično ostaju „san uma“ (pa, osim RAID-10 koji je već opisan).

Sve moderne matične ploče su opremljene integrisanim RAID kontrolerom, a vrhunski modeli imaju čak i nekoliko integrisanih RAID kontrolera. U kojoj mjeri su integrirani RAID kontroleri traženi od strane kućnih korisnika, posebno je pitanje. U svakom slučaju, moderna matična ploča pruža korisniku mogućnost kreiranja RAID niza od nekoliko diskova. Međutim, ne zna svaki kućni korisnik kako da kreira RAID niz, koji nivo niza da odabere i generalno nema pojma o prednostima i nedostacima korišćenja RAID nizova.
U ovom članku daćemo kratke preporuke za kreiranje RAID nizova na kućnim računarima i na konkretnom primeru demonstrirati kako možete samostalno testirati performanse RAID niza.

Istorija stvaranja

Termin “RAID niz” se prvi put pojavio 1987. godine, kada su američki istraživači Patterson, Gibson i Katz sa Univerziteta Berkeley u Kaliforniji u svom članku “Slučaj za redundantne nizove jeftinih diskova, RAID” opisali kako na ovaj način možete kombinirati nekoliko jeftine hard diskove u jedan logički uređaj tako da se rezultirajući kapacitet i performanse sistema povećaju, a kvar pojedinačnih diskova ne dovodi do kvara čitavog sistema.

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

Princip rada

Dakle, RAID je redundantni niz nezavisnih diskova (Redundant Arrays of Independent Discs), koji ima zadatak da osigura toleranciju grešaka i poveća performanse. Tolerancija grešaka se postiže redundantnošću. Odnosno, dio kapaciteta diskovnog prostora se dodjeljuje za službene svrhe, postajući nedostupan korisniku.

Povećane performanse diskovnog podsistema osigurava se istovremenim radom više diskova, i 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 nezavisnog pristupa. Sa paralelnim pristupom, prostor na disku je podijeljen na blokove (trake) za snimanje podataka. Slično, informacije koje treba zapisati na disk se dijele na iste blokove. Prilikom pisanja, pojedinačni blokovi se upisuju na različite diskove, a više blokova se istovremeno upisuje na različite diskove, što dovodi do povećanja performansi u operacijama pisanja. Potrebne informacije se takođe čitaju u odvojenim blokovima istovremeno sa više diskova, što takođe povećava performanse proporcionalno broju diskova u nizu.

Treba napomenuti da se model paralelnog pristupa implementira samo ako je veličina zahtjeva za upisivanje podataka veća od veličine samog bloka. Inače, paralelno snimanje nekoliko blokova je gotovo nemoguće. Zamislimo situaciju u kojoj je veličina pojedinačnog bloka 8 KB, a veličina zahtjeva za pisanje podataka 64 KB. U ovom slučaju, izvorne informacije se izrezuju u osam blokova od 8 KB svaki. Ako imate niz od četiri diska, možete pisati četiri bloka, ili 32 KB, odjednom. Očigledno 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 suštinski drugačiji model - nezavisni pristup. Štaviše, ovaj model se može koristiti i kada je veličina podataka koji se upisuju veća od veličine jednog bloka. Sa nezavisnim pristupom, svi podaci iz jednog zahtjeva se zapisuju na poseban disk, odnosno situacija je identična kao u radu s jednim diskom. Prednost modela nezavisnog pristupa je u tome što ako nekoliko zahteva za pisanje (čitanje) stigne istovremeno, svi će se izvršavati na odvojenim diskovima nezavisno jedan od drugog. Ova situacija je tipična, na primjer, za servere.

U skladu sa različitim tipovima pristupa, postoje različite vrste RAID nizova, koje obično karakterišu RAID nivoi. Pored vrste pristupa, nivoi RAID-a se razlikuju po načinu na koji prihvataju i generišu suvišne informacije. Suvišne informacije mogu se ili smjestiti na namjenski disk ili distribuirati među svim diskovima. Postoji mnogo načina za generiranje ovih informacija. Najjednostavniji od njih je potpuno dupliciranje (100 posto redundancija) ili zrcaljenje. Osim toga, koriste se kodovi za ispravljanje grešaka, kao i paritetni proračuni.

RAID nivoi

Trenutno postoji nekoliko RAID nivoa koji se mogu smatrati standardizovanim - to su RAID 0, RAID 1, RAID 2, RAID 3, RAID 4, RAID 5 i RAID 6.

Koriste se i različite kombinacije RAID nivoa, što vam omogućava da kombinujete njihove prednosti. Obično je ovo kombinacija neke vrste nivoa otpornosti na greške i nultog nivoa koji se koristi za poboljšanje performansi (RAID 1+0, RAID 0+1, RAID 50).

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

Treba napomenuti da RAID kontroleri integrisani na matične ploče za kućne računare ne podržavaju sve RAID nivoe. RAID kontroleri sa dva porta podržavaju samo nivoe 0 i 1, dok RAID kontroleri sa više portova (na primer, 6-portni RAID kontroler integrisan u južni most ICH9R/ICH10R čipseta) takođe podržavaju nivoe 10 i 5.

Osim toga, ako govorimo o matičnim pločama zasnovanim na Intel skupovima čipova, one također implementiraju funkciju Intel Matrix RAID, koja vam omogućava da istovremeno kreirate RAID matrice nekoliko nivoa na nekoliko tvrdih diskova, dodjeljujući dio prostora na disku za svaku od njih.

RAID 0

RAID nivo 0, strogo govoreći, nije redundantni niz i, shodno tome, ne pruža pouzdano skladištenje podataka. Ipak, ovaj nivo se aktivno koristi u slučajevima kada je potrebno osigurati visoke performanse diskovnog podsistema. Prilikom kreiranja niza RAID nivoa 0, informacije se dijele na blokove (ponekad se ti blokovi nazivaju trakama), koji se zapisuju na odvojene diskove, odnosno kreira se sistem s paralelnim pristupom (ako, naravno, veličina bloka to dozvoljava ). Dozvoljavajući istovremeni I/O sa više diskova, RAID 0 obezbeđuje najbrže brzine prenosa podataka i maksimalnu efikasnost prostora na disku jer nije potreban prostor za skladištenje za kontrolne sume. Implementacija ovog nivoa je vrlo jednostavna. RAID 0 se uglavnom koristi u područjima gdje je potreban brz prijenos velikih količina podataka.

RAID 1 (zrcaljeni disk)

RAID Level 1 je niz od dva diska sa 100 posto redundancijom. Odnosno, podaci su jednostavno potpuno duplirani (zrcaljeni), zbog čega se postiže vrlo visok nivo pouzdanosti (kao i troškova). 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 pokvari, njegove funkcije obavlja drugi (što je apsolutno transparentno za korisnika). Vraćanje niza vrši se jednostavnim kopiranjem. Osim toga, ovaj nivo udvostručuje brzinu čitanja informacija, jer se ova operacija može izvršiti istovremeno sa dva diska. Ova vrsta šeme skladištenja informacija koristi se uglavnom u slučajevima kada su troškovi bezbednosti podataka mnogo veći od troškova implementacije sistema za skladištenje podataka.

RAID 5

RAID 5 je diskovni niz otporan na greške sa distribuiranim skladištem kontrolne sume. Prilikom snimanja, tok podataka se dijeli na blokove (trake) na nivou bajtova i istovremeno se upisuje na sve diskove niza cikličkim redoslijedom.

Pretpostavimo da niz sadrži n diskove i veličinu trake d. Za svaku porciju n–1 trake, izračunava se kontrolni zbir str.

Stripe d 1 snimljeno na prvom disku, traka d 2- na drugom i tako dalje do trake dn–1, koji je napisan na ( n–1)-ti disk. Sljedeće dalje n- upisuje se kontrolni zbroj diska p n, a proces se ciklički ponavlja od prvog diska na kojem je traka upisana d n.

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

Kontrolna suma se izračunava korištenjem operacije isključivanja ili XOR koja se primjenjuje na blokove podataka koji se upisuju. 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 neki disk pokvari, podaci na njemu se mogu vratiti pomoću kontrolnih podataka i podataka preostalih na radnim diskovima.

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

1101 0011 1100 1011 = 1001.

Dakle, kontrolni zbroj zapisan na peti disk je 1001.

Ako jedan od diskova, na primjer četvrti, pokvari, onda 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 dobijamo:

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

U slučaju RAID-a 5, svi diskovi u nizu su iste veličine, ali ukupan kapacitet diskovnog podsistema koji je dostupan za pisanje postaje tač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 za kontrolne informacije.

RAID 5 može biti izgrađen na tri ili više tvrdih diskova. Kako se broj tvrdih diskova u nizu povećava, njegova redundantnost se smanjuje.

RAID 5 ima nezavisnu arhitekturu pristupa, koja omogućava da se višestruko čitanje ili upisivanje izvodi istovremeno.

RAID 10

RAID nivo 10 je kombinacija nivoa 0 i 1. Minimalni uslov za ovaj nivo su četiri diska. U RAID 10 nizu od četiri diska, oni se kombinuju u parovima u nizove nivoa 0, a oba ova niza kao logička disk jedinica se kombinuju u niz nivoa 1. Drugi pristup je takođe moguć: u početku se diskovi kombinuju u zrcaljene nizove nivo 1, a zatim logičke pogone na osnovu ovih nizova - u niz nivoa 0.

Intel Matrix RAID

Razmatrani RAID nizovi nivoa 5 i 1 rijetko se koriste kod kuće, što je prvenstveno zbog visoke cijene takvih rješenja. Najčešće se za kućne računare koristi niz nivoa 0 na dva diska. Kao što smo već napomenuli, RAID nivo 0 ne pruža bezbedno skladištenje podataka, pa su krajnji korisnici suočeni sa izborom: kreirati brz, ali nepouzdan RAID nivo 0 niz ili, udvostručujući cenu prostora na disku, RAID- niz nivoa 1 koji obezbeđuje pouzdano skladištenje podataka, ali ne pruža značajne prednosti performansi.

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

Dakle, šta je RAID matrica sa dva diska koja koristi Intel Matrix Storage tehnologiju? Osnovna ideja je da ukoliko sistem ima nekoliko hard diskova i matičnu ploču sa Intel čipsetom koji podržava Intel Matrix Storage tehnologiju, moguće je podeliti prostor na disku na nekoliko delova od kojih će svaki funkcionisati kao zaseban RAID niz.

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

U principu, koristeći dva fizička diska, takođe je moguće kreirati samo jednu ili dve RAID matrice nivoa 0, ali je nemoguće dobiti samo matrice nivoa 1. Odnosno, ako sistem ima samo dva diska, tada Intel Matrix Storage tehnologija vam omogućava da kreirate sledeće vrste RAID matrica:

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

Ako sistem ima tri čvrsta diska, mogu se kreirati sljedeće vrste RAID matrica:

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

Ako sistem ima četiri hard diska, onda je dodatno moguće kreirati RAID matricu nivoa 10, kao i kombinacije nivoa 10 i nivoa 0 ili 5.

Od teorije do prakse

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

Stoga ćemo u budućnosti razmatrati RAID nivoe 0 i 1 na osnovu samo dva diska. Cilj našeg istraživanja će biti upoređivanje performansi i funkcionalnosti RAID nizova nivoa 0 i 1, kreiranih na bazi nekoliko integrisanih RAID kontrolera, kao i proučavanje zavisnosti karakteristika brzine RAID niza od trake. veličina.

Činjenica je da iako teoretski, kada se koristi niz RAID nivoa 0, brzina čitanja i pisanja bi se trebala udvostručiti, u praksi je povećanje karakteristika brzine mnogo manje skromno i varira za različite RAID kontrolere. Isto važi i za RAID nivo 1 niz: uprkos činjenici da bi teoretski brzina čitanja trebalo da se udvostruči, u praksi to nije tako glatko.

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

Takođe na ploči GA-EX58A-UD7 je integrisan SATA III kontroler Marvell 9128, na osnovu kojeg su implementirana dva SATA III porta sa mogućnošću organizovanja RAID nizova nivoa 0, 1 i JBOD.

Tako Gigabyte GA-EX58A-UD7 ploča ima tri odvojena RAID kontrolera, na osnovu kojih možete kreirati RAID nizove nivoa 0 i 1 i međusobno ih upoređivati. Podsjetimo, SATA III standard je unazad kompatibilan sa SATA II standardom, stoga, na osnovu Marvell 9128 kontrolera, koji podržava diskove sa SATA III sučeljem, možete kreirati i RAID nizove koristeći diskove sa SATA II interfejsom.

Stalak za testiranje imao je sledeću konfiguraciju:

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

Testiranje je obavljeno pod Microsoft Windows 7 Ultimate (32-bit) operativnim sistemom. Operativni sistem je instaliran na Western Digital WD3200AAKS drajv, koji je bio povezan na port SATA II kontrolera integrisanog u ICH10R južni most. RAID niz je sastavljen na dva WD1002FBYS drajva sa SATA II interfejsom.

Za merenje karakteristika brzine kreiranih RAID nizova koristili smo uslužni program IOmeter, koji je industrijski standard za merenje performansi disk sistema.

IOmeter uslužni program

Budući da smo ovaj članak zamislili kao neku vrstu korisničkog vodiča za kreiranje i testiranje RAID nizova, logično bi bilo početi s opisom uslužnog programa IOmeter (Input/Output meter), koji je, kao što smo već napomenuli, svojevrsni industrijski standard za mjerenje performansi disk sistema. Ovaj uslužni program je besplatan i može se preuzeti sa http://www.iometer.org.

IOmeter uslužni program je sintetički test i omogućava vam rad sa čvrstim diskovima koji nisu particionisani na logičke particije, tako da možete testirati diskove bez obzira na strukturu fajla i smanjiti uticaj operativnog sistema na nulu.

Prilikom testiranja moguće je kreirati određeni model pristupa, ili „uzorak“, koji vam omogućava da odredite izvršavanje određenih operacija od strane čvrstog diska. Ako kreirate određeni model pristupa, dozvoljeno vam je da promijenite sljedeće parametre:

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

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

IOmeter je kontrolni dio programa sa korisničkim grafičkim interfejsom koji vam omogućava da izvršite sva potrebna podešavanja. Dinamo je generator opterećenja koji nema interfejs. Svaki put kada pokrenete IOmeter.exe, automatski se pokreće generator opterećenja Dynamo.exe.

Da biste počeli raditi s programom IOmeter, samo pokrenite datoteku IOmeter.exe. Ovo otvara glavni prozor programa IOmeter (slika 1).

Rice. 1. Glavni prozor programa IOmeter

Treba napomenuti da vam uslužni program IOmeter omogućava da testirate ne samo sisteme lokalnih diskova (DAS), već i mrežne uređaje za skladištenje (NAS). Na primjer, može se koristiti za testiranje performansi serverskog disk podsistema (file server) koristeći nekoliko mrežnih klijenata. Stoga se neki od oznaka i alata u prozoru uslužnog programa IOmeter odnose posebno na mrežne postavke programa. Jasno je da nam prilikom testiranja diskova i RAID nizova neće trebati ove mogućnosti programa, pa stoga nećemo objašnjavati svrhu svih kartica i alata.

Dakle, kada pokrenete program IOmeter, struktura stabla svih pokrenutih generatora opterećenja (Dynamo instance) će biti prikazana na lijevoj strani glavnog prozora (u prozoru Topologija). Svaka pokrenuta instanca generatora opterećenja Dynamo zove se upravitelj. Dodatno, IOmeter program je višenitni i svaka pojedinačna nit koja radi na instanci Dynamo generatora opterećenja naziva se Worker. Broj pokrenutih Workers-a uvijek odgovara broju logičkih procesorskih jezgara.

U našem primjeru koristimo samo jedan računar sa četverojezgrenim procesorom koji podržava Hyper-Threading tehnologiju, tako da se pokreće samo jedan menadžer (jedna instanca Dynamo-a) i osam (prema broju logičkih procesorskih jezgara) Workers-a.

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

Ako mišem odaberete ime računara u strukturi stabla pokrenutih Dynamo instanci, tada u prozoru Target na kartici Disk Target Biće prikazani svi diskovi, nizovi diskova i drugi uređaji (uključujući mrežne diskove) instalirani na računaru. Ovo su diskovi sa kojima IOmeter može raditi. Mediji mogu biti označeni žutom ili plavom bojom. Logičke particije medija su označene žutom bojom, a fizički uređaji bez logičkih particija kreiranih na njima su označeni plavom bojom. Logički dio može, ali i ne mora biti precrtan. Činjenica je da da bi program radio s logičkom particijom, mora se prvo pripremiti kreiranjem posebne datoteke na njoj, veličine jednake kapacitetu cijele logičke particije. Ako je logička particija precrtana, to znači da sekcija još nije pripremljena za testiranje (biće pripremljena automatski u prvoj fazi testiranja), ali ako sekcija nije precrtana, to znači da je datoteka već bila kreiran na logičkoj particiji, potpuno spreman za testiranje.

Imajte na umu da je, uprkos podržanoj mogućnosti rada s logičkim particijama, optimalno testirati diskove koji nisu particionirani na logičke particije. Logičku particiju diska možete obrisati vrlo jednostavno - pomoću umetka Upravljanje diskovima. Da biste mu pristupili, samo kliknite desnim tasterom miša na ikonu Kompjuter na radnoj površini i izaberite stavku u meniju koji se otvori Upravljaj. U prozoru koji se otvori Computer Management na lijevoj strani trebate odabrati stavku Skladištenje, a u njemu - Upravljanje diskovima. Nakon toga, na desnoj strani prozora Computer Management Svi povezani diskovi će biti prikazani. Desnim klikom miša na željeni pogon i odabirom stavke u meniju koji se otvori Delete Volume..., možete izbrisati logičku particiju na fizičkom disku. Podsjetimo, kada izbrišete logičku particiju s diska, sve informacije na njoj se brišu 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 niz diskova na kojem je instaliran operativni sistem.

Dakle, vratimo se na opis uslužnog programa IOmeter. U prozoru Target na kartici Disk Target morate odabrati disk (ili niz diskova) koji će biti testiran. Zatim morate otvoriti karticu Specifikacije pristupa(slika 2), na kojoj će biti moguće odrediti scenario testiranja.

Rice. 2. Pristupite kartici Specifikacije uslužnog programa IOmeter

U prozoru Globalne specifikacije pristupa Postoji lista unaprijed definiranih test skripti koje se mogu dodijeliti upravitelju pokretanja. Međutim, ove skripte nam neće trebati, tako da ih sve možete odabrati i izbrisati (postoji dugme za ovo Izbriši). Nakon toga kliknite na dugme Novo da kreirate novu test skriptu. U prozoru koji se otvori Uredi specifikaciju pristupa Možete definirati scenarij pokretanja za disk ili RAID niz.

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 podizanje sistema u sekvencijalnom načinu čitanja na različitim veličinama bloka, a zatim niz skripti za pokretanje sistema u sekvencijalnom načinu pisanja na 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 ove serije 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 praviti veličinu bloka većom od 1 MB za sekvencijalne operacije, jer se s tako velikim veličinama blokova podataka brzina sekvencijalnih operacija ne mijenja.

Dakle, napravimo skriptu za učitavanje u modu sekvencijalnog čitanja za blok od 512 bajtova.

Na terenu Ime prozor Uredi specifikaciju pristupa unesite naziv skripte za učitavanje. Na primjer, Sequential_Read_512. Sledeći na terenu Veličina zahtjeva za prijenos postavljamo veličinu bloka podataka na 512 bajtova. Klizač Procentna nasumična/sekvencijalna distribucija(procentualni odnos između sekvencijalnih i selektivnih operacija) pomeramo skroz ulevo tako da sve naše operacije budu samo sekvencijalne. Pa, klizač , koji postavlja procentualni 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 nema potrebe za promjenom (slika 3).

Rice. 3. Uredite prozor specifikacije pristupa da biste kreirali skriptu za učitavanje sekvencijalnog čitanja
sa veličinom bloka podataka od 512 bajtova

Kliknite na dugme Uredu, a u prozoru će se pojaviti prva skripta koju smo kreirali Globalne specifikacije pristupa na kartici Specifikacije pristupa IOmeter uslužni programi.

Slično, trebate kreirati skripte za preostale blokove podataka, međutim, kako biste olakšali rad, lakše je ne kreirati skriptu svaki put iznova klikom na dugme Novo, i nakon odabira posljednjeg kreiranog scenarija, pritisnite dugme Uredi kopiju(uredi kopiju). Nakon ovoga prozor će se ponovo otvoriti Uredi specifikaciju pristupa sa postavkama naše posljednje kreirane skripte. Bit će dovoljno promijeniti samo ime i veličinu bloka. Nakon što ste završili sličnu proceduru za sve druge veličine blokova, možete početi kreirati skripte za sekvencijalno snimanje, što se radi na potpuno isti način, osim što klizač Postotak distribucije čitanja/pisanja, koji postavlja procentualni odnos između operacija čitanja i pisanja, mora se pomeriti skroz ulevo.

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

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

Da bismo to učinili, ponovo provjeravamo šta se nalazi u prozoru Topologija Ime računara (tj. menadžera opterećenja na lokalnom računaru) je istaknuto, a ne individualni radnik. Ovo osigurava da će scenariji opterećenja biti dodijeljeni svim radnicima odjednom. Sledeći u prozoru Globalne specifikacije pristupa odaberite sve scenarije opterećenja koje smo kreirali i pritisnite dugme Dodati. Svi odabrani scenariji učitavanja će biti dodati u prozor (Sl. 4).

Rice. 4. Dodjeljivanje kreiranih scenarija opterećenja upravitelju opterećenja

Nakon toga morate otići na karticu Test Setup(Sl. 5), gdje možete podesiti vrijeme izvršavanja svake skripte koju smo kreirali. Da to uradite u grupi Run Time postavite vrijeme izvršenja scenarija učitavanja. Biće dovoljno da podesite vreme na 3 minuta.

Rice. 5. Postavljanje vremena izvršenja scenarija učitavanja

Štaviš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 izvršena sva potrebna podešavanja, preporučuje se da kreirani test sačuvate klikom na dugme sa slikom diskete na traci sa alatkama. Test se čuva sa ekstenzijom *.icf. Nakon toga, kreirani scenario učitavanja možete koristiti tako što ćete pokrenuti ne datoteku IOmeter.exe, već sačuvanu datoteku sa ekstenzijom *.icf.

Sada možete započeti testiranje direktno klikom na dugme sa zastavicom. Od vas će se tražiti da navedete ime datoteke koja sadrži rezultate testa i odaberete njegovu lokaciju. Rezultati testa se pohranjuju u CSV datoteci, koja se zatim može lako izvesti u Excel i, postavljanjem filtera na prvu kolonu, odabrati željene podatke sa rezultatima testa.

Tokom testiranja, srednji rezultati se mogu vidjeti na kartici Prikaz rezultata, a na kartici možete odrediti kojem scenariju učitavanja pripadaju Specifikacije pristupa. U prozoru Specifikacija dodijeljenog pristupa pokrenuta skripta se pojavljuje zelenom bojom, završene skripte crvenom, a neizvršene skripte plavom.

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

Kreiranje RAID niza zasnovanog na GIGABYTE SATA2 kontroleru

Dakle, počinjemo da kreiramo RAID niz baziran na dva diska koristeći GIGABYTE SATA2 RAID kontroler integrisan na ploči. Naravno, sam Gigabyte ne proizvodi čipove, pa se stoga ispod GIGABYTE SATA2 čipa krije ponovo označeni čip druge kompanije. Kao što možete saznati iz INF datoteke drajvera, riječ je o JMicron JMB36x seriji kontrolera.

Pristup meniju za podešavanje kontrolera moguć je u fazi pokretanja sistema, za šta je potrebno pritisnuti kombinaciju tastera Ctrl+G kada se na ekranu pojavi odgovarajući natpis. Naravno, prvo u postavkama BIOS-a morate definisati režim rada dva SATA porta koji se odnose na GIGABYTE SATA2 kontroler kao RAID (u suprotnom će pristup meniju konfiguratora RAID niza biti nemoguć).

Meni podešavanja za GIGABYTE SATA2 RAID kontroler je prilično jednostavan. Kao što smo već napomenuli, kontroler je dual-port i omogućava vam da kreirate RAID nizove nivoa 0 ili 1. Preko menija postavki kontrolera možete izbrisati ili kreirati RAID niz. Kada kreirate RAID niz, možete odrediti njegovo ime, odabrati nivo niza (0 ili 1), postaviti veličinu trake za RAID 0 (128, 84, 32, 16, 8 ili 4K), a također odrediti veličinu niz.

Jednom kada je niz kreiran, bilo kakve promjene u njemu više nisu moguće. To jest, ne možete naknadno promijeniti za kreirani niz, na primjer, njegov nivo ili veličinu trake. Da biste to učinili, prvo morate izbrisati niz (uz gubitak podataka), a zatim ga ponovo kreirati. Zapravo, ovo nije jedinstveno za GIGABYTE SATA2 kontroler. Nemogućnost promene parametara kreiranih RAID nizova je karakteristika svih kontrolera, što proizilazi iz samog principa implementacije RAID niza.

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

Kreiranje RAID niza zasnovanog na Marvell 9128 kontroleru

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

Dakle, iako ovaj kontroler podržava SATA III drajvove, on je takođe potpuno kompatibilan sa SATA II drajvovima.

Marvell 9128 kontroler vam omogućava da kreirate RAID niz nivoa 0 i 1 na osnovu dva diska. Za niz nivoa 0, možete postaviti veličinu trake na 32 ili 64 KB, kao i navesti ime niza. Osim toga, postoji opcija kao što je Gigabyte Rounding, za koju je potrebno objašnjenje. Unatoč nazivu koji je sličan nazivu proizvođača, funkcija Gigabyte Rounding nema nikakve veze s tim. Štaviše, ni na koji način nije povezan sa nizom RAID nivoa 0, iako se u postavkama kontrolera može definisati posebno za niz ovog nivoa. Zapravo, ovo je prvi od onih nedostataka u konfiguratoru kontrolera Marvell 9128 koje smo spomenuli. Funkcija Gigabyte Rounding definisana je samo za RAID nivo 1. Omogućava vam da koristite dva diska (na primer, različitih proizvođača ili različitih modela) sa neznatno različitim kapacitetima za kreiranje RAID Level 1 niza. Funkcija Gigabyte Rounding precizno postavlja razliku u veličinama dva diska koja se koriste za kreiranje RAID niza nivoa 1. U Marvell 9128 kontroleru, funkcija Gigabyte Rounding vam omogućava da postavite razliku u veličinama diskova na 1 ili 10 GB.

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

Kreiranje RAID niza zasnovanog na kontroleru integrisanom u ICH10R

RAID kontroler integrisan u ICH10R južni most je najčešći. Kao što je već napomenuto, ovaj RAID kontroler ima 6 portova i podržava ne samo kreiranje RAID 0 i RAID 1 nizova, već i RAID 5 i RAID 10.

Pristup izborniku za podešavanje kontrolera moguć je u fazi pokretanja sistema, za što trebate pritisnuti kombinaciju tipki Ctrl + I kada se na ekranu pojavi odgovarajući natpis. Naravno, prvo u BIOS postavkama treba da definišete režim rada ovog kontrolera kao RAID (u suprotnom će biti nemoguć pristup meniju konfiguratora RAID niza).

Meni za podešavanje RAID kontrolera je prilično jednostavan. Preko menija postavki kontrolera možete izbrisati ili kreirati RAID niz. Kada kreirate RAID niz, možete odrediti njegovo ime, odabrati nivo niza (0, 1, 5 ili 10), postaviti veličinu trake za RAID 0 (128, 84, 32, 16, 8 ili 4K), a također odrediti veličina niza.

Poređenje performansi RAID-a

Da bismo testirali RAID nizove pomoću uslužnog programa IOmeter, kreirali smo scenarije za sekvencijalno čitanje, sekvencijalno upisivanje, selektivno čitanje i selektivno učitavanje. 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 kreirali smo RAID 0 niz sa svim dozvoljenim veličinama traka i niz RAID 1. Osim toga, da bismo mogli procijeniti učinak koji se postiže korištenjem RAID niza, testirali smo i jedan disk na svakom od RAID kontrolera.

Dakle, pogledajmo rezultate našeg testiranja.

GIGABYTE SATA2 kontroler

Pre svega, pogledajmo rezultate testiranja RAID nizova zasnovanih na GIGABYTE SATA2 kontroleru (slika 6-13). Općenito se pokazalo da je kontroler doslovno misteriozan, a njegov učinak jednostavno je razočarao.

Rice. 6. Brzina sekvencijalna
i selektivne diskovne operacije
Western Digital WD1002FBYS

Rice. 7. Brzina sekvencijalna

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

Rice. 12.Serijska brzina
i selektivne operacije za RAID 0
sa veličinom trake od 4 KB
(GIGABYTE SATA2 kontroler)

Rice. 13.Serijska brzina
i selektivne operacije
za RAID 1 (GIGABYTE SATA2 kontroler)

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

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

Sa 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, sa navedenim veličinama traka, maksimalna brzina sekvencijalnog čitanja se povećava za 27%, a maksimalna brzina sekvencijalnog pisanja povećava se za 31%.

Zapravo, ovo nije dovoljno za niz nivoa 0, a ja bih volio da maksimalna brzina sekvencijalnih operacija bude veća.

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

Sa veličinom trake od 4 KB, ne samo da selektivna brzina čitanja pada 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šćenje RAID 1 niza na GIGABYTE SATA2 kontroleru ne menja značajno sekvencijalnu brzinu čitanja (u poređenju sa jednim diskom), ali je maksimalna sekvencijalna brzina pisanja smanjena na 75 MB/s. Podsjetimo da za RAID 1 niz, brzina čitanja treba da se poveća, a brzina pisanja ne bi trebalo da se smanji u poređenju sa brzinom čitanja i pisanja jednog diska.

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

Marvell 9128 kontroler

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

Prilikom kreiranja RAID 0 niza sa veličinama traka od 64 i 32 KB, maksimalna brzina sekvencijalnog čitanja se povećava na 211 MB/s, a brzina sekvencijalnog pisanja se povećava na 185 MB/s. Odnosno, sa navedenim veličinama traka, maksimalna brzina sekvencijalnog čitanja se povećava 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, jer je u ovom slučaju brzina sekvencijalnih operacija s veličinom bloka manji od 128 KB bit će nešto veći.

Prilikom kreiranja RAID 1 niza na Marvell 9128 kontroleru, maksimalna brzina sekvencijalne operacije ostaje praktično nepromijenjena u poređenju sa jednim diskom. Dakle, ako je za jedan disk maksimalna brzina sekvencijalnih operacija 107 MB/s, onda je za RAID 1 105 MB/s. Takođe imajte na umu da se za RAID 1 performanse selektivnog čitanja blago pogoršavaju.

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

Kontroler ICH10R

Pokazalo se da je RAID kontroler ugrađen u ICH10R najbolji od svih koje smo testirali (Slika 18-25). Kada radite sa jednim diskom (bez kreiranja RAID niza), njegove performanse su gotovo iste kao kod kontrolera Marvell 9128. Maksimalna brzina sekvencijalnog čitanja i pisanja je 107 MB i postiže se veličinom bloka podataka od 16 KB.

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

Ako govorimo o RAID 0 polju na ICH10R kontroleru, tada maksimalna brzina sekvencijalnog č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 brzina sekvencijalnog čitanja i pisanja ovisi o veličini trake. Rezultati testa pokazuju da je za RAID 0 baziran na ICH10R kontroleru optimalno koristiti traku od 64 KB. U ovom slučaju, maksimalna brzina sekvencijalnog č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 integrisane RAID kontrolere po performansama. A s obzirom da ima i veću funkcionalnost, optimalno je koristiti upravo ovaj kontroler i jednostavno zaboraviti na postojanje svih ostalih (osim, naravno, ako sistem ne koristi SATA III drajvove).

Tvrdi diskovi igraju važnu ulogu u računaru. Pohranjuju različite korisničke podatke, pokreću OS iz njih itd. Tvrdi diskovi ne traju vječno i imaju određenu marginu sigurnosti. I svaki čvrsti disk ima svoje karakteristične karakteristike.

Najvjerovatnije ste u nekom trenutku čuli da se takozvani raid nizovi mogu napraviti od običnih tvrdih diskova. Ovo je neophodno kako bi se poboljšale performanse pogona, kao i osigurala pouzdanost skladištenja 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 zbirka tvrdih diskova ili niz diskova. Kao što smo već rekli, takav niz osigurava pouzdanu pohranu podataka i povećava brzinu čitanja ili pisanja informacija. Postoje različite konfiguracije RAID polja koje su označene brojevima 1, 2, 3, 4, itd. i razlikuju se po funkcijama koje obavljaju. Korišćenjem takvih nizova sa konfiguracijom 0 dobićete značajna poboljšanja performansi. Jedan RAID niz garantuje potpunu sigurnost vaših podataka, jer ako jedan od diskova pokvari, informacije će se nalaziti na drugom tvrdom disku.

Zapravo, RAID niz– ovo je 2 ili n broj tvrdih diskova povezanih na matičnu ploču, koji podržavaju mogućnost kreiranja racija. Programski možete odabrati raid konfiguraciju, odnosno odrediti kako bi ti isti diskovi trebali raditi. Da biste to učinili, morat ćete odrediti postavke u BIOS-u.

Za instalaciju niza potrebna nam je matična ploča koja podržava raid tehnologiju, 2 identična (u svakom pogledu) hard diska, koje povezujemo na matičnu ploču. U BIOS-u morate podesiti parametar SATA konfiguracija: RAID. Kada se računar pokrene, pritisnite kombinaciju tastera CTR-I, i već tamo konfigurišemo RAID. I nakon toga, instaliramo Windows kao i obično.

Vrijedno je obratiti pažnju na činjenicu da ako kreirate ili izbrišete raid, onda se sve informacije koje se nalaze na diskovima brišu. Stoga prvo morate napraviti njegovu kopiju.

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

RAID-0 (string), također poznat kao niz nulte razine ili "null niz". Ovaj nivo povećava brzinu rada s diskovima za red veličine, ali ne pruža dodatnu toleranciju grešaka. U stvari, ova konfiguracija je čisto formalno raid niz, jer sa ovom konfiguracijom nema redundancije. Snimanje u takvom paketu odvija se u blokovima, naizmjenično upisanim na različite diskove niza. Glavni nedostatak ovdje je nepouzdanost skladištenja podataka: ako jedan od diskova niza pokvari, sve informacije se uništavaju. Zašto se to dešava? To se događa zato što se svaka datoteka može u blokovima upisati na nekoliko tvrdih diskova odjednom, a ako bilo koji od njih pokvari, integritet datoteke je narušen, pa je stoga nije moguće vratiti. Ako cijenite performanse i redovno pravite sigurnosne kopije, onda se ovaj nivo niza može koristiti na vašem kućnom računaru, što će dati primjetno povećanje performansi.

RAID-1 (zrcaljenje)– „režim ogledala“. Ovaj nivo RAID nizova možete nazvati paranoidnim nivoom: ovaj režim ne daje skoro nikakvo povećanje performansi sistema, ali apsolutno štiti vaše podatke od oštećenja. Čak i ako jedan od diskova pokvari, tačna kopija izgubljenog bit će pohranjena na drugom disku. Ovaj način rada, kao i prvi, može se implementirati i na kućni računar za ljude koji izuzetno cijene podatke na svojim diskovima.

Prilikom konstruisanja ovih nizova koristi se algoritam za oporavak informacija koristeći Hamingove kodove (američki inženjer koji je razvio ovaj algoritam 1950. godine za ispravljanje grešaka u radu elektromehaničkih računara). Da bi se osigurao rad ovog RAID kontrolera, kreirane su dvije grupe diskova - jedna za pohranjivanje podataka, druga grupa za pohranjivanje kodova za ispravljanje grešaka.

Ova vrsta RAID-a postala je manje rasprostranjena u kućnim sistemima zbog prevelike redundancije broja tvrdih diskova - na primjer, u nizu od sedam tvrdih diskova, samo četiri će biti dodijeljena za podatke. Kako se broj diskova povećava, redundantnost se smanjuje, što je prikazano u tabeli ispod.

Glavna prednost RAID 2 je mogućnost ispravljanja grešaka u hodu bez smanjenja brzine razmjene podataka između diskovnog niza i centralnog procesora.

RAID 3 i RAID 4

Ove dvije vrste diskovnih nizova su vrlo slične po dizajnu. Oba koriste više tvrdih diskova za pohranjivanje informacija, od kojih se jedan koristi isključivo za pohranjivanje kontrolnih suma. Tri čvrsta diska su dovoljna za kreiranje RAID 3 i RAID 4. Za razliku od RAID 2, oporavak podataka u hodu nije moguć - informacije se vraćaju nakon zamjene neispravnog tvrdog diska tokom određenog vremenskog perioda.

Razlika između RAID 3 i RAID 4 je nivo particionisanja 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, povećava se brzina obrade malih datoteka, što je kritično za personalne računare. Iz tog razloga, RAID 4 je postao rasprostranjeniji.

Značajan nedostatak razmatranih nizova je povećano opterećenje tvrdog diska namijenjenog za pohranjivanje kontrolnih suma, što značajno smanjuje njegov resurs.

RAID-5. Takozvani niz nezavisnih diskova otpornih na greške sa distribuiranim skladištem kontrolnih suma. To znači da će na nizu od n diskova, n-1 disk biti dodijeljen za direktnu pohranu podataka, a posljednji će pohraniti kontrolni zbroj iteracije n-1 trake. Da bismo jasnije objasnili, zamislimo da treba da napišemo datoteku. Podijelit će se na dijelove iste dužine i naizmjenično će se početi ciklički upisivati ​​na sve n-1 diskove. Kontrolna suma bajtova dijelova podataka svake iteracije će biti upisana na posljednji disk, gdje će se kontrolna suma implementirati operacijom XOR u bitovima.

Vrijedi odmah upozoriti da će, ako neki od diskova pokvari, svi otići u hitni način rada, što će značajno smanjiti performanse, jer Da bi se datoteka spojila, izvršit će se nepotrebne manipulacije kako bi se vratili njeni "nedostajući" dijelovi. Ako dva ili više diskova pokvare u isto vrijeme, informacije pohranjene na njima ne mogu se vratiti. Općenito, implementacija raid niza nivoa 5 pruža prilično velike brzine pristupa, paralelni pristup raznim datotekama i dobru toleranciju grešaka.

U velikoj mjeri, gornji problem je riješen konstruiranjem nizova pomoću šeme RAID 6. U ovim strukturama se za pohranjivanje kontrolnih suma dodjeljuje memorijski volumen jednak volumenu dva čvrsta diska, koji se također ciklički i ravnomjerno raspoređuju na različite diskove. . Umjesto jedne, izračunavaju se dvije kontrolne sume, što garantuje integritet podataka u slučaju istovremenog kvara dva hard diska u nizu.

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

Nedostatak RAID 6 je što je ukupna brzina razmjene podataka smanjena za približno 10% zbog povećanja obima potrebnih proračuna kontrolne sume, kao i zbog povećanja količine upisanih/čitanih informacija.

Kombinovani RAID tipovi

Pored gore navedenih glavnih tipova, široko se koriste različite njihove kombinacije koje kompenziraju određene nedostatke jednostavnog RAID-a. Posebno je široko rasprostranjena upotreba RAID 10 i RAID 0+1 šema. U prvom slučaju, par preslikanih nizova se kombinuje u RAID 0, u drugom, naprotiv, dva RAID 0 se kombinuju u ogledalo. U oba slučaja, povećane performanse RAID-a 0 se dodaju sigurnosti informacija RAID-a 1.

Često se, kako bi se povećao nivo zaštite važnih informacija, koriste šeme konstrukcije RAID 51 ili RAID 61 - zrcaljenje već visoko zaštićenih nizova osigurava izuzetnu sigurnost podataka u slučaju bilo kakvih kvarova. Međutim, nepraktično je implementirati takve nizove kod kuće zbog prevelike redundancije.

Izgradnja diskovnog niza - od teorije do prakse

Specijalizirani RAID kontroler je odgovoran za izgradnju i upravljanje radom bilo kojeg RAID-a. Na veliko olakšanje prosečnog korisnika personalnog računara, u većini modernih matičnih ploča ovi kontroleri su već implementirani na nivou južnog mosta čipseta. Dakle, da biste napravili niz tvrdih diskova, sve što trebate učiniti je kupiti potreban broj njih i odrediti željeni RAID tip u odgovarajućem dijelu BIOS postavki. Nakon toga, umjesto nekoliko tvrdih diskova u sistemu, 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 da instaliraju dodatni drajver.

I za kraj, još jedan savjet - da napravite RAID, kupite čvrste 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 će biti najstabilniji.

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

Promjena fokusa sa aplikacija usmjerenih na procesor na aplikacije usmjerene na podatke dovodi do povećanja značaja sistema za pohranu podataka. Istovremeno, problem niske propusnosti i otpornosti na greške ovakvih sistema je oduvek bio veoma važan i uvek je zahtevao rešenje.

U savremenoj kompjuterskoj industriji, magnetni diskovi se široko koriste kao sekundarni sistem za pohranu podataka, jer, unatoč svim svojim nedostacima, imaju najbolje karakteristike za odgovarajući tip uređaja po pristupačnoj cijeni.

Karakteristike tehnologije za izradu magnetnih diskova dovele su do značajnog odstupanja između povećanja performansi procesorskih modula i samih magnetnih diskova. Ako su 1990. godine najbolji među serijskim bili 5,25″ diskovi sa prosječnim vremenom pristupa od 12 ms i vremenom kašnjenja od 5 ms (pri brzini vretena od oko 5.000 o/min 1), onda je danas na dlanu 3,5″ drajvova sa prosječno vrijeme pristupa od 5 ms i vrijeme kašnjenja 1 ms (pri brzini vretena 10.000 o/min). Ovdje vidimo poboljšanje tehničkih karakteristika od oko 100%. Istovremeno, performanse procesora su porasle za više od 2.000%. Ovo je uglavnom moguće jer procesori imaju direktne prednosti korištenja VLSI (Very Large Scale Integration). Njegova upotreba ne samo da omogućava povećanje frekvencije, već i broja komponenti koje se mogu integrirati u čip, što omogućava uvođenje arhitektonskih prednosti koje omogućavaju paralelno računanje.

1 - Prosječni podaci.

Trenutna situacija se može okarakterisati kao I/O kriza sekundarnog skladišnog sistema.

Povećanje performansi

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

Ako rasporedite blok podataka na N diskova nekog niza i organizirate ovaj smještaj tako da je moguće čitati informacije istovremeno, onda se ovaj 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 se zove niz paralelnog pristupa(niz sa paralelnim pristupom).

Paralelni nizovi se obično 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 na niz diskova, možete distribuirati opterećenje neovisnim pozicioniranjem diskova. Ova arhitektura se obično naziva niz nezavisnog pristupa(niz sa nezavisnim pristupom).

Povećanje tolerancije grešaka

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

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

Umnožavanje, ili zrcaljenje, najčešće se koristi u diskovnim nizovima. Jednostavni sistemi ogledala koriste dvije kopije podataka, a svaka kopija se nalazi na odvojenim diskovima. Ova shema je prilično jednostavna i ne zahtijeva dodatne troškove hardvera, ali ima jedan značajan nedostatak - koristi 50% prostora na disku za pohranu kopije informacija.

Drugi način implementacije redundantnih diskovnih nizova je korištenje redundantnog kodiranja korištenjem izračunavanja pariteta. Parnost se izračunava XOR-om svih znakova u riječi podataka. Korištenje pariteta u redundantnim diskovnim nizovima smanjuje opterećenje na vrijednost izračunatu po formuli: HP hdd =1/N hdd (HP hdd - prekomjerni troškovi; N hdd - broj diskova u nizu).

Istorija i razvoj RAID-a

Uprkos činjenici da se sistemi za skladištenje zasnovani na magnetnim diskovima proizvode već 40 godina, masovna proizvodnja sistema otpornih na greške počela je tek nedavno. Redundantni nizovi diskova, koji se obično nazivaju RAID (redundantni nizovi jeftinih diskova), uveli su istraživači (Petterson, Gibson i Katz) na Univerzitetu Kalifornije, Berkeley 1987. godine. Ali RAID sistemi su postali široko rasprostranjeni tek kada su diskovi koji su bili pogodni za upotrebu u redundantnim nizovima postali dostupni i dovoljno produktivni. Od bijele knjige o RAID-u iz 1988. godine, istraživanje redundantnih diskovnih nizova eksplodiralo je u pokušaju da se obezbijedi širok raspon kompromisa između cijene, performansi i pouzdanosti.

Jednom je došlo do incidenta sa skraćenicom RAID. Činjenica je da su u vrijeme pisanja ovog članka svi diskovi koji su se koristili u PC-ima nazivani jeftinim diskovima, za razliku od skupih diskova za mainframe (mainframe računare). Ali za upotrebu u RAID nizovima, bilo je potrebno koristiti prilično skupu opremu u odnosu na druge PC konfiguracije, pa je RAID počeo da se dešifruje kao redundantni niz nezavisnih diskova 2 - redundantni niz nezavisnih diskova.

2 - Definicija RAID savjetodavnog odbora

RAID 0 je uveden od strane industrije kao definicija diskovnog niza koji nije otporan na greške. Berkeley je definisao RAID 1 kao zrcaljeni disk. RAID 2 je rezervisan za nizove koji koriste Hamingov kod. RAID nivoi 3, 4, 5 koriste paritet za zaštitu podataka od pojedinačnih grešaka. Upravo su ovi nivoi, uključujući nivo 5, predstavljeni na Berkliju, a ova RAID taksonomija je usvojena kao de facto standard.

RAID nivoi 3,4,5 su prilično popularni i imaju dobru iskorišćenost prostora na disku, ali imaju jedan značajan nedostatak - otporni su samo na pojedinačne greške. Ovo je posebno tačno kada se koristi veliki broj diskova, kada se povećava verovatnoća istovremenog prekida rada više uređaja. Osim toga, karakterizira ih dug oporavak, što također nameće određena ograničenja u njihovoj upotrebi.

Danas je razvijen prilično veliki 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, i RAID 6, koji koristi Reed-Solomon kodiranje.

U shemi koja koristi paritet dual-space, svaki blok podataka učestvuje u izgradnji dvije nezavisne kodne riječi. Stoga, ako drugi disk u istoj kodnoj riječi pokvari, druga kodna riječ se koristi za rekonstrukciju podataka.

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

Ako niz s dva prostora nije organiziran u "kvadrat", tada će pri implementaciji gornje šeme redundancija biti veća.

EVENODD arhitektura ima shemu tolerancije grešaka sličnu paritetu dual-space, ali drugačiji smještaj informacionih blokova koji garantuje minimalno korištenje redundantnog kapaciteta. Kao i kod parnosti dual-space, svaki blok podataka učestvuje u izgradnji dve nezavisne kodne reči, ali su reči postavljene tako da je koeficijent redundancije konstantan (za razliku od prethodne šeme) i jednak je: 2 x kvadrat (N disk).

Korišćenjem dva znaka za proveru, parnosti i nebinarnih kodova, reč podataka može biti dizajnirana da obezbedi toleranciju greške kada se dogodi dvostruka greška. Ovaj dizajn je poznat kao RAID 6. Nebinarni kod, zasnovan na Reed-Solomon kodiranju, obično se računa pomoću tabela ili kao iterativni proces koristeći zatvorene linearne registre, relativno složenu operaciju koja zahtijeva specijalizovani hardver.

S obzirom da upotreba klasičnih RAID opcija, koje pružaju dovoljnu toleranciju grešaka za mnoge aplikacije, često ima neprihvatljivo niske performanse, istraživači s vremena na vrijeme implementiraju različite poteze koji pomažu u povećanju performansi RAID sistema.

1996. Savage i Wilks su predložili AFRAID - Često redundantni niz nezavisnih diskova. Ova arhitektura u određenoj mjeri žrtvuje toleranciju grešaka radi performansi. U pokušaju da se nadoknadi problem malog pisanja tipičan za RAID nivo 5 nizove, moguće je ostaviti striping bez izračunavanja pariteta za određeni vremenski period. Ako je disk određen za paritetno snimanje zauzet, paritetno snimanje se odlaže. Teorijski je dokazano da smanjenje tolerancije greške od 25% može povećati performanse za 97%. AFRAID efektivno mijenja model kvara pojedinačnih nizova tolerantnih na greške jer je kodna riječ koja nema ažurirani paritet podložna kvarovima diska.

Umjesto žrtvovanja tolerancije grešaka, možete koristiti tradicionalne tehnike performansi kao što je keširanje. S obzirom na to da je promet na disku buran, možete koristiti keš za vraćanje zapisa za pohranjivanje podataka kada su diskovi zauzeti. A ako je keš memorija napravljena u obliku nepromjenjive memorije, tada će, u slučaju nestanka struje, podaci biti sačuvani. Osim toga, odgođene operacije diska omogućavaju nasumično kombiniranje malih blokova za izvođenje efikasnijih operacija na disku.

Postoje i mnoge arhitekture koje žrtvuju volumen radi povećanja performansi. Među njima su odložena modifikacija na log disku i razne šeme za modifikaciju logičkog smeštanja podataka u fizički, koje vam omogućavaju da efikasnije distribuirate operacije u nizu.

Jedna od opcija - paritetno evidentiranje(paritetna registracija), što uključuje rješavanje problema malog pisanja i efikasnije korištenje diskova. Paritetno evidentiranje odgađa promjene pariteta na RAID 5 tako što ih snima u FIFO dnevnik, koji se nalazi dijelom u memoriji kontrolera, a dijelom na disku. S obzirom na to da je pristup cijeloj stazi u prosjeku 10 puta efikasniji od pristupa sektoru, evidentiranje pariteta prikuplja velike količine modificiranih podataka o paritetu, koji se zatim zajedno upisuju na disk namijenjen pohranjivanju pariteta na cijeloj stazi.

Arhitektura plutajući podaci i paritet(pokretni i paritetni), što omogućava preraspodjelu fizičkog postavljanja diskovnih blokova. Slobodni sektori se postavljaju na svaki cilindar radi smanjenja latencija rotacije(kašnjenja rotacije), podaci i paritet se dodjeljuju ovim slobodnim prostorima. Da bi se osigurao rad tokom nestanka struje, paritet i mapa podataka moraju biti pohranjeni u nepromjenjivoj memoriji. Ako izgubite mapu položaja, svi podaci u nizu će biti izgubljeni.

Virtuelno skidanje- je plutajuća arhitektura podataka i pariteta koja koristi predmemoriju povratnog upisivanja. Prirodno shvatajući pozitivne strane i jednog i drugog.

Osim toga, postoje i drugi načini za poboljšanje performansi, kao što su RAID operacije. Svojevremeno je Seagate ugradio podršku za RAID operacije u svoje diskove sa Fiber Chanel i SCSI interfejsima. To je omogućilo da se smanji promet između centralnog kontrolera i diskova u nizu za RAID 5 sisteme. Ovo je bila fundamentalna inovacija u oblasti implementacije RAID-a, ali tehnologija nije zaživjela, jer su neke karakteristike Fiber-a Chanel i SCSI standardi slabe model kvara za diskovne nizove.

Za isti RAID 5 uvedena je arhitektura TickerTAIP. To izgleda ovako - izvorni čvor centralnog kontrolnog mehanizma (inicijatorski čvor) prima zahtjeve korisnika, bira algoritam za obradu i zatim prenosi rad na disku i paritet na radni čvor (radni čvor). Svaki radni čvor obrađuje podskup diskova u nizu. Kao iu Seagate modelu, radni čvorovi prenose podatke između sebe bez učešća inicijalnog čvora. Ako radni čvor pokvari, diskovi koje je opsluživali postaju nedostupni. Ali ako je kodna riječ konstruirana na takav način da svaki njen simbol obrađuje poseban radni čvor, tada shema tolerancije grešaka ponavlja RAID 5. Da bi se spriječili kvarovi inicijalnog čvora, ona se duplira, tako da dobijamo arhitekturu koja otporan je na kvarove bilo kojeg svog čvora. Uz sve svoje pozitivne karakteristike, ova arhitektura pati od problema „rupe za pisanje“. Što znači da se greška javlja 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 besplatnog diska (rezervnog). Ako jedan od diskova u nizu pokvari, RAID se može vratiti korištenjem slobodnog diska umjesto neuspješnog. Glavna karakteristika ove implementacije je da sistem prelazi u svoje prethodno (fail-safe stanje bez eksterne intervencije). Kada se koristi distribuirana rezervna arhitektura, logički blokovi rezervnog diska se fizički distribuiraju na sve diskove u nizu, eliminišući potrebu za ponovnom izgradnjom niza ako disk pokvari.

Kako bi se izbjegao problem oporavka tipičan za klasične RAID nivoe, arhitektura tzv paritetno deklasterisanje(paritetna distribucija). To uključuje postavljanje manjeg broja logičkih diskova većeg kapaciteta na manje fizičke diskove većeg kapaciteta. Koristeći ovu tehnologiju, vrijeme odgovora sistema na zahtjev tokom rekonstrukcije je poboljšano za više od polovine, a vrijeme rekonstrukcije je značajno smanjeno.

Arhitektura osnovnih RAID nivoa

Pogledajmo sada detaljnije arhitekturu osnovnih nivoa RAID-a. Prije razmatranja, napravimo neke pretpostavke. Da bismo demonstrirali principe konstruisanja RAID sistema, razmotrimo skup od N diskova (radi jednostavnosti, pretpostavićemo da je N paran broj), od kojih se svaki sastoji od M blokova.

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

Diskovi se mogu povezati na jedan ili više kanala za prijenos podataka. Korišćenje više kanala povećava propusnost sistema.

RAID 0. Striped Disk Array bez tolerancije grešaka

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

Prednosti:

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

Nedostaci:

  • nije rješenje otporno na greške;
  • Kvar jednog diska dovodi do gubitka svih podataka u nizu.

RAID 1. Redundantni niz diskova ili zrcaljenje

Zrcaljenje je tradicionalni način povećanja pouzdanosti malog diska. U najjednostavnijoj verziji koriste se dva diska na koje se snimaju iste informacije, a ako jedan od njih pokvari, ostaje njegov duplikat koji nastavlja raditi u istom režimu.

Prednosti:

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

Nedostaci:

  • visoka cijena po jedinici volumena - 100% redundancija;
  • mala brzina prenosa podataka.

RAID 2. Diskovni niz otporan na greške koristeći Hamingov kod ECC.

Redundantno kodiranje koje se koristi u RAID-u 2 naziva se Hamingov kod. Hamingov kod vam omogućava da ispravite pojedinačne greške i otkrijete dvostruke greške. Danas se aktivno koristi u tehnologiji kodiranja podataka u RAM tipa ECC. I kodiranje podataka na magnetnim diskovima.

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

Prednosti:

  • brzo ispravljanje grešaka („u hodu“);
  • 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.

Nedostaci:

  • visoka cijena s malim brojem diskova;
  • niska brzina obrade zahteva (nije pogodno za sisteme orijentisane na transakcije).

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

Podaci se dijele na podblokove na nivou bajtova i istovremeno se zapisuju na sve diskove u nizu osim na jedan koji se koristi za paritet. Korišćenje RAID-a 3 rešava problem visoke redundantnosti u RAID-u 2. ​​Većina kontrolnih diskova koji se koriste u RAID nivou 2 je potrebna da bi se odredio položaj neuspelog bita. Ali to nije neophodno, budući da većina kontrolera može odrediti kada je disk otkazao pomoću posebnih signala ili dodatnog kodiranja informacija zapisanih na disku i korištenih za ispravljanje slučajnih grešaka.

Prednosti:

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

Nedostaci:

  • teška implementacija;
  • niske performanse sa zahtjevima visokog intenziteta za male podatke.

RAID 4. Niz nezavisnih diskova sa zajedničkim paritetnim diskom (Independent Data disks with shared Parity disk) otporan na greške

Podaci se raščlanjuju na nivou bloka. Svaki blok podataka se zapisuje na poseban disk i može se čitati zasebno. Paritet za grupu blokova se generira prilikom pisanja i provjerava pri čitanju. RAID Level 4 poboljšava performanse malih prenosa podataka kroz paralelizam, omogućavajući istovremeno obavljanje više od jednog I/O pristupa. Glavna razlika između RAID-a 3 i 4 je u tome što se kod potonjeg razvrstavanje podataka vrši na nivou sektora, a ne na nivou bita ili bajtova.

Prednosti:

  • vrlo velika brzina čitanja velikih količina podataka;
  • visoke performanse pri velikom intenzitetu zahtjeva za čitanjem podataka;
  • niski troškovi za implementaciju redundantnosti.

Nedostaci:

  • vrlo niske performanse prilikom pisanja podataka;
  • mala brzina čitanja malih podataka sa pojedinačnim zahtjevima;
  • asimetrija performansi u pogledu čitanja i pisanja.

RAID 5. Niz nezavisnih diskova sa distribuiranim paritetom otpornim na greške (Nezavisni diskovi sa podacima sa distribuiranim paritetnim blokovima)

Ovaj nivo je sličan RAID-u 4, ali za razliku od prethodnog, paritet se ciklički distribuira na sve diskove u nizu. Ova promjena poboljšava performanse pisanja malih količina podataka na multitasking sistemima. Ako su operacije pisanja pravilno planirane, moguće je paralelno obraditi do N/2 bloka, gdje je N broj diskova u grupi.

Prednosti:

  • velika brzina snimanja podataka;
  • prilično visoka brzina čitanja podataka;
  • visoke performanse pri velikom intenzitetu zahtjeva za čitanje/pisanje podataka;
  • niski troškovi za implementaciju redundantnosti.

Nedostaci:

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

RAID 6. Niz nezavisnih diskova otpornih na greške sa dve nezavisne distribuirane paritetne šeme (Nezavisni diskovi sa podacima sa dve nezavisne distribuirane paritetne šeme)

Podaci se particioniraju na nivou bloka, slično kao RAID 5, ali pored prethodne arhitekture, druga šema se koristi za poboljšanje tolerancije grešaka. Ova arhitektura je dvostruko tolerantna. Međutim, kada se vrši logičko upisivanje, postoji zapravo šest pristupa disku, što uvelike povećava vrijeme obrade jednog zahtjeva.

Prednosti:

  • visoka tolerancija grešaka;
  • prilično velika brzina obrade zahtjeva;
  • relativno niski troškovi za implementaciju redundantnosti.

Nedostaci:

  • vrlo složena implementacija;
  • složen oporavak podataka;
  • veoma niska brzina pisanja podataka.

Moderni RAID kontroleri vam omogućavaju da kombinujete različite nivoe RAID-a. Na ovaj način je moguće implementirati sisteme koji kombinuju prednosti različitih nivoa, kao i sisteme sa velikim brojem diskova. Obično je ovo kombinacija nulte razine (skidanje) i neke vrste nivoa otpornosti na greške.

RAID 10. Niz otporan na greške sa dupliranjem 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.

Nedostaci:

  • vrlo visoka cijena;
  • ograničeno skaliranje.

RAID 30. Niz otporan na greške sa paralelnim prenosom podataka i poboljšanim performansama.

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

Prednosti:

  • visoka tolerancija grešaka;
  • Visoke performanse.

Nedostaci:

  • visoka cijena;
  • ograničeno skaliranje.

RAID 50: Niz otporan na greške sa distribuiranim paritetom i poboljšanim performansama

To je RAID 0 niz, čiji su segmenti nizovi RAID 5. Kombinira toleranciju grešaka i visoke performanse za aplikacije sa visokim intenzitetom zahtjeva i visokim brzinama prijenosa podataka.

Prednosti:

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

Nedostaci:

  • visoka cijena;
  • ograničeno skaliranje.

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

Da bismo razumjeli RAID 7 arhitekturu, pogledajmo njene karakteristike:

  1. Svi zahtjevi za prijenos podataka obrađuju se asinhrono i nezavisno.
  2. Sve operacije čitanja/pisanja se keširaju preko brze x-sabirnice.
  3. Paritetni disk se može postaviti na bilo koji kanal.
  4. Mikroprocesor kontrolera niza koristi operativni sistem u realnom vremenu fokusiran na procese obrade.
  5. Sistem ima dobru skalabilnost: do 12 host interfejsa i do 48 diskova.
  6. Operativni sistem kontroliše komunikacione kanale.
  7. Koriste se standardni SCSI diskovi, magistrale, matične ploče i memorijski moduli.
  8. X-bus velike brzine se koristi za rad sa internom keš memorijom.
  9. Procedura generiranja pariteta je integrirana u keš memoriju.
  10. Diskovi priključeni na sistem mogu se deklarisati kao odvojeni.
  11. SNMP agent se može koristiti za upravljanje i nadgledanje sistema.

Prednosti:

  • velika brzina prenosa podataka i velika brzina obrade zahteva (1,5 - 6 puta veća od ostalih standardnih RAID nivoa);
  • visoka skalabilnost host interfejsa;
  • brzina pisanja podataka raste sa brojem diskova u nizu;
  • Nema potrebe za dodatnim prijenosom podataka za izračunavanje pariteta.

Nedostaci:

  • vlasništvo jednog proizvođača;
  • vrlo visoka cijena po jedinici volumena;
  • kratak garantni rok;
  • ne može biti servisiran od strane korisnika;
  • morate koristiti neprekidno napajanje kako biste spriječili gubitak podataka iz keš memorije.

Pogledajmo sada standardne nivoe zajedno da uporedimo njihove karakteristike. Poređenje je napravljeno u okviru arhitektura navedenih u tabeli.

RAIDMinimum
diskovi
Need
u diskovima
Neuspjeh
održivost
Brzina
prijenos podataka
Intenzitet
obrada
zahtjevi
Praktično
upotreba
0 2 N veoma 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
mali fajl serveri
2 7 2N ~RAID 3Niskomainframes
3 3 N+1 NiskoGrafika, video
4 3 N+1 R WR=RAID 0
W
serveri datoteka
5 3 N+1 R WR=RAID 0
W
serveri baze podataka
6 4 N+2najvišiniskoR > 1 disk
W
korišćen izuzetno retko
7 12 N+1 najvišinajviširazličite vrste aplikacija

Pojašnjenja:

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

Neki aspekti implementacije RAID sistema

Razmotrimo tri glavne opcije za implementaciju RAID sistema:

  • softver (zasnovan na softveru);
  • hardver - baziran na sabirnici;
  • hardver - autonomni podsistem (bazirani na podsistemu).

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

Svaka od gore navedenih implementacija zasniva se na izvršavanju programskog koda. Oni se zapravo razlikuju po tome gdje se ovaj kod izvršava: u centralnom 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 na centralnom procesoru uz dodatni rad i povećan promet autobusa. Jednostavni RAID nivoi 0 i 1 se obično implementiraju u softveru, jer ne zahtevaju značajna računanja. Uzimajući ove karakteristike u obzir, softverski bazirani RAID sistemi se koriste u serverima početnog nivoa.

Hardverske RAID implementacije shodno tome koštaju više od softverskih, jer koriste dodatni hardver za izvođenje I/O operacija. Istovremeno, oni oslobađaju ili oslobađaju centralni procesor i sistemsku sabirnicu i, u skladu s tim, omogućavaju povećanje performansi.

Realizacije orijentisane na magistralu su RAID kontroleri koji koriste sabirnicu velike brzine računara u koji su instalirani (u poslednje vreme se obično koristi PCI magistrala). Zauzvrat, implementacije orijentirane na sabirnicu mogu se podijeliti na niske i visoke razine. Prvi obično nemaju SCSI čipove i koriste takozvani RAID port na matičnoj ploči sa ugrađenim SCSI kontrolerom. U ovom slučaju, funkcije obrade RAID koda i I/O operacija su raspoređene između procesora na RAID kontroleru i SCSI čipova na matičnoj ploči. Tako se centralni procesor oslobađa od obrade dodatnog koda, a saobraćaj sa magistrale je smanjen u odnosu na verziju softvera. Cijena takvih ploča je obično niska, pogotovo ako su namijenjene RAID 0 ili 1 sistemima (postoje i implementacije RAID 3, 5, 10, 30, 50, ali su skuplje), zbog čega se postepeno istiskujući softverske implementacije sa tržišta servera ulaznog nivoa. Kontrolori visokog nivoa sa implementacijom magistrale imaju nešto drugačiju strukturu od njihove mlađe braće. Oni preuzimaju sve funkcije vezane za I/O i izvršavanje RAID koda. Osim toga, ne ovise toliko o implementaciji matične ploče i, u pravilu, imaju više mogućnosti (na primjer, mogućnost povezivanja modula za pohranjivanje informacija u keš memoriju u slučaju kvara na matičnoj ploči ili nestanka struje) . Takvi kontroleri su obično skuplji od low-end kontrolera i koriste se u serverima srednje i visoke klase. Oni, po pravilu, implementiraju RAID nivoe 0.1, 3, 5, 10, 30, 50. S obzirom da su implementacije orijentisane na magistralu direktno povezane na internu PCI magistralu računara, one su najproduktivnije među sistemima koji se razmatraju ( kada se organizuju sistemi sa jednim domaćinom). Maksimalne performanse takvih sistema mogu dostići 132 MB/s (32bit PCI) ili 264 MB/s (64bit PCI) na frekvenciji magistrale od 33MHz.

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

  • zavisnost od operativnog sistema i platforme;
  • ograničena skalabilnost;
  • ograničene mogućnosti za organizovanje sistema otpornih na greške.

Svi ovi nedostaci se mogu izbjeći korištenjem autonomnih podsistema. Ovi sistemi imaju potpuno autonomnu eksternu organizaciju i, u principu, predstavljaju poseban računar koji se koristi za organizovanje sistema za skladištenje informacija. Osim toga, ako se tehnologija optičkih kanala uspješno razvije, performanse autonomnih sistema neće biti ni na koji način inferiorne u odnosu na sisteme orijentirane na magistralu.

Tipično, eksterni kontroler se postavlja u poseban rack i, za razliku od sistema sa bus organizacijom, može imati veliki broj ulazno/izlaznih kanala, uključujući i host kanale, što omogućava povezivanje nekoliko host računara na sistem i organizovanje klastera. sistema. U sistemima sa samostalnim kontrolerom mogu se implementirati hot standby kontroleri.

Jedan od nedostataka autonomnih sistema je njihova visoka cijena.

Uzimajući u obzir gore navedeno, napominjemo da se autonomni kontroleri obično koriste za implementaciju sistema za skladištenje podataka velikog kapaciteta i klaster sistema.

Najbolji članci na ovu temu