In hebben we al de vraag besproken of āRAID op SSD toepasbaar isā aan de hand van Kingston-opslagmiddelen, maar we deden dit alleen in het kader van niveau nul. In het huidige artikel zullen we de mogelijkheden van professionele en thuis NVMe-oplossingen in de meest populaire soorten RAID-array's bespreken en de compatibiliteit van controllers uitleggen. met Kingston-opslagmiddelen.

Waarom is RAID op SSD nodig?
Voordelen van opslagarrays op basis van SSD ten opzichte van opslagarrays op harde schijven zijn onder meer een verkorting van de toegangstijd tot gegevens op het opslagmedium en uitstekende prestaties bij lees-/schrijfbewerkingen. Voor optimale RAID-prestaties op basis van SSD is echter een ideale combinatie van processor, cache, software en hardware vereist. Wanneer al deze factoren perfect samenwerken, kan een RAID-array met SSD's aanzienlijk beter presteren dan een vergelijkbare configuratie met traditionele HDD's.
Een typische SSD verbruikt minder energie dan harde schijven, dus bij het samenvoegen van een groot aantal solid-state drives in een RAID-array kan de energiebesparing in vergelijking met een RAID-array van HDD's ook leiden tot lagere kosten bij de betaling van bedrijfsrekeningen voor elektriciteit.
Echter, SSD RAID heeft beperkingen en nadelen: in het bijzonder de hogere prijs per gigabyte opslagruimte vergeleken met harde schijven van vergelijkbare capaciteit. De MTBF van flash-geheugen is beperkt tot een bepaald aantal schrijfcycli. Dit betekent dat SSD's een bepaalde levensduur hebben, afhankelijk van het gebruik: hoe actiever informatie wordt herschreven, hoe sneller de drive defect raakt. Aan de andere kant hebben enterprise SSD's een behoorlijke levensduur, vergelijkbaar met die van mechanische harde schijven.
Hoe leven Kingston SSD's in RAID met Broadcom-controllers
Bij de opkomst van SSD-opslag hadden RAID-configuraties veel nuances. Dit was onder andere te wijten aan het gebruik van minder betrouwbare HDD-schijven. Solid-state schijven zijn veel betrouwbaarder dan hun magnetische tegenhangers. Zoals we weten, bevatten SSD-oplossingen geen bewegende onderdelen, waardoor mechanische schade tot nul is beperkt. De kans dat een solid-state schijf defect raakt door spanningspieken is ook erg klein, aangezien op het niveau van een thuis-pc of elke server je beschermd wordt door een UPS, netwerkfilters en zelfs een voeding.
Bovendien hebben solid-state schijven nog een ander belangrijk voordeel: zelfs als de geheugencellen slijten op het schrijfproces, kan data nog steeds van hen worden gelezen; maar als een magnetische schijf beschadigd raakt, is dat helaas niet mogelijk.

Vandaag de dag is het volkomen normaal om SSD-oplossingen in RAID-arrays van verschillende niveaus te gebruiken. Het belangrijkste is om de juiste solid-state schijven te kiezen met een minimale latentie. Idealiter gebruik je SSD's van dezelfde fabrikant en hetzelfde model om te voorkomen dat er een mix van schijven ontstaat die verschillende belastingstypes ondersteunen en zijn gebouwd op basis van verschillende soorten geheugen, controllers en andere technologieƫn. Dat wil zeggen, als we besluiten om vier of 16 NVMe SSD's van Kingston aan te schaffen voor het creƫren van een RAID-array, laten we dan beter zorgen dat ze allemaal uit dezelfde serie en modelreeks komen.
Overigens, in we vroegen niet voor niets controllers van Broadcom aan als voorbeeld toen we het hadden over NVMe SSD's van Kingston. Het punt is dat in de handleidingen van deze apparaten direct compatibele schijven worden vermeld (inclusief oplossingen van de eerder genoemde Amerikaanse SSD-fabrikant) waarmee de controller zonder problemen zal werken. Deze informatie moet je hanteren bij het kiezen van een 'controller-SSD'-combinatie voor RAID.
Laten we de werking van Kingston SSD's bekijken in de meest populaire RAID-types ā ā1ā, ā5ā, ā10ā, ā50ā
Dus, niveau 'nul' van RAID biedt geen gegevensredundantie, maar verhoogt alleen de prestaties. RAID 0 biedt helemaal geen gegevensbescherming, dus we zullen het in de zakelijke sector niet overwegen. RAID 1 daarentegen levert volledige redundanties, maar slechts een bescheiden prestatieverbetering, en moet alleen worden overwogen als prestatie niet de belangrijkste factor is bij het opzetten van een RAID-array van SSD's.
RAID 1 op basis van Kingston SSD's en Broadcom controllers
Dus, de RAID-array van het eerste niveau op basis van de Broadcom MegaRAID 9460-16i-controller verenigt twee tot 32 Kingston-schijven, die een exacte kopie van elkaar zijn en volledige redundanties biedt. Bij traditioneel gebruik van HDD's bleef de schrijf- en leessnelheid op het niveau van die HDD, maar met NVMe SSD-oplossingen behalen we tot tien keer betere prestaties. Vooral als het gaat om de toegangstijden van gegevens. Bijvoorbeeld, met twee Kingston DC1000M U.2 NVMe SSD's in server RAID 1 krijgen we 350.000 IOPS bij het lezen van willekeurige gegevens en 75.000 IOPS bij het schrijven.

