maandag 22 juni 2015

PanFS RAID 6+ architectuur: Enorme groei in betrouwbaarheid

Een belangrijke eis aan storage systemen is dat deze betrouwbaar zijn. We slaan immers niet voor niets data op. Het is belangrijk dat de data in de juiste staat blijft en dat het niet verloren gaat.

Beperken van hardware gebreken
Een variabele die invloed heeft op de betrouwbaarheid van data is de hardware van het storage systeem, zoals schijven. Als hardware stuk gaat kan data verloren gaan. Wat je kan doen om data niet echt te verliezen is een back-up maken. Echter, een back-up is in veel gevallen absoluut niet goed genoeg, bijv. aangezien het tijd kost om de data van de back up terug te halen, terwijl die tijd zeer kostbaar is.

Redundantie creëren met RAID
Gelukkig zijn er andere oplossingen om data verlies als gevolg van het falen van hardware tegen te gaan. Er zijn diverse RAID (redundant array of independent disks) constructies, die ervoor zorgen dat data toch nog beschikbaar is als er schijven stuk gaan. RAID 1 houdt in dat er een exacte kopie is van de data, zodat als de ene versie van de data verloren is, de andere versie direct gebruikt kan worden. Helaas heb je dan twee keer zoveel opslagruimte nodig, wat bijv. flink in de kosten gaat lopen.

Een andere RAID configuratie is RAID 6. Raid 6 houdt in dat data over meerdere schijven verdeeld wordt. Daarbij wordt er parity data opgeslagen. De parity data zorgt ervoor dat als er maximaal twee schijven stuk gaan, de verloren data toch teruggehaald kan worden m.b.v. een berekening. Het concept achter dit mechanisme is een beetje vergelijkbaar met het volgende. Stel de data op de ene disk is '5' en de data op de andere disk is '2', dan kunnen deze getallen altijd teruggehaald worden als een van de twee verloren is, mits je als parity data de formule 'data disk 1 + data disk 2 = 7' hebt, want 5+2=7.

Enkele kenmerken van PanFS RAID 6+
Hoewel dit aardig betrouwbaar en qua ruimte efficiënter is dan bijv. RAID 1, brengt PanFS RAID 6+ dit naar een nog hoger niveau, d.m.v. o.a. horizontal parity, vertical parity, triple-mirrored small files en PanFS per file distributed RAID.

Horizontal parity zorgt ervoor dat als er maximaal twee blades tegelijkertijd falen, de data hersteld kan worden m.b.v. de andere blades.
Vertical parity zorgt ervoor dat data heel snel hersteld kan worden als er gebreken zijn binnen een blade.
Triple-mirrored small files houdt in dat er twee volledige kopieën zijn van kleine stukken data op SSD's (zeer snelle schijven), zodat de data enorm snel hersteld kan worden.
PanFS per file distributed RAID betekent dat de RAID constructie niet op blok niveau is, maar op het specifiekere bestandsniveau, waardoor data nog sneller hersteld kan worden en de betrouwbaarheid toeneemt naarmate het storage systeem groeit.

Al met al komt het erop neer dat het minimaliseren van de mogelijkheid op hardware gebreken een belangrijke reden is van de betrouwbaarheid van RAID 6+. Denk bijvoorbeeld maar eens aan een persoon die een blessure heeft aan zijn knie. De gezonde knie moet dan gedeeltelijk de taak van de geblesseerde knie overnemen, waardoor de kans dat de gezonde knie ook geblesseerd raakt groter wordt. Hoe sneller de blessure aan de knie hersteld wordt, hoe kleiner de kans is dat de gezonde knie ook geblesseerd raakt. Bovendien, als het gebrek nog relatief klein is, kan het makkelijker hersteld worden en problemen met een grotere impact die lastiger te herstellen zijn voorkomen.

Enorme toename in betrouwbaarheid
Alleen al de RAID 6+ triple parity protection (= de combinatie van horizontal parity en vertical parity) zorgt ervoor dat de betrouwbaarheid meer dan 150 keer beter is (zonder significante afname in performance), en het feit dat de betrouwbaarheid van het storage systeem toeneemt i.p.v. afneemt in het geval het systeem groeit is een flinke vooruitgang in de storage wereld.


Geen opmerkingen:

Een reactie posten