Toen Intel® Optane™ persistent memory (PMem) voor het eerst uitkwam, wisten we dat het de manier waarop zaken worden gedaan in het datacenter radicaal zou veranderen, maar we konden niet volledig voorspellen op hoeveel manieren dit zou gebeuren. Zoals het geval is met alle nieuwe technologieën, kenden we de eerste use-cases voor persistent geheugen, maar we begrepen ook dat er meer use-cases zouden verschijnen zodra deze algemeen beschikbaar zouden komen.
Tijdens onze gesprekken met ondernemingen wisten we dat ze de prestatieverbeteringen nodig hadden die in-memory-systemen boden om concurrerend te blijven. Het gebruik van DRAM hiervoor had kosten- en groottebeperkingen die het moeilijk maakten gezien de grootte van de gegevens die ze in het geheugen wilden opslaan. In dit artikel zullen we bekijken hoe Intel Optane PMem wordt gebruikt door Hazelcast en MemVerge om de beperkingen van DRAM te overwinnen om een infrastructuurconstructie te creëren die snelle, real-time applicaties ondersteunt die grote datasets gebruiken.
We hebben onze krachten gebundeld met MemVerge, Hazelcast, Intel en Dell Technologies om te demonstreren hoe infrastructuur kan worden ingezet om real-time analyses mogelijk te maken. We hebben met name een omgeving opgezet met een snel binnenkomende stroom van real-time gegevens die werden opgenomen en getransformeerd voordat ze werden opgeslagen in een in-memory datamart. Het belangrijkste doel was om te laten zien hoe Intel Optane PMem cruciaal is voor het mogelijk maken van grootschalige, real-time systemen en dat aanvullende software nodig is om Intel Optane PMem in staat te stellen zijn volledige potentieel te realiseren.
Voordat we de tests die we hebben gedaan benadrukken, volgt hier een korte opfriscursus over Intel Optane PMem, Hazelcast, en MemVerge.
Intel Optane PMem
Persistent geheugen als concept bestaat al sinds het midden van de jaren tachtig, maar het werd pas een echt bruikbaar product voor commerciële datacenters in 1980 toen Intel hun Intel Optane Persistent Memory Modules (PMM's) begon uit te brengen. Intel Optane PMem is een game-changer voor de industrie omdat het iets langzamer is dan DRAM, maar aanzienlijk sneller dan solid-state drives (SSD's).
Hoewel het langzamer is dan DRAM, heeft Intel Optane PMem een aantal duidelijke voordelen, aangezien het aanzienlijk goedkoper is en een grotere geheugencapaciteit heeft dan traditionele DRAM; en, zoals de naam al doet vermoeden, wanneer de in-app directe modus is ingeschakeld, is deze permanent - wat betekent dat de gegevens die erop zijn opgeslagen een stroomuitval of herstart van het apparaat waarop het zich bevindt, zullen overleven.
Een van de geheimen van de lage latentie van Intel Optane PMem is dat het zich op de geheugenbus bevindt, waardoor het DRAM-achtige toegang tot gegevens heeft.
Hoewel DDR4 een theoretische maximale capaciteit per module heeft van 128 GB, liggen de meest gebruikte capaciteiten tussen 4 GB en 64 GB (maar zelfs modules van 64 GB, hoewel beschikbaar, worden niet vaak gebruikt).
Intel levert momenteel Intel Optane PMem in modules van 128 GB, 256 GB en 512 GB. Dit biedt tot 16 keer de capaciteit van DRAM.
Op basis van kosten per GB is Intel Optane PMem ongeveer de helft van DRAM. Door zijn grotere capaciteit en lagere prijs kan een server meer low-latency data beschikbaar hebben voor applicaties tegen lagere kosten dan die van een server met alleen DRAM. En, zoals u uit onze tests kunt opmaken, is het latentieverschil tussen DRAM en PMem bij gebruik in de praktijk voor veel toepassingen verwaarloosbaar.

