Vi deler vår erfaring, hvordan SSD-er yter innenfor rammen av RAID og hvilket array-nivå som er mer lønnsomt

В tidligere materiale vi har allerede vurdert spørsmålet om "Vil vi bruke RAID på SSD" ved å bruke eksemplet med Kingston-stasjoner, men vi gjorde det bare innenfor nullnivået. I den nåværende artikkelen vil vi analysere alternativene for bruk av profesjonelle og hjemme-NVMe-løsninger i de mest populære typene RAID-arrayer og snakke om kontrollerkompatibilitet. Broadcom med Kingston-drev.

Vi deler vår erfaring, hvordan SSD-er yter innenfor rammen av RAID og hvilket array-nivå som er mer lønnsomt

Hvorfor trenger du RAID på en SSD?

Fordelene med SSD-baserte lagringsarrayer fremfor HDD-lagringsarrayer inkluderer raskere tilgangstider til data på stasjonen og overlegen lese-/skriveytelse. En ideell SSD-basert RAID-ytelse krever imidlertid en optimal kombinasjon av prosessor, hurtigbuffer, programvare og maskinvare. Når alle disse faktorene fungerer perfekt sammen, kan en SSD RAID i stor grad utkonkurrere en sammenlignbar konfigurasjon ved bruk av tradisjonelle harddisker.

En typisk SSD bruker mindre strøm enn HDD-er, så når du kombinerer et stort antall SSD-er i en RAID-array, kan energibesparelsene sammenlignet med en HDD RAID-array også føre til lavere kostnader på bedriftens energiregninger.

SSD RAID har imidlertid begrensninger og ulemper, spesielt den høyere prisen per gigabyte plass sammenlignet med harddisker med sammenlignbar kapasitet. Og tiden mellom flashminnefeil er begrenset til et visst antall omskrivingssykluser. Det vil si at SSD-stasjoner har en viss levetid, som avhenger av operasjonen: Jo mer informasjon som overskrives på den, jo raskere vil stasjonen mislykkes. På den annen side har SSD-er for bedrifter en anstendig levetid som kan sammenlignes med mekaniske harddisker.

Hvordan Kingston SSD-er lever i RAID-modus med Broadcom-kontrollere

I de tidlige dagene av SSD-er hadde RAID-design mange nyanser. Inkludert på grunn av bruk av mindre feiltolerante harddisker. Solid State-stasjoner er mye mer pålitelige enn sine kolleger basert på magnetiske disker. Som vi vet er det ingen bevegelige deler i SSD-løsninger, så mekanisk skade reduseres til null. Svikt i solid-state-stasjoner på grunn av strømstøt er også usannsynlig, gitt at på nivået til en hjemme-PC og enhver server beskytter UPS, overspenningsvern og til og med en strømforsyning deg.

Samtidig har solid-state-stasjoner et annet betydelig pluss: selv om minnecellene er utslitte for skriving, kan data fortsatt leses fra dem, men hvis den magnetiske disken er skadet, dessverre.

Vi deler vår erfaring, hvordan SSD-er yter innenfor rammen av RAID og hvilket array-nivå som er mer lønnsomt

I dag er det ganske vanlig praksis å bruke SSD-løsninger i RAID-arrayer på forskjellige nivåer. Det viktigste er å velge de riktige SSD-ene, hvis ventetid er minimal. Og ideelt sett, bruk SSD-er av samme produsent og samme modell, slik at du ikke ender opp med en mengde stasjoner som støtter forskjellige typer belastninger og er bygget på grunnlag av forskjellige typer minne, kontrollere og andre teknologier. Det vil si, hvis vi bestemmer oss for å kjøpe fire eller 16 NVMe SSD-er fra Kingston for å lage en RAID-array, ville det være bedre om de alle kommer fra samme serie og modellserie.

Forresten, i siste artikkel vi siterte Broadcom-kontrollere av en grunn da vi snakket om NVMe SSD fra Kingston. Faktum er at manualene for disse enhetene umiddelbart foreskriver kompatible stasjoner (inkludert løsninger fra den nevnte amerikanske SSD-produsenten), som kontrolleren vil fungere feilfritt med. Denne informasjonen bør stole på når du velger en kontroller-SSD-pakke for RAID.

