Blog

Datacenter

SAS eruit, NVMe erin

11 apr 2018

In mijn vorige blog heb ik uitgelegd wat NVMe precies is. Daarin deed ik ook de uitspraak dat 2018 het jaar van NVMe gaat worden. Maar op welke manier gaan we dat nu merken? In deze blog leg ik uit waar we NVMe in het datacenter het eerst gaan zien.

Sander Roobeek door Sander Roobeek

Wat is NVMe ook alweer?

NVMe staat voor Non Volatile Memory express. Het is een interface-protocol voor het aansturen van NVM-devices, zoals SSD (Solid State Drive) en nieuwe types flashgeheugen. Omdat NVMe vanaf de grond af aan is opgebouwd, is er veel overhead verdwenen. Mede doordat de NVMe devices rechtstreeks op de PCIe-bus zit is de bandbreedte vele malen hoger en de latency stukken lager dan de huidige SAS/SATA devices. Met NVMe devices worden hogere Input/Output Per Second (IOPS) gehaald met een lagere latency ten opzichte van de huidige SSD’s. Ideaal voor applicaties waar lage latency en hoge bandbreedte/IOPS van belang zijn.

NVMe versus SAS/SATA

In onderstaande afbeeldingen worden de verschillen tussen NVMe en de huidige SAS/SATA-standaarden duidelijk.

Met de huidige standaarden is er altijd een storage controller nodig die de achterliggende schijven aanstuurt. De maximale bandbreedte en IOPS worden hier bepaald door de schijf. Door meerdere schijven achter de controller te plaatsen, verschuift deze bottleneck naar de controller en de PCIe-bus.

Met NVMe haal je de controller uit het pad tussen de CPU en de storage. Zo verkort je niet alleen de afstand, maar haal je ook de beperkingen die de huidige controllers en interfaces hebben weg. Dit verlaagt de latency en verhoogt de bandbreedte. Daarnaast is de bottleneck nu niet meer de schijf, maar zijn dit de PCIe-bus en CPU geworden. Systemen hebben vaak meerdere PCIe-bussen en er kunnen meerdere NVMe devices op een PCIe-bus geplaatst worden. Vanuit het oogpunt van performance heeft het geen zin om veel NVMe devices in een server te plaatsen. Een enkele NVMe drive kan theoretisch het systeem al 100% belasten.

Waar je met traditionele oplossingen vaak veel schijven nodig had om maar aan de latency en bandbreedte-/IOPs-eisen te kunnen voldoen, kan je met NVMe-oplossingen met een minimale hoeveelheid schijven de maximale prestatie leveren.

Scale-out!

Het is relatief eenvoudig om NVMe te implementeren in bestaande storage-oplossingen. Je haalt de storage-(SAS) controller en schijven eruit en vervangt deze voor NVMe devices. Ditzelfde geldt ook voor shared storage-oplossingen (SAN/NAS). In dit laatste geval vervang je alleen het laatste stukje in de keten. De host zal nog steeds op de ‘ouderwetse’ manier met de storage communiceren. De performancewinst die hier gehaald wordt, is echter lang niet zo groot als op lokale storage. Dit wordt pas interessant als de hele keten NVMe is, en is mogelijk met NVMe over fabrics. Veel van dit soort oplossingen zijn gebaseerd op de scale-up-architectuur. Je begint met twee controllers en plaatst extra schijven als je meer storage nodig hebt. Omdat bij NVMe de controller vanaf het begin af aan al de bottleneck is, zal je hier nog niet veel NVMe-oplossingen zien.

Een heel ander verhaal zijn scale-out-oplossingen. Bij een scale-out-architectuur plaats je nodes (CPU) en storage bij als je wilt groeien. Hier loop je minder snel tegen de beperkingen van de controller aan, omdat de storage en controllers evenredig aan elkaar groeien. Het is dus een logische stap om hier te beginnen met NVMe. XtremIO en Solidfire zijn bijvoorbeeld platformen die zich hier uitstekend voor lenen.

Rol NVMe in HCI-markt

Hoewel de HCI-(Hyper Converged Infrastructure) markt nu niet de eerste use case is voor NVMe denk ik toch dat dit de plek is waarin NVMe een serieuze rol gaat spelen. HCI is een scale-out-oplossing en kent dus in mindere mate de controller bottleneck. Daarnaast is HCI gebouwd op lokale storage met de gedachte zoveel mogelijk IO’s lokaal te houden. Als de prijsverschillen tussen traditionele SSD’s en NVMe kleiner worden, is HCI het ideale platform voor NVMe om het datacenter te veroveren.

NVMe duikt steeds meer op

Zoals ik in mijn vorige blog heb aangegeven is NVMe niet nieuw. Daar waar latency een belangrijke rol speelt, worden werkstations en servers al uitgerust met NVMe drives. Kijkend naar shared storage in het datacenter is men nog volop bezig de ‘eerste’ generatie flash te adopteren. NVMe zal eerst voor specifieke use cases in het datacenter gebruikt worden. Maar het gaat sneller dan je denkt en NVMe gaat steeds meer opduiken in het datacenter.

 

Geïnteresseerd?

Sander Roobeek
Neem contact op met onze specialist Sander Roobeek

Sander Roobeek is Datacenter Consultant bij Telindus. Na 15 jaar ervaring in implementatie met diverse storage-oplossingen is hij alweer geruime tijd werkzaam als consultant bij Telindus. Met deze bagage op zak weet hij hoe belangrijk een goede voorbereiding in het sales traject is voor een soepel verloop tijdens de implementatie en migratie. Hij kijkt dus net een stapje verder dan naar de oplossing alleen. In zijn vrije tijd is Sander vaak te vinden op de atletiekbaan. Als vrijwilliger, supporter van zijn zoontjes of zelf actief als atleet.

geen reacties
Plaats een reactie