MemVerge
Met de grote kracht die Intel Optane PMem biedt, komt de verantwoordelijkheid om het verstandig te gebruiken, en dit is waar MemVerge om de hoek komt kijken. Terwijl de meeste serverbewakings- en beheertools kijken naar oudere hardware zoals CPU-, schijf- en netwerkstatistieken, MemVerge® Memory Machine™ is lasergericht op de bewaking, het beheer en het gebruik van DRAM en Intel Optane PMem.
Een van de eerste uitdagingen van Intel Optane PMem was bepalen hoe applicaties het konden gebruiken. Zonder MemVerge Memory Machine kunt u Intel Optane PMem gebruiken als alternatief voor DRAM, maar niet als vervanging omdat Intel Optane PMem een gespecialiseerde API gebruikt. MemVerge abstraheert die API zodat Intel Optane PMem er voor alle applicaties net zo uitziet als DRAM. Met behulp van Memory Machine wordt Intel Optane PMem op dezelfde manier aan applicaties gepresenteerd als DRAM aan applicaties. Hierdoor kunnen bestaande applicaties Intel Optane PMem gebruiken zonder opnieuw ontworpen te hoeven worden, waardoor een bedrijf de kosten van het herprogrammeren van applicaties bespaart, en, belangrijker nog, de tijd die daarvoor nodig zou zijn. Door middel van zijn gepatenteerde technologie creëert Memory Machine een geheugenpool en koppelt vervolgens Intel Optane PMem en DRAM om de impact op applicaties te maximaliseren door gegevens naar behoefte tussen de twee te verplaatsen om de applicatieprestaties te optimaliseren.
De innovatieve ZeroIO van Memory Machine maakt memory-to-memory snapshots mogelijk (dwz snapshots van de gegevens op DRAM naar Intel Optane PMem), waardoor DRAM in feite persistent wordt.
In het verleden waren we gedwongen snapshots in het geheugen op te slaan op traditionele opslag, een proces dat wel een uur kon duren. Met behulp van ZeroIO kan dezelfde bewerking echter binnen enkele seconden zonder onderbreking plaatsvinden.
MemVerge maakt gebruik van ZeroIO om andere geheugengegevensservices te bieden. Time Travel stelt een applicatie in staat om terug te keren naar eerder gemaakte snapshots, en nauw gekoppeld aan deze functie is AutoSave, dat automatisch snapshots maakt op tijdgebaseerde intervallen. In gevallen waarin de in het geheugen opgeslagen gegevens naar een andere fysieke server moeten worden verplaatst, kan een ZeroIO-snapshot ernaar worden verplaatst.
De geheugenbewaking, evenals het faciliteren van bovenstaande diensten, gebeurt via het MemVerge Memory Machine Management Center (M3C).
Hoewel we hebben vermeld dat Memory Machine wordt gebruikt met databases, ondersteunt het ook een breed scala aan toepassingen: van Maya 3D van Autodesk voor animatie en weergave tot TensorFlow (een machine learning-framework) en andere toepassingen, waaronder Hazelcast, een product dat we zal in dit artikel worden benadrukt.
Hazelcast
Hazelcast is een belangrijke innovator en leider op het groeiende gebied van in-memory computerplatforms. Hun platform wordt gebruikt door financiële, e-commerce en andere soorten organisaties waar real-time informatie van cruciaal belang is; bijvoorbeeld voor fraudedetectie en om te helpen bij het nemen van handelsbeslissingen.
Hazelcast ondersteunt snelle applicaties op twee niveaus. Ten eerste biedt het een in-memory store die gegevens verdeelt over meerdere servers in een cluster om een schaalbare virtuele pool van snel geheugen mogelijk te maken. Het proces van het toevoegen van meer gegevens omvat simpelweg het toevoegen van een andere server aan het cluster. Ten tweede bevat Hazelcast een compute-engine die applicatielogica verwerkt die is opgedeeld in subtaken die vervolgens worden verdeeld over alle CPU's in een cluster van servers. Dit maakt niet alleen gebruik van de collectieve rekenkracht van het cluster, maar maakt ook de parallelle verwerking van gegevens op een efficiënte en snelle manier mogelijk (dit omvat transformatie, verrijking, aggregatie en analyse). Aangezien Hazelcast gegevens direct na het aanmaken ervan kan verwerken via de streaming-gegevensmogelijkheden, is het handig voor het bouwen van de volgende generatie real-time applicaties.
Realtime gegevens analyseren
Realtime systemen worden hoofdzakelijk gedreven door twee hoofdkenmerken: snelheid en schaal. Terwijl snelheid ervoor zorgt dat u de gegevens die worden aangemaakt kunt bijhouden, garandeert schaal dat u het volume van die gegevens aankunt. Om de zaken nog ingewikkelder te maken, kunnen gegevens uit veel verschillende bronnen komen. Hogere snelheden en grotere schaal zijn natuurlijk gelijk aan hogere kosten, tenzij innovatieve middelen worden gebruikt, zoals het vervangen van dure DRAM door goedkopere Intel Optane PMem.
Realtime gegevensanalysemogelijkheden bieden direct inzicht in een verscheidenheid aan situaties waarmee bedrijven en organisaties te maken kunnen krijgen en geven hen de informatie die ze nodig hebben om erop te reageren. Naleving van initiatieven zoals Basel III, waar banken verplicht zijn om meer liquiditeit aan te houden dan voorheen, betekent bijvoorbeeld dat ze minder geld hebben om inkomsten te genereren. Tegelijkertijd moeten ze bewijzen dat ze hun dagelijkse risico's begrijpen, zodat ze niet worden afgestraft door auditors en toezichthouders met nog hogere liquiditeitseisen. Door real-time systemen voor risicobeheer en compliance te hebben, kunnen banken onmiddellijk inzicht krijgen in hun handelsposities om hun risicoblootstelling effectiever te begrijpen en te rapporteren.
Om een ander voorbeeld te benadrukken: analysesystemen voor aandelenhandel volgen transacties en presenteren ze in een analyseerbare vorm in realtime. Deze systemen kunnen hun hoge kosten rechtvaardigen vanwege het duidelijke rendement op investering (ROI) via de verdiende inkomsten uit aandelenhandel.
Testscenario
De applicatie die we hebben gekozen om deze technologieën te onderzoeken, is gebaseerd op een codebasis voor handelsmonitoring die door Hazelcast is gemaakt om te laten zien hoe kosteneffectieve "on-demand analytics" een geschikt alternatief is voor dure, realtime systemen.
Omdat dit een kleinschalig onderzoeksproject was, hebben we een aantal afwegingen gemaakt waardoor onze testomgeving niet volledig overeenkwam met een typische productieomgeving. De rekenkracht van de Dell EMC-servers die we gebruikten, was bijvoorbeeld veel krachtiger dan onze beschikbare gegevensbron nodig had, dus we hebben niet ten volle geprofiteerd van de beschikbare CPU-kracht. Omwille van de eenvoud hebben we ook het externe gegevensleveringssysteem niet geoptimaliseerd. In een productiesysteem zouden alle componenten zijn geoptimaliseerd en afgestemd om de prestaties en kosteneffectiviteit van deze opstelling te verbeteren.
Doelstellingen testen
Het meest kritieke aspect van onze tests was om vast te stellen of Intel Optane PMem een real-time datafeed kon ondersteunen.
We hebben het testen van de toegangssnelheden van de geaggregeerde/geïndexeerde gegevens afgeraden in een in-memory datamart die werd ondersteund door Intel Optane PMem; in eerdere tests door MemVerge en Hazelcast hebben benchmarks aangetoond dat de snelheden voor gegevenstoegang zeer dicht bij die van DRAM lagen (in veel gevallen werden identieke snelheden voor zowel lezen als schrijven aangetoond), en dus veel sneller dan gegevens op schijf of SSD toegangen. Omdat we wisten dat de snelheid van gegevenstoegang een voordeel opleverde ten opzichte van andere architecturale configuraties, hebben we onze tests alleen gericht op de inname-kant.
Voor onze tests hebben we fictieve gegevens gegenereerd op de gegevensbronserver. Elk gegevenselement in de inkomende datafeed vertegenwoordigde een aandelenhandel. Het aandelensymbool, de hoeveelheid, de prijs en de tijd waren de meest kritische waarden. Elk aandelensymbool werd meerdere keren gebruikt in de gegenereerde dataset om meerdere transacties per dag voor een bepaald aandeel te simuleren. Die afzonderlijke transacties werden vervolgens samengevoegd om een lopend totaal van transacties voor een bepaald aandelensymbool te geven.
De gegenereerde gegevens zijn opgeslagen in Apache Kafka vanwege het vermogen om een snelle gegevensstroom vast te leggen. Elk record van Kafka vereiste 210 bytes, inclusief alle metadata in de payload. Kafka was geconfigureerd om drie afzonderlijke brokers te draaien, allemaal op één gegevensbronmachine en met vier partities op elke broker. Deze configuratie zou natuurlijk niet worden gebruikt in een productieomgeving, aangezien het onrealistisch is om een single-source machine te hebben voor een gedistribueerde technologie; het was echter geschikt voor onze tests.
Omgeving testen
We hebben drie Dell EMC PowerEdge R750-servers en één Dell EMC PowerEdge R74xd-server gebruikt voor onze tests; drie voerden de analysetoepassingen uit met behulp van MemVerge Memory Machine en Hazelcast, terwijl de vierde de testgegevens creëerde en opsloeg.
Analytics-servers
| Model | Dell EMC PowerEdge R750 |
| CPUs | Dubbele Intel® Xeon® Gold 6330 processors @ 2GHz (Ice Lake)
28 cores elk (56 in totaal, 112 met Intel® Hyper-Threading-technologie) |
| DRAM | 16 DIMM's van 64 GB DRAM DDR4
1TB per server |
| Intel Optane PMem | 16 DIMM's van 128 GB Intel Optane PMem DDR-T-interface
2TB per server |
| Network Interface | 10 GbE |
| Software | MemVerge-geheugenmachine 1.2
Hazelcast-platform 5.0 |
Gegevensbronserver
| Model | Dell EMC PowerEdge R740xd |
| CPUs | Dubbele Intel® Xeon® Gold 6140-processors @ 2.3 GHz (Skylake)
18 cores elk (36 in totaal; 72 met Intel® Hyper-Threading-technologie) |
| DRAM | 12 DIMM's van 32 GB DRAM DDR4 (384 GB)
2 DIMM's van 16 GB NVDIMM DDR4 (32 GB) |
| Intel Optane PMem | Niet nodig |
| Network Interface | 10 GbE |
| Software | Apache Kafka 2.8
Tool voor het genereren van gegevens geleverd door Hazelcast |
Tijdens onze tests ontdekten we dat de hoeveelheid DRAM in de analytische servers aanzienlijk kleiner had kunnen zijn; terwijl DRAM voornamelijk door het besturingssysteem werd gebruikt, gebruikte de applicatie voornamelijk Intel Optane PMem met slechts een kleine hoeveelheid DRAM. Om kostenbesparingen te optimaliseren, zou een absoluut minimum aan DRAM op de server een redelijke configuratie zijn.
Test resultaten
We hebben ongeveer 5 miljard records gemaakt die in Kafka zijn opgeslagen om de gegevensbron te creëren. De opnametoepassingen die op de drie toepassingsservers werden uitgevoerd, werden vervolgens gestart om de gegevens over de drie Hazelcast-instanties op te nemen (één Hazelcast-server per Dell Technologies-server).
We hebben de applicatie getest met alleen DRAM en vergeleken dat met het gebruik van Intel Optane PMem met MemVerge. De resultaten van onze tests toonden aan dat we voor workloads die overwegend geschreven waren, een prestatieverlies van 32% zagen door alleen Intel Optane PMem te gebruiken versus pure DRAM (242K vs. 357K). Maar bij gebruik van de Intel Optane PMem + DRAM-configuratie zagen we slechts een boete van 9%. Dit had verder kunnen worden verkleind door een groter aantal servers in het cluster te hebben om de schrijfbewerkingen nog meer te spreiden. De extra kosten van extra servers kunnen worden gecompenseerd door CPU's met een lager vermogen aan te schaffen, aangezien de gegeven werkbelasting niet noodzakelijkerwijs het volledige CPU-vermogen van deze geteste hardwareconfiguratie zou benutten.
| Configuratie | Prestaties (records per seconde) |
| Alleen DRAM | 357,000 |
| Intel Optane PMem assisteerde met 50GB DRAM + Memory Machine | 325,000 |
| Alleen Intel Optane PMem + Memory Machine | 242,000 |
We hebben overwogen om elk van de configuraties die we hebben getest uit te prijzen, maar hebben dit geweigerd vanwege mogelijke schommelingen in de kosten en andere factoren waardoor deze schattingen snel achterhaald zouden kunnen zijn. Ongeacht de vastgestelde kosten zal Intel Optane PMem ondersteund met DRAM echter aanzienlijk lager zijn dan een op DRAM gebaseerde server.
Interpretatie testen
Onze belangrijkste conclusie uit onze tests was dat een cluster van Intel Optane PMem-enabled servers bijna dezelfde snelheid kon presteren als een cluster dat alleen DRAM gebruikte, maar tegen aanzienlijk lagere kosten.
Een andere belangrijke conclusie voor ons was dat weken of maanden aan gegevens konden worden vastgelegd en opgeslagen met behulp van Intel Optane PMem, waarmee bedrijven niet alleen gegevens in realtime kunnen analyseren, maar ook gegevens beschikbaar hebben voor snelle analyse van historische gegevens. gegevens. Dit opent mogelijkheden voor het analyseren van trends en patronen die mogelijk aanvullende inzichten opleveren met behulp van geavanceerde analysetools zoals machine learning (ML).
Met andere woorden, bedrijven kunnen een real-time analyseomgeving implementeren die een breed tijdsbereik bestrijkt, en nieuwe vormen van analyse verkennen, zonder de kosten of snelheid in te leveren bij het implementeren van datawarehouses of datalakes.
Andere testen
Terwijl we de omgeving hadden opgezet, wilden we ook enkele van de andere mogelijkheden van MemVerge Memory Machine testen, met name de snapshot- en herstelfuncties. Gelukkig heeft Memory Machine integratie met Hazelcast-cluster, zodat snapshots en snapshot-herstel rechtstreeks in M3C kunnen worden beheerd.
De momentopnamen kunnen op elk gewenst moment of volgens een vast schema worden gemaakt, en we hebben beide methoden getest tijdens de piekactiviteiten van ons cluster. De snapshots werden binnen enkele seconden voltooid zonder problemen of die de prestaties van de analyses beïnvloedden. Als er iets met het Hazelcast-cluster was gebeurd, zoals een stroomstoring, hadden de gegevens kunnen worden hersteld met behulp van een van onze snapshots.
De snapshot-functie is niet alleen handig voor bescherming, maar kan ook worden gebruikt om de bezettingsgraad van servers te verhogen. In financiële instellingen worden servers intensief gebruikt tijdens typische handelsuren, maar zijn ze relatief inactief buiten kantooruren. Door een hotstart-schema te gebruiken, kan de bezettingsgraad van de servers drastisch worden verbeterd. Zo kan aan het einde van de handelsdag een momentopname van de handelsdatabase worden gemaakt. Wanneer de handelsdatabase wordt afgesloten, kunnen de servers worden ingesteld op andere gegevensverwerkingstaken, zoals datamining. Aan het begin van een handelsdag kan de handelsdatabase snel worden hersteld en kunnen de handelsactiviteiten worden hervat.
Conclusie
Intel Optane PMem is een opwindende en transformerende technologie die het datacenter begint te hervormen, maar zoals met alle andere technologieën bestaat het gelukkig niet in een vacuüm. Toonaangevende, vooruitstrevende bedrijven zoals Dell Technologies, Intel, MemVerge en Hazelcast vinden synergieën en beginnen deze nieuwe technologie te benutten om het ware potentieel ervan in het datacenter te vinden: Intel Optane PMem-modules worden aangeboden voor ongeveer de helft van de kosten van DRAM; Dell Technologies heeft servers die de enorme hoeveelheden geheugencapaciteit met lage latentie ondersteunen die Intel Optane PMem biedt; Met Hazelcast kunnen applicaties op grote schaal profiteren van deze technologieën; en MemVerge biedt de monitoring-, beheer- en dataservices voor Intel Optane PMem, en door de DRAM API weg te halen, laat het Intel Optane PMem verschijnen als DRAM voor bestaande applicaties, waardoor ze kunnen worden uitgevoerd zonder te worden gewijzigd of opnieuw ontworpen.
Als al het andere gelijk is, zouden bedrijven kiezen voor realtime activiteiten in plaats van gegroepeerde activiteiten. Maar aangezien niet alles gelijk is, is batchverwerking vaak het gekozen patroon om de kosten van real-time verwerking te vermijden. Aangezien de verwachtingen van de klant echter blijven stijgen in een wereld die steeds meer op real-time is gericht, moeten bedrijven nieuwe manieren vinden om een concurrentievoordeel te creëren. Door gebruik te maken van real-time snelheden zonder te lijden onder de traditionele kosten van in-memory computing, kunnen toonaangevende bedrijven de sprong wagen met technologieën zoals Intel Optane PMem, MemVerge en Hazelcast om oplossingen te bouwen waarmee ze kunnen voldoen aan hun eisen en die van hun klanten , sneller dan ooit tevoren.
Dit rapport wordt gesponsord door MemVerge. Alle standpunten en meningen in dit rapport zijn gebaseerd op onze onbevooroordeelde kijk op het (de) product(en) in kwestie. Intel, het Intel-logo en Intel Optane zijn handelsmerken van Intel Corporation of haar dochterondernemingen.




Amazon