Vi analyserer arbeidet til SSD Kingston i de mest populære typene RAID - "1", "5", "10", "50"

Så "null" RAID-nivået gir ikke dataredundans, men øker bare ytelsen. RAID 0 gir ingen databeskyttelse i det hele tatt, så vi vil ikke vurdere det innenfor bedriftssegmentet. RAID 1, derimot, gir full redundans, men bare beskjedne ytelsesgevinster, og bør derfor vurderes hvis ytelsesgevinster ikke er en primær vurdering når man bygger en SSD RAID-array.

RAID 1 basert på Kingston SSD-er og Broadcom-kontrollere

Så, RAID-arrayet på første nivå basert på Broadcom MegaRAID 9460-16i-kontrolleren kombinerer fra to til 32 Kingston-stasjoner, som er kopier av hverandre, og gir fullstendig redundans. Hvis når du bruker tradisjonelle HDDer, forble hastigheten på skriving og lesing av data på nivået til denne harddisken, så får vi en tidobling av ytelsen ved å bruke NVMe SSD-løsninger. Spesielt når det gjelder datatilgangstid. For eksempel, med to Kingston DC1000M U.2 NVMe SSD-er i server RAID 1, får vi 350 000 tilfeldig lest IOPS og 75 000 skrive IOPS.

Vi deler vår erfaring, hvordan SSD-er yter innenfor rammen av RAID og hvilket array-nivå som er mer lønnsomt

Når det gjelder sekvensiell lesehastighet, vil resultatene samsvare med egenskapene til stasjonen - 3200 MB / s. Men siden begge NVMe SSD-ene fungerer, kan data leses fra dem samtidig, noe som gjør leseoperasjonene ganske raske. Men skrivehastigheten (hevdet å være 2000 MB/s) vil være langsommere, fordi hver skriveoperasjon utføres to ganger.

Vi deler vår erfaring, hvordan SSD-er yter innenfor rammen av RAID og hvilket array-nivå som er mer lønnsomt

RAID 1 er ideell for små databaser eller andre miljøer som krever feiltoleranse men lav kapasitet. Stasjonsspeiling er spesielt nyttig i scenarier for gjenoppretting ved katastrofe (ytelsen er litt dårligere) fordi den gir øyeblikkelig "gjenoppliving" av viktige data hvis en av stasjonene i arrayet svikter. Men fordi dette beskyttelsesnivået krever dobling av lagringskapasiteten til speildata (100 TB vil kreve 200 TB lagring), bruker mange bedriftssystemer mer økonomiske lagringsalternativer: RAID 5 og RAID 6.

RAID 5 basert på Kingston SSD-er og Broadcom-kontrollere

For å organisere en RAID-array på femte nivå trenger vi minst tre stasjoner, hvor dataene er interleaved (syklisk skrevet til alle stasjoner i arrayen), men ikke duplisert. Når man organiserer dem, bør man ta hensyn til deres mer komplekse struktur, siden her vises et slikt konsept som "sjekksum" (eller "paritet"). Dette konseptet betyr den logiske algebraiske XOR-funksjonen (aka eksklusiv "ELLER"), som dikterer bruken av minimum tre stasjoner i arrayet (maksimalt - 32). I dette tilfellet skrives paritetsinformasjon til alle "disker" i matrisen.

Vi deler vår erfaring, hvordan SSD-er yter innenfor rammen av RAID og hvilket array-nivå som er mer lønnsomt

For en rekke med fire Kingston DC500R SATA SSD-er med en kapasitet på 3,84 TB hver, får vi 11,52 TB plass og 3,84 for kontrollsummer. Og hvis du kombinerer 16 Kingston DC1000M U.2 NVMe-stasjoner med en kapasitet på 7,68 TB til en Level 115,2 RAID, lærer vi 7,68 TB med et tap på 5 TB. Som du kan se, jo flere stasjoner, jo bedre til slutt. Det er også bedre fordi jo flere stasjoner i RAID 0, desto høyere blir den generelle skriveytelsen. Og lineær lesing vil nå nivået på RAID XNUMX.

Vi deler vår erfaring, hvordan SSD-er yter innenfor rammen av RAID og hvilket array-nivå som er mer lønnsomt