Wat betreft de sequentiƫle leessnelheid zullen de resultaten overeenkomen met de specificaties van de schijf: 3200 MB/s. Maar omdat beide NVMe SSD's operationeel zijn, kunnen gegevens tegelijkertijd van hen worden gelezen, wat de leesoperaties behoorlijk snel maakt. De schrijfsnelheid (die is opgegeven op 2000 MB/s) zal echter trager zijn, omdat elke schrijfoperatie twee keer moet worden uitgevoerd.

RAID 1 is ideaal voor kleine databases of elke andere omgeving die behoefte heeft aan fouttolerantie, maar met een beperkte capaciteit. Het spiegelen van schijven is vooral nuttig in noodherstelscenario's (de prestaties verminderen daarbij iets), omdat het onmiddellijke 'levensredden' van belangrijke gegevens mogelijk maakt als een van de schijven in de array defect raakt. Maar omdat dit niveau van bescherming vereist dat de capaciteit voor het opslaan van de spiegelkopie wordt verdubbeld (voor 100 TB zijn 200 TB nodig), gebruiken veel zakelijke systemen meer kosteneffectieve opslagopties: RAID 5 en RAID 6.
RAID 5 op basis van Kingston SSD's en Broadcom controllers
Voor het organiseren van een RAID-niveau vijf-array hebben we ten minste drie schijven nodig, waarvan de gegevens afwisselend (cyclich op alle schijven binnen de array geschreven) worden opgeslagen, maar niet gedupliceerd. Bij hun organisatie moet rekening worden gehouden met hun meer complexe opzet, aangezien hier het begrip "pariteitscheck" (of "evenwijdigheid") opkomt. Dit begrip verwijst naar de logische algebraĆÆsche functie XOR (exclusieve 'OF'), die het gebruik van minimaal drie schijven in de array voorschrijft (maximaal 32). De informatie over pariteit wordt aangemaakt op alle "schijven" in de array.

Voor een array van vier SATA SSD's Kingston DC500R met een capaciteit van 3,84 TB elk, krijgen we 11,52 TB aan ruimte en 3,84 TB voor pariteitschecks. En als we 16 NVMe-schijven Kingston DC1000M U.2 met een capaciteit van 7,68 TB in RAID vijf niveau combineren, krijgen we 115,2 TB met een verlies van 7,68 TB. Zoals je ziet, hoe meer schijven, hoe beter het resultaat. Dit is ook beter omdat hoe meer schijven er in RAID 5 zitten, hoe hoger de totale prestaties zijn bij schrijfoperaties. En lineair lezen zal het niveau van RAID 0 bereiken.

