RAID je akronim za Redundant Array of Independent Disks, i danas je sastavni dio serverske infrastrukture. Osim toga, RAID se često koristi i privatno, doma. Zbog toga smo se i odlučili napisati što je RAID, kako se koristi i koji nivo zaštite dolazi sa korištenjem RAID kontrolora.
Bez obzira dali je riječ o web serveru, cloud serveru ili serveru za razmjenu e-mail poruka, RAID je hardverska komponenta na koju se oslanjaju poduzeća da bi zaštitili podatke. Zapravo, RAID nam služi kao zaštita od mogućeg gubitka podataka. U nastavku ćemo napisati kako RAID štiti podatke.
Prije nego krenemo, na početku ćemo objasniti što je RAID.
Što je RAID?
RAID (Redundant Array of Independent Disks) je način spremanja istih podataka na različitim uređajima (HDD uređajima), s ciljem da se podaci sačuvaju u slučaju da jedan HDD zakaže. Postoji više različitih RAID levela (konfiguracija), s različitim ciljem djelovanja.
Kako radi RAID?
Zapravo je logika jednostavna. RAID radi na način da podatke sprema na više disk uređaja, i na taj način dopušta I/O operacijama da se preklapaju, uz kontrolirani balans – čime se poboljšavaju performanse. Korištenjem većeg broja disk uređaja povećava se vrijeme između mogućih kvarova, a redundantna pohrana dodatno povećava toleranciju na kvarove.
RAID provodi nekoliko tehnika za što bolje performanse i sigurnost podataka. Disk mirroring (dupliciranje podataka), ili disk striping (cjepkanje podataka), su dva različita pristupa. Dupliciranje podataka znači da će dva ili više disk uređaja, svaki za sebe, ispisati identične podatke. Cjepkanje podataka se odnosi na pristup u kojem više disk uređaja, svaki za sebe, preuzima dio podataka – od ukupne cjeline. Disk mirroring i disk striping se mogu kombinirati u RAID polje.
RAID kontroler
RAID kontroler je uređaj koji upravlja disk uređajima u podatkovnom polju. Može se koristiti kao sastavni dio računala (servera) ili kao dodatni hardver koji radi „pored“ računala ili servera. Korištenjem RAID koktroler uređaja možete popraviti performanse, i dodatno osigurati podatke od mogućeg gubitka.
RAID kontroler može biti hardver, ali i softversko rješenje. Kada mislimo na RAID, najčešće govorimo o hardveru, ali postoji i softverski baziran RAID. Kada budemo spominjali softversko rješenje, to ćemo posebno naglasiti.
Razine RAID arhitekture
RAID uređaji koriste različite pristupe, koje zovemo razine. Poznajemo 6 definicija, različitih RAID razina, i označavamo ih od 0 – 5. Broj razina se može kombinirati, pa ćemo pristupe kategorizirati kao RAID kategorije: standardni RAID, nested i nestandardni RAID.
1. Standardni RAID
RAID 0 – pruža striping ali ne i redundanciju podataka. RAID 0 ima najbolje performanse, ali nema toleranciju na pogreške ili kvar na disk uređaju.
RAID 1 – poznat i kao disk mirroring je poznata konfiguracija za dupliciranje podataka na najmanje dva disk uređaja. Ne koristi striping. Performanse čitanja podataka su poboljšane s obzirom da dva diska mogu čitati istovremeno. Sa druge strane, brzina zapisivanja je ista kao kada se koristi jedan disk uređaj, jer će obadva raditi točno istu operaciju pisanja. Logično je zaključiti da RAID 1 konfiguracija ima toleranciju u slučaju da se pokvari jedan od dva ili više disk uređaja.
RAID 2 – konfiguracija koristi striping, s tim da neki disk uređaji rade provjeru na greške i korigiraju greške. RAID 2 nema nikakve prednosti nad RAID 3 konfiguracijom i danas se gotovo nikako ne koristi.
RAID 3 – konfiguracija radi po sličnom principu kao prethodno spomenuta RAID 2 konfiguracija, s tim da se parity informacije spremaju na zasebnom disku. RAID 3 koristi manji broj disk uređaja, i zamijenio je potrebu za RAID 2 modelom.
RAID 4 – koristi model po kojem korisnik može čitati podatke sa svakog pojedinačnog disk uređaja. I/O preklapanje je moguće prilikom čitanja podataka, ali ne i prilikom zapisivanja podataka.
RAID 5 – konfiguracija treba minimalno 3 disk uređaja, ali za najbolje performanse trebamo 5 disk uređaja ili više. Rijetko se koristi u prilikama gdje se traži veliki posao zapisivanja podataka, jer je po performansama u tom slučaju RAID 5 loš izbor. Kada disk uređaj zakaže, potrebno je više vremena da se podaci repliciraju u novi RAID 5.
RAID 6 – konfiguracija je slična kao i kod RAID 5, s tim da se koristi dodatna parity shema raspoređena po svim disk uređajima u polju. Dodatna parity shema omogućuje da sustav funkcionira čak i ako 2 disk uređaja zakažu u isto vrijeme. RAID 6 nudi lošije performanse kod zapisivanja nego RAID 5.
2. Nested RAID
Kada kombiniramo različite RAID modele, zovemo ih nested RAID. Objasnit ćemo neke nested RAID konfiguracije.
RAID 10 (RAID 1 + 0) – je kombinacija RAID 1 i RAID 0 modela. Ovakav pristup nudi bolje performanse nego RAID 1, ali je i mnogo skuplja opcija. Kod RAID 10 formacije imamo duplicirane podatke koji su još i cjepkani po disk uređajima (striping).
RAID 01 (RAID 0 + 1) – je slična kombinacija kao i RAID 1 + 0 , s tim da je tijek radnji (dupliciranje + striping) zamijenjen. RAID 0 + 1 radi stripe koji će onda duplicirati.
RAID 03 (RAID 0 + 3, poznat i kao RAID 53 ili RAID 5 + 3) – ovaj RAID model koristi striping kao RAID 0 za RAID 3 virtualne disk blokove. Ovakav pristup nudi bolje performanse nego RAID 3, ali po znatno višoj cijeni.
RAID 50 (RAID 5 + 0) – kombinacija RAID 5 i RAID 0 daje bolje performanse od oba modela zasebno, bez negativnog utjecaja na zaštitu podataka.
3. Nestandardni RAID modeli
Nestandardni RAID modeli su kombinacije standardnih RAID konfiguracija, koje su prilagođene potrebama kompanija i velikih organizacija za određene zadatke. U nastavku ćemo spomenuti neke primjere nestandardnih RAID opcija.
RAID 7 – nestandardni RAID koji se sastoji od RAID 3 i RAID 4 konfiguracije i kao dodatak nudi keširanje podataka.
Adaptive RAID – možemo prevesti kao prilagođeni RAID a riječ je o konfiguraciji koja ima kontroler za odlučivanje kako spremiti parity na disk uređaju. Kontroler može odabrati RAID 3 ili RAID 5 način spremanja podataka.
Linux MD RAID 10 – konfiguraciju pruža Linux kernel, koji ima mogućnost i standardnih RAID 0, RAID 1, RAID 4, RAID 5 i RAID 6 konfiguracija.
Nakon što smo objasnili što je RAID, i kako smo već spomenuli da postoji fizička RAID konfiguracija i softverska, vrijeme je da usporedimo te dvije kategorije.
Hardver RAID vs softver RAID
RAID konfiguraciju možemo postići hardverski ili softverski. Hardverski RAID podržava različite RAID konfiguracije, ali je najbolje prilagođen RAID 5 i RAID 6 modelima. I drugi modeli su dobro prihvaćeni, a glavna značajka hardverskog RAID-a je fizički kontroleri sa disk uređajima koji se instaliraju u sami server ili pored servera.
Softverski RAID podržan je kod modernih sustava, i može se implementirati na više načina.
Softverski RAID može biti komponenta samog sustava, može oponašati virtualni RAID, ili RAID model koji se nalazi iznad sustava.
Prednosti korištenja RAID-a
- Kao najveću prednost možemo navesti smanjenje troškova hardvera, s obzirom da se u RAID poljima nalazi veći broj disk uređaja koji su cjenovno povoljniji.
- Korištenjem većeg broj disk uređaja u RAID-u dobit ćemo bolje performanse nego što ih može dati jedan disk uređaj.
- Povećanje brzine računala i viši nivo pouzdanosti s obzirom da RAID može izdržati kvar jednog ili više disk uređaja, ovisno o konfiguraciji.
- Čitanje i zapisivanje podataka izvodi se brže nego sa jednim disk uređajem. Povećanje brzine ovisi o konfiguraciji i RAID modelu.
Nedostatci RAID-a
- Ovisno o konfiguraciji, RAID rješenja mogu biti skupa za neke firme. Cijena po gigabajtu može biti viša od cijene po gigabajtu jednog disk uređaja.
- Kada jedan disk uređaj u RAID-u zakaže, povećava se šansa da će i drugi disk uređaj zakazati. Ovakav pristup slijedi logiku da svi disk uređaji u RAID-u rade pod istim opterećenjem i njihov radni vijek dolazi u relativno malom vremenskom razmaku.
- Neki RAID modeli (RAID 1 i RAID 5) mogu podnijeti da zakaže samo jedan disk uređaj.
- Kada jedan disk uređaj zakaže, postoji mogućnost da drugi disk uređaji imaju oštećene sektore, i da su neki podaci ipak izgubljeni.
Kada se koristi RAID?
Do sada smo napisali što je RAID, koje vrste i konfiguracije poznajemo i kakva je svrha korištenja RAID-a. U nastavku ćemo spomenuti prilike, kada se koristi RAID.
- RAID se koristi u situacijama kada trebamo sačuvati velike količine podataka, koje možemo vratiti u slučaju da disk uređaj zakaže.
- RAID se koristi kada trebamo stalni pristup podacima, i kada je to važan faktor u poslovanju.
- Ako radimo s velikim datotekama, ili općenito sa velikom količinom podataka, RAID je hardver koji trebamo.
- Ako imamo I/O disk povezane probleme i poteškoće, korištenjem RAID polja riješili smo spomenute probleme.
- Ako je cijena faktor, svakako ćemo gledati neku RAID opciju.
Kratka povijest RAID-a
Objasnili smo što je RAID. Napisali smo već dosta na tu temu, pa sada, prije kraja da napišemo i kratku povijest ove tehnologije, i zaključak za kraj.
Pojam RAID prvi puta se pojavio 1987.godine, s tim da je akronim dolazio od Redundant Arrays of Inexpensive Disks. Korištenjem redundancije, RAID polje može raditi pouzdanije od bilo kojeg diska koji radi samostalno.
RAID tehnologija možda je došla do svog vrhunca, pa čak već sada osjeća lagani pad. Naime, nove tehnologije guraju RAID po strani. Tu najviše mislimo na SSD uređaje koji rade na takav način, da prednosti u RAID-u nisu očigledne kao što je slučaj kod klasičnih diskova.
Druga tehnologija (erasure coding) daje nam naslutiti totalnu zamjenu RAID-a.
Na kraju, redundancija kompletnih serverskih mašina isključuje potrebu za redundancijom samog diska.