En RAID 5-diskgruppe gir høy gjennomstrømning (spesielt for store filer) og redundans med minimalt strømtap. Denne typen array-organisering er best egnet for nettverk som utfører mange små input/output-operasjoner (I/O) samtidig. Men du bør ikke bruke den til oppgaver som krever et stort antall skriveoperasjoner for små eller små blokker.
Det er en nyanse til: hvis minst én av NVMe-stasjonene svikter, går RAID 5 inn i degraderingsmodus og feilen på en annen lagringsenhet kan bli kritisk for alle data. Hvis en stasjon i arrayet svikter, bruker RAID-kontrolleren paritetsinformasjonen til å gjenskape eventuelle manglende data.

RAID 10 basert på Kingston SSD-er og Broadcom-kontrollere

Så, RAID 0 gir oss en dobbel økning i hastighet og tilgangstid, og RAID 1 gir pålitelighet. Ideelt sett ville de blitt kombinert, og her kommer RAID 10 (eller 1 + 0) til unnsetning. "Ti" er satt sammen fra fire SATA SSD- eller NVMe-stasjoner (maksimalt - 32) og innebærer en rekke "speil", hvor antall stasjoner alltid må være et multiplum av fire. Dataene i denne matrisen skrives ved hjelp av fast blokkpartisjonering (som i tilfellet med RAID 0) og striping mellom stasjoner, sprer kopier på tvers av "stasjonene" i en RAID 1-matrise. Og med muligheten til å få tilgang til flere grupper av stasjoner på samtidig viser RAID 10 høy ytelse.

Vi deler vår erfaring, hvordan SSD-er yter innenfor rammen av RAID og hvilket array-nivå som er mer lønnsomt

Siden RAID 10 er i stand til å stripe data på tvers av flere speilede par, betyr dette at den kan tolerere feil på én stasjon i et par. Men hvis begge speilparene (det vil si alle fire stasjonene) mislykkes, vil det være uunngåelig tap av data. Som et resultat får vi også god feiltoleranse og pålitelighet. Men husk at, i likhet med RAID 1, bruker arrayet på tiende nivå bare halvparten av den totale kapasiteten, og er derfor en kostbar løsning. Og også vanskelig å sette opp.

RAID 10 er egnet for bruk med datavarehus som krever 100 % redundans av speilede diskgrupper, samt den økte I/O-ytelsen til RAID 0. Det er den beste løsningen for mellomstore databaser eller ethvert miljø som krever høyere feiltoleranse enn RAID 5.

RAID 50 basert på Kingston SSD-er og Broadcom-kontrollere

En kombinert array som ligner på nivå 5 RAID, som er en nivå 50 array bygget fra nivå 5 arrays. Som før er hovedmålet med denne matrisen å oppnå dobbel ytelse og samtidig opprettholde datapålitelighet i RAID XNUMX-matriser. Samtidig gir RAID XNUMX forbedret skriveytelse og bedre databeskyttelse enn standard RAID XNUMX i tilfelle stasjonsfeil , og er også i stand til raskere gjenoppretting i tilfelle feil på en av stasjonene.

Vi deler vår erfaring, hvordan SSD-er yter innenfor rammen av RAID og hvilket array-nivå som er mer lønnsomt

RAID 50-stasjonsgruppen deler dataene i mindre blokker og striper dem deretter over hver RAID 5-array. RAID 5-stasjonsgruppen deler igjen også dataene i mindre blokker, beregner paritet, utfører en logisk ELLER-operasjon på blokkene, og deretter utfører datablokkskriving og paritetsoperasjoner for hver disk i diskgruppen.

Og selv om ytelsen uunngåelig forringes hvis en av stasjonene svikter, er den ikke like betydelig som i en RAID 5-array, siden en feil påvirker bare en av arrayene, og etterlater den andre fullt funksjonell. Faktisk kan RAID 50 overleve opptil åtte HDD/SSD/NVMe-stasjonsfeil hvis hver mislykkede "disk" er i en separat RAID 5-array.

Vi deler vår erfaring, hvordan SSD-er yter innenfor rammen av RAID og hvilket array-nivå som er mer lønnsomt

