Wat zou ik kunnen doen met 1 TB ram?

Beste antwoord

Het eerste dat ik moet weten is dat computers met zoveel ram langzamer zijn dan je denkt. Om zoveel ram-banken te beheren, is technologie nodig die de RAM-toegang langzamer maakt (NUMA, ECC, het aanpakken van de andere kant van de stick vereist een stopactie …). Beschouw ze als een grote vrachtwagen terwijl uw laptop een auto is (misschien een F1). Als u wat boodschappen moet doen, is de auto uw keuze.

Ten tweede zijn die computers erg duur. Niet alleen vanwege RAM-sticks, maar alles moet schaalbaar zijn. Server moederbord, veel XEON CPUs, enorme ramsticks… al deze zogenaamde “professionele” hardware kwam met de “server belasting” het dubbele van de prijs voor elke 10\% prestatieverhoging. U kunt veel meer computerkracht krijgen door verschillende standaardhardware van redelijke omvang te kopen.

Bovendien moet een computer meestal in evenwicht zijn. Als je zoveel RAM hebt, heb je veel cores nodig om ermee te werken, en een heel snelle reeks SSDs om gegevens te laden en op te slaan. Sommige vormen van gebruik zijn niet uitgebalanceerd en vereisen meer van één bron.

Voor een gewone thuisgebruiker wordt er niet zoveel ram gebruikt.

Dus wat voor nut hebben zulke beesten? Ze zijn handig wanneer u in één keer aan veel gegevens moet werken. Zelfs als hun RAM-geheugen langzamer is dan het RAM-geheugen van een gewone computer, is het nog steeds keer sneller dan de snelste SSD.

Zo algemeen gebruik is onder meer: ​​

  • groot in geheugen relationele database
  • grote key-value store (geen sql)
  • database met grote grafieken
  • enkele wetenschappelijke banen: dna-studie, simulatie
  • enorme PLM-configuratie servers in de auto- en luchtruimindustrie
  • VM draaien (dit is een stom gebruik, maar toch een van de meest voorkomende)

Zelfs in de professionele wereld kunnen goede IT-teams hebben de neiging om de taken over meer computers te verspreiden met behulp van algoritmen zoals kaartvermindering, renderfarms voor 3D-rendering … Indien mogelijk is het veel efficiënter, flexibeler en gemakkelijker om met storingen om te gaan. U kunt computers uitschakelen of er meer toevoegen om te schalen met de belasting.

Ook worden de meeste van deze computers door het admin-systeem gekocht om een ​​van deze domme redenen:

  • Ze willen geen enkele verantwoordelijkheid nemen, dus kopen ze de grootste beschikbare computer en als de software het laat afweten, kunnen ze zeggen dat het niet hun schuld is, want ze hebben het maximale gedaan.
  • Ze zijn nerd en ze willen grotere speelgoed dan hun vrienden. Als uw werk u een auto oplevert die u maar wilt, zou u dan een Prius of een Bugatti krijgen?
  • Het koopproces is erg traag in hun bedrijf en er zijn veel handelingen nodig die zelfs meer kosten voor personeel dan voor hardware zelf. Tegen de tijd dat ze de server kregen, werd het comorbiditeitshardware (een beetje overdreven daar).
  • Als je baas weet dat de IT op $ 500 draait uit de kasten, zien ze je als een loodgieter, het is moeilijker om rechtvaardig uw salaris dan wanneer u een miljoen aan infrastructuur beheert en eruitziet als een manager van een kerncentrale.

Ja, deze zijn allemaal stom maar heel gewoon. Het is mijn dagelijkse taak om infrastructuren opnieuw te ontwerpen en de kosten te optimaliseren.

Een klein verhaal om af te maken: na 3 jaar dienst verscheen er een probleem bij een berichtenservice (Kafka). Sommige berichten zijn meerdere keren opgeslagen en het zorgt ervoor dat de volgende software in de keten mislukt (dat zou het moeten hebben). Na onderzoek ontdekte ik in de documentatie dat het normaal gedrag was van het berichtensysteem onder belasting. Het garandeert dat berichten minstens één keer aankomen, maar er kunnen dubbele berichten zijn. Ik zei “het systeem is overbelast”, het IT-team lachte me uit “we halen nog geen 10\% op onze 3 nodes x 48 cores, 1 TB ram-cluster, je bent dom” … Ik bleef op mijn positie en vroeg om toegang op de service om het probleem te vinden. Omdat ze mijn eerdere acties kenden en bang waren dat ik een fout aan het licht zou brengen, hebben ze alles opnieuw gecontroleerd. Het bleek dat in het configuratiebestand van 10 regels van Kafka het geschreven was “number\_of\_thread = 4”. Ja, ze hebben een service uitgevoerd op een cluster van $ 150.000 en gebruiken slechts 4 cores op elk knooppunt, daarom krijgen ze nooit meer dan 10\% CPU-gebruik. Geen van de 20 betrokkenen heeft dat gezien. Zo werkte het drie jaar lang, zelfs een laptop van $ 1000 zou het werk hebben gedaan. Ze doen hetzelfde voor alle applicaties die ik in dit bedrijf heb gezien. Toch hebben ze meer dan 150.000 werknemers en beheren ze 3 enorme datacenters. Veel bedrijven doen hetzelfde, ik kan u veel van dit soort verhalen vertellen …