Een RAID 5-schijfgroep biedt een hoge doorvoer (vooral voor grote bestanden) en redundantie met minimale prestatieverlies. Dit type array-organisatie is het meest geschikt voor netwerken die gelijktijdig veel kleine invoer-/uitvoertaken (I/O) uitvoeren. Het is echter niet raadzaam om het te gebruiken voor taken die veel schrijfoperaties van kleine of beperkte blokken vereisen.
Er is nog een aspect: bij het falen van ƩƩn van de NVMe-schijven, schakelt RAID 5 over naar de degradatiemodus en het falen van nog een opslagapparaat kan kritiek zijn voor alle gegevens. In het geval van een storing van ƩƩn schijf in de array gebruikt de RAID-controller de pariteitsinformatie om alle ontbrekende gegevens te herstellen.
RAID 10, gebaseerd op Kingston SSD's en Broadcom-controllers
RAID 0 biedt ons een verdubbeling van de snelheid en toegangstijd, terwijl RAID 1 zorgt voor betrouwbaarheid. Idealiter zou je deze twee moeten combineren, en hiervoor is RAID 10 (ook wel 1+0 genoemd) de oplossing. De 'tien' bestaat uit vier SATA SSD- of NVMe-schijven (maximaal 32) en bestaat uit een array van 'spiegels', waarvan het aantal schijven altijd een veelvoud van vier moet zijn. Gegevens in deze array worden geschreven door ze in vaste blokken te splitsen (zoals bij RAID 0) en afwisselend tussen de schijven te verdelen, waarbij kopieƫn tussen de 'disks' in de RAID 1-array worden verdeeld. En dankzij de mogelijkheid tot gelijktijdige toegang tot meerdere schijfgroepen, biedt RAID 10 hoge prestaties.

Omdat RAID 10 gegevens over meerdere spiegelparen kan verdelen, betekent dit dat het ƩƩn schijf in een paar kan missen. Echter, in het geval van een storing van beide spiegelparen (dat wil zeggen alle vier schijven), zal er onvermijdelijk gegevensverlies optreden. Uiteindelijk verkrijgen we ook goede fouttolerantie en betrouwbaarheid. Houd er echter rekening mee dat, net als bij RAID 1, de array van het tiende niveau slechts de helft van de totale capaciteit gebruikt, waardoor het een kostbare oplossing is. En het is ook complex om in te stellen.
RAID 10 is geschikt voor gebruik met gegevensopslag die 100% redundantie van spiegeldiscgroepen vereist, evenals verhoogde I/O-prestaties van RAID 0. Dit is de beste oplossing voor middelgrote databases of elke omgeving die hogere fouttolerantie vereist dan RAID 5.
RAID 50 op basis van Kingston SSD's en Broadcom-controllers
Een gecombineerde array, vergelijkbaar met RAID 10, dat een array van nul niveau is, gecreƫerd uit arrays van het vijfde niveau. Net als in het vorige geval is het belangrijkste doel van deze array om dubbele prestaties te behalen terwijl de betrouwbaarheid van gegevens in RAID 5 arrays behouden blijft. RAID 50 biedt een verbeterde schrijfsnelheid en betere gegevensbescherming dan standaard RAID 5 in het geval van een schijfstoringen en kan ook sneller herstellen in geval van een storing van een van de schijven.

Een RAID 50-schijfgroep splitst gegevens in kleinere blokken en verdeelt deze vervolgens over elke RAID 5-array. Een RAID 5-schijfgroep splitst op zijn beurt ook de gegevens in kleinere blokken, berekent de pariteit, voert een logische OR-bewerking uit voor de blokken en voert vervolgens schrijfoperaties uit naar de datablokken en de pariteitscontrole voor elke schijf in de schijfgroep.
En hoewel de prestaties onvermijdelijk verminderen bij een storing van een van de drives, is dit niet zo aanzienlijk als in een RAID 5-array, omdat ƩƩn fout alleen invloed heeft op ƩƩn van de arrays, terwijl de andere volledig operationeel blijft. In feite kan RAID 50 tot acht HDD/SSD/NVMe-drivefouten weerstaan, mits elke defecte "schijf" zich in een aparte RAID 5-array bevindt.