RAID 50 brukes best for applikasjoner som krever høy pålitelighet og må behandle et høyt antall forespørsler samtidig som de opprettholder høye dataoverføringshastigheter og lavere stasjonskostnader enn RAID 10. Men siden det kreves minimum seks stasjoner for å sette opp en RAID 50-array , kostnad er ikke helt utelukket som en faktor. En ulempe med RAID 50 er at den, som RAID 5, trenger en kompleks kontroller: som f.eks. nevnt av oss i den siste artikkelen MegaRAID 9460-16i fra Broadcom.

Det er også verdt å merke seg at RAID 50 har mindre diskplassbruk enn RAID 5 på grunn av tildelingen av kapasitet til å holde paritetsposter. Imidlertid har den fortsatt mer brukbar plass enn andre RAID-nivåer, spesielt de som bruker speiling. Med et minimumskrav på seks stasjoner kan RAID 50 være et kostbart alternativ, men den ekstra diskplassen rettferdiggjør kostnadene ved å beskytte bedriftsdata. Denne typen array anbefales for data som krever høy lagringssikkerhet, høye forespørselshastigheter, høye overføringshastigheter og høy lagringskapasitet.

RAID 6 og RAID 60: vi har ikke glemt dem heller

Siden vi har snakket om arrays på det femte og femtiende nivået, ville det være synd å ikke nevne slike typer array-organisering som RAID 6 og RAID 60.

Vi deler vår erfaring, hvordan SSD-er yter innenfor rammen av RAID og hvilket array-nivå som er mer lønnsomt

Ytelsen til RAID 6 er lik RAID 5, men her er minst to stasjoner gitt paritet, noe som gjør at arrayet kan overleve feilen på to stasjoner uten å miste data (i RAID 5 er denne situasjonen svært uønsket). Dette gir høyere pålitelighet. Ellers er alt det samme som i arrayen på femte nivå: i tilfelle feil på en eller to disker, bruker RAID-kontrolleren paritetsblokker for å gjenskape all manglende informasjon. Hvis to stasjoner feiler, skjer ikke gjenoppretting samtidig: først reanimeres den første stasjonen, deretter den andre. Dermed utføres to datagjenopprettingsoperasjoner.

Vi deler vår erfaring, hvordan SSD-er yter innenfor rammen av RAID og hvilket array-nivå som er mer lønnsomt

Det er lett å gjette at hvis RAID 50 er et nivå 60-array med nivå 6-matriser, så er RAID 50 et nivå 8-array med nivå 16-matriser som vi nettopp snakket om. Det vil si at denne organiseringen av RAID-lagring lar deg overleve tapet av to SSD-er i hver gruppe RAID XNUMX-stasjoner. Driftsprinsippet ligner det vi snakket om i RAID XNUMX-delen, men antallet feil som en nivå XNUMX array tåler vekst fra XNUMX til XNUMX stasjoner. Vanligvis brukes slike arrays for online kundeservice, som krever høy feiltoleranse.

Oppsummering:

Selv om speiling gir mer feiltoleranse enn RAID 50/60, krever det også mye mer plass. Siden datamengden dobles, får du faktisk bare 50 % av den totale kapasiteten til stasjonene installert i serveren for opptak og lagring av informasjon. Å velge mellom RAID 50/60 og RAID 10 vil mest sannsynlig avhenge av tilgjengelige budsjetter, serverkapasitet og dine databeskyttelsesbehov. Dessuten kommer kostnadene i forgrunnen når vi snakker om SSD-løsninger (både bedrifts- og forbrukerklassen).

Like viktig er det at vi nå vet med sikkerhet at SSD-basert RAID er en helt sikker løsning og en normal praksis for dagens virksomhet. Som en del av hjemmebruk er det også grunn til å gå over til NVMe, dersom budsjettene tillater det. Og hvis du fortsatt har et spørsmål, hvorfor er alt dette nødvendig, gå tilbake til begynnelsen av artikkelen - vi har allerede svart på det i detalj.

Denne artikkelen ble utarbeidet med støtte fra våre kolleger i Broadcom, som leverer kontrollerene sine til Kingston-ingeniører for testing med SATA/SAS/NVMe-stasjoner i bedriftsklassen. Takket være denne vennlige symbiosen, trenger ikke kundene å tvile på påliteligheten og stabiliteten til Kingston-stasjoner med HBA- og RAID-kontrollere fra produksjon. Broadcom.

Mer informasjon om Kingston-produkter finner du på offisiell nettside selskap.

Kilde: www.habr.com

Legg til en kommentar