Antwoord

Als uw computer 1 TB had van RAM, wat zou je ermee doen?

Bedankt voor de A2A. Eerlijk gezegd … verkoop het.

Serieus, het geld dat ik zou krijgen van 1 TB RAM is het verlies van zoveel vluchtig geheugen meer dan waard.

Hier is het ding. Als er iets misgaat met uw computer, is het op geen enkele manier dat u 1 TB RAM in een permanente opslag kunt dumpen in de tijd die het duurt voordat een systeem instort.

RAM is een soort “Goudlokje” -technologie.Alles wat zo groot is en zoveel RAM vereist, zou nooit op tijd kunnen worden opgeslagen. Zelfs razendsnelle Persistent Memory (PM) -technologieën zoals Z-NAND of 3DXPoint kunnen de enorme datastroom die nodig is eenvoudigweg niet bijhouden.

[Bewerken – bijna een jaar later]

Oké, dus dit antwoord heeft enkele opmerkingen gekregen en het lijkt erop dat er wat extra verduidelijking nodig is. Ik ga een aantal van mijn reacties op de opmerkingen bij elkaar brengen om dit vloeiender te maken.

Computers zijn ontworpen om op te slaan gegevens, niet verliezen. RAM is vluchtig en brengt die gegevens dus in gevaar.

Sommige gegevens zijn “hulp” gegevens. Stel dat processen die in uw systeem worden uitgevoerd een zeer korte levensduur hebben (zoals de processen die de metadata op uw bestandssysteem bijwerken). Ze leven in RAM omdat hun nut van zeer korte duur is. Ze hebben ook geen partij RAM nodig.

Een ander voorbeeld van “hulp” -gegevens is het soort gegevens dat wordt gebruikt om hoogwaardige audio en video, fotografiewerk, laad kaarten en texturen in videogames, enz. Die gegevens gebruiken veel RAM (niet zoveel als 1 TB, maar het is nog steeds meer dan uw gemiddelde Microsoft Word-document), maar het verliezen van die gegevens is niet zo riskant.

(U speelt ooit een videogame en ziet de melding dat u uw computer niet moet uitschakelen wanneer u zie je het symbool game opslaan? Ja, dat is wanneer je computer je gegevens van RAM naar schijf schrijft. Gegevens schrijven van RAM naar schijf is ook een van de meest risicovolle onderdelen van het verplaatsen van gegevens. Zo raken opgeslagen bestanden het vaakst beschadigd .)

Het hebben van 1 TB RAM – voor de kosten die ermee gemoeid zijn toen ik dit antwoord schreef – is slechts nuttig voor een zeer beperkt aantal workloads. Over het algemeen zijn deze workloads serieuze getallencrashtaken waarvoor anders enorme hoeveelheden I / O nodig zouden zijn.

In-Memory computationele workloads doen vereisen enorme hoeveelheden RAM. 1 TB is eigenlijk niet genoeg. Ze houden volledige databases in RAM om razendsnelle berekeningen uit te voeren. Dit soort gegevens zijn echter geen hulp-gegevens, en het zijn ook geen gegevens die gemakkelijk kunnen worden gereconstrueerd of opnieuw kunnen worden geladen (zoals u zou doen door simpelweg uw videoproject te renderen).

De meeste mensen – waaronder ikzelf – draaien geen databases in het geheugen en hoeven geen volledige gegevenssets in het geheugen te bewaren voor verwerking.

Dus als je een applicatie hebt dat vaak gegevens opslaat (I / O-overdracht naar schijf), dan heb je geen grote RAM-grootte nodig. Stel dat Microsoft Word in dit voorbeeld uw gegevens regelmatig op schijf zal opslaan, zodat de foutmarge klein is (als het RAM-geheugen mislukt tussen het opslaan, is de hoeveelheid gegevens / werk die is gedaan sinds de laatste I / O-overdracht verloren gaat, en dat is tot een minimum beperkt). Dat verandert niet naarmate je meer RAM hebt.

De meeste applicaties en workloads zeggen niet tegen het besturingssysteem: “Geef me al het RAM-geheugen dat je hebt.” Je hebt dus een groot aantal applicaties die werkbelastingen creëren met 1 TB RAM. Natuurlijk, het is snel en het zou leuk zijn om dat te kunnen doen, maar is het die kosten waard? Naar mij? Nee.