RAID 50 is het beste voor toepassingen die hoge betrouwbaarheid vereisen en die een groot aantal aanvragen moeten verwerken, terwijl ze een hoge gegevensoverdrachtsnelheid behouden en lagere kosten hebben dan in een RAID 10-array. Echter, aangezien er voor de configuratie van een RAID 50-array minimaal zes drives vereist zijn, kan de kostenfactor niet volledig worden uitgesloten. Een van de nadelen van RAID 50 is dat, net als RAID 5, het een complexe controller nodig heeft: zoals in het vorige artikel van Broadcom.
Het is ook vermeldenswaard dat RAID 50 minder bruikbare schijfruimte heeft dan RAID 5, vanwege de toewijzing van capaciteit voor de pariteitscontroles. Desondanks heeft het nog steeds meer bruikbare ruimte dan andere RAID-niveaus, vooral die met mirroring. Met een minimumvereiste van zes schijven kan RAID 50 een dure optie zijn, maar de extra schijfruimte rechtvaardigt de kosten door de bescherming van zakelijke gegevens. Dit type array wordt aanbevolen voor het werken met gegevens die hoge opslagbetrouwbaarheid, hoge aanvraagfrequentie, hoge overdrachtssnelheid en grote capaciteit voor opslag vereisen.
RAID 6 en RAID 60: we hebben ook niet vergeten te vermelden
Aangezien we het hebben gehad over de arrays van het vijfde en vijftigste niveau, is het zonde om ook de types organisatie van arrays zoals RAID 6 en RAID 60 niet te noemen.

De prestaties van RAID 6 zijn vergelijkbaar met die van RAID 5, maar hier worden minimaal twee schijven toegewezen voor pariteitscontrole, waardoor de array in staat is om de uitval van twee schijven te overleven zonder gegevensverlies (bij RAID 5 is zo'n situatie zeer ongewenst). Dit zorgt voor een hogere betrouwbaarheid. Verder is alles hetzelfde als in een niveau vijf array: bij een storing van ƩƩn of twee schijven gebruikt de RAID-controller pariteitsblokken om alle ontbrekende informatie te reconstrueren. Bij het falen van twee schijven vindt het herstel niet tegelijkertijd plaats: eerst wordt de eerste schijf hersteld, vervolgens de tweede. Op deze manier worden er twee hersteloperaties uitgevoerd.

Het is niet moeilijk te raden dat als RAID 50 een nulniveau-array is van vijfde niveau arrays, RAID 60 een nulniveau-array is van zesde niveau arrays, waar we net over hebben gesproken. Dit betekent dat deze organisatie van de RAID-opslag het mogelijk maakt om het verlies van twee SSD's in elke RAID 6-schijfgroep te overleven. De werkwijze is vergelijkbaar met die we hebben beschreven in het gedeelte over RAID 50, maar het aantal storingen dat de zestigste niveau array kan weerstaan, groeit van 8 naar 16 schijven. Dergelijke arrays worden meestal gebruikt voor online klantenservice die hoge beschikbaarheid vereist.
Laten we de conclusies samenvatten:
Ondanks dat mirroring voor een hogere beschikbaarheid zorgt dan RAID 50/60, vereist het ook veel meer ruimte. Aangezien de hoeveelheid gegevens verdubbeld wordt, krijgt u feitelijk slechts 50% van de totale capaciteit van de in de server geĆÆnstalleerde schijven voor het opslaan en bewaren van informatie. De keuze tussen RAID 50/60 en RAID 10 zal waarschijnlijk afhangen van de beschikbare budgetten, capaciteit van de server en uw behoeften op het gebied van gegevensbescherming. Daarbij komt de kosten een belangrijke rol spelen, vooral als we het hebben over SSD-oplossingen (zowel voor de enterprise als de consumentenmarkt).
Niet minder belangrijk is dat we nu precies weten ā RAID op basis van SSD is een volledig veilige oplossing en een normale praktijk voor moderne bedrijven. Ook voor thuisgebruik is er reden om over te stappen op NVMe, als de budgetten dat toelaten. En als je nog steeds afvraagt waarom dit allemaal nodig is, ga dan terug naar het begin van het artikel ā we hebben het daar al in detail beantwoord.
Dit artikel is voorbereid met ondersteuning van onze collega's van Broadcom, die hun controllers aan Kingston-engineers aanbieden voor testen met SATA/SAS/NVMe enterprise-class opslagmedia. Dankzij deze vriendschappelijke samenwerking hoeven klanten niet te twijfelen aan de betrouwbaarheid en stabiliteit van Kingston-opslagmedia met HBA- en RAID-controllers. .
Voor meer informatie over Kingston-producten kunt u terecht op het bedrijf.
Bron: habr.com