Voor de meeste gegevens waaraan de gemiddelde consument werkt, is niet zon grote capaciteit nodig om in vluchtig geheugen te worden bewaard.

Nu, met 1 TB RAM, hebben sommige mensen voorgestelde RAM-schijven. Helaas is dat precies de use case waarnaar ik verwijs dat 1 TB RAM de minste geschikt in praktische termen.

In het geval dat u niet bekend bent met wat een RAM-schijf is, is dit een speciale toepassing waarbij het besturingssysteem een ​​specifieke hoeveelheid geheugen behandelt als een zeer, zeer snelle harde schijf. schijf. Het probleem is dat alles dat op die RAM-schijf is opgeslagen – je raadt het al – vluchtig is. Het gebruik van een RAM-schijf als hoofdwerkruimte voor uw computer is vaak te verleidelijk voor veel mensen, en ze zijn geschokt als ze ontdekken dat een veel gegevens die ze veilig achtten en veilig was dat nooit.

Iedereen die RAM-schijven gebruikt voor bedrijfskritische gegevensopslag, vraagt ​​om problemen. Elke keer dat u aan een RAM-schijf werkt en het bestand “opslaat”, wordt het niet permanent opgeslagen . U moet nog steeds al die gegevens terugschrijven naar een permanent hoofdopslagapparaat. Uitgaande van 1 TB aan gegevens, is dat veel langer dan mensen zich realiseren.

(Opmerking: RAM-schijven kunnen worden geautomatiseerd om op een permanent opslagapparaat op te slaan, net als uw Microsoft Word-document, maar 1 TB duurt nog steeds erg , zeer lange tijd om naar schijf te gaan in geval van nood.)

VMs zijn hier handig voor een speciale vermelding, en ik ben Thomas Zoltan dankbaar dat hij erover begon. Virtuele machines doen het heel goed met veel RAM, en het host-besturingssysteem moet dit kunnen leveren – vooral als je van plan bent om meerdere VMs op dezelfde machine te hosten.

(NB: ik begreep oorspronkelijk het oorspronkelijke punt van Thomas verkeerd, was dat de VMs het RAM zouden gebruiken en niet zouden worden opgeslagen op een RAM-schijf . Hij besprak beide use-cases en ik had ze allebei samengevoegd. Ik denk dat ik nu echter begrijp wat hij probeerde te zeggen.)

Natuurlijk gebruik ik dergelijke VMs in mijn testlaboratorium allemaal de tijd. Mijn testmachines hebben 128 GB RAM om de snelle spin-up en spin-down van VMs aan te kunnen, en TBH ze zouden zeker wat meer ademruimte kunnen gebruiken, vooral omdat de software van VMware niet zo slank en gemeen is als vroeger be.

De meeste mensen (inclusief ikzelf) gebruiken echter geen VSAN- of vSphere-omgevingen in hun huis. Ik heb het in mijn huis lab , maar er is niets op die machines dat zelfs maar in de verte als bedrijfskritisch kan worden beschouwd.

En uiteindelijk, ik denk dat dat is waar de misvatting schuilt in enkele van de opmerkingen bij dit antwoord. Sommige mensen begonnen te denken dat ik zei dat er geen use-case was voor zoveel geheugen helemaal . Ik vind dit een raadsel, want wat ik zei was:

[H] e geld dat ik zou krijgen van 1 TB RAM is het verlies van meer dan waard met zoveel vluchtig geheugen.

En dit is waar. Met echte, toegankelijke 1 TB RAM ( geen van mijn computers kan zelfs zoveel RAM gebruiken! Net als in, hebben ze niet de mogelijkheid om gebruik het) is een erg duur voorstel, en het geld dat ik ervoor zou krijgen is meer waard dan het nu te hebben .

Over 4 of 5 jaar? Nou, wie weet. We zullen waarschijnlijk terugkijken op dit antwoord (zoals we doen met alle computergerelateerde antwoorden die te maken hebben met snelheden en feeds) en denken: “Hoe vreemd! Weet je nog dat 1 TB onbetaalbaar was? ” 🙂

Trouwens …

De reden waarom het concept de discussie aanging, is dat ik een klant had die een grote hoeveelheid in-memory processing deed (in feite 1TB) , die alle opgeslagen berekeningen in 8 seconden op schijf moest kunnen zetten. Het probleem was (en is nog steeds) dat terwijl de werklast de resultaten met een fenomenale snelheid berekende, er geen manier was om de gegevens permanent op te slaan in de tijd dat het systeem zou worden uitgeschakeld als gevolg van een noodgeval (brandalarm, failover, systeemdrempelwaarschuwingen, enz.).

Dus, de vraag wordt: hoeveel RAM is het “waard?” Wat is de waarde van een “klein” beetje sneller per $ / £ / E? Nou, dat is aan elke persoon om te beslissen. Voor mij is die grens nog niet overschreden.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *