Ce aș putea face cu 1 TB de RAM?

Cel mai bun răspuns

Primul lucru de știut este că computerele cu atât de mult RAM sunt mai lente decât crezi. Gestionarea faptului că multe bănci RAM necesită tehnologie care face accesul RAM mai lent (NUMA, ECC, adresarea cealaltă parte a stick necesită o acțiune de oprire …). Gândiți-vă la ele ca la un camion mare, în timp ce laptopul dvs. este o mașină (poate o F1). Dacă aveți nevoie de niște alimente, mașina va fi alegerea dvs.

Al doilea lucru este că aceste computere sunt foarte scumpe. Nu numai din cauza stick-urilor RAM, ci totul trebuie să se ridice. Placă de bază pentru server, multe procesoare XEON, ramuri imense de ram … toate acestea așa-numitele hardware „profesionale” au venit cu „taxa de server” dublu față de prețul pentru fiecare creștere de performanță de 10\%. Puteți obține mult mai multă putere a computerului cumpărând mai multe hardware de mărime rezonabilă.

De asemenea, de cele mai multe ori un computer trebuie să fie echilibrat. Dacă aveți atât de multă memorie RAM, aveți nevoie de o mulțime de nuclee pentru a lucra cu ea și o gamă foarte rapidă de SSD pentru a încărca și salva date. Unele utilizări nu sunt echilibrate și necesită mai mult de o singură resursă.

Pentru un utilizator obișnuit de acasă nu se folosește atât de mult RAM.

Deci, la ce folosește astfel de fiare? Acestea sunt utile atunci când trebuie să lucrați la o mulțime de date simultan. Chiar dacă memoria RAM este mai lentă decât memoria RAM a unui computer obișnuit, este totuși mai rapidă decât cea mai rapidă SSD.

Deci, utilizările obișnuite includ:

  • mare în baza de date relațională de memorie
  • magazin mare valoare-cheie (fără sql)
  • bază de date cu grafice mari
  • unele lucrări științifice: studiu ADN, simulare
  • configurație PLM imensă servere din industria auto și spațiul aerian
  • care rulează VM (aceasta este o utilizare stupidă, dar totuși una dintre cele mai întâlnite)

Chiar și în lumea profesională, echipe IT bune au tendința de a răspândi sarcinile pe mai multe computere folosind algoritmi precum reducerea hărții, redarea fermelor pentru redarea 3D … Dacă este posibil, este mult mai eficient, mai flexibil și mai ușor de gestionat eșecurile. Puteți întoarce computerele sau puteți adăuga altele pentru a le scala cu încărcarea.

De asemenea, majoritatea acestor computere sunt cumpărate de sistemul de administrare din unul dintre aceste motive stupide:

  • Nu vor să-și asume nicio responsabilitate, așa că cumpără cel mai mare computer disponibil și, dacă software-ul eșuează, ar putea spune că nu este vina lor pentru că au făcut maximul.
  • Sunt geek și vor mai mari jucării decât prietenii lor. Dacă munca dvs. vă plătește orice mașină doriți, ați primi un Prius sau un Bugatti?
  • Procesul de cumpărare este foarte lent în compania lor și implică o mulțime de acțiuni care costă chiar mai mult în resurse umane decât hardware-ul în sine. Până când primesc serverul, acesta a devenit hardware de comorbiditate (exagerare în acest sens).
  • Dacă șeful tău știe că IT rulează pe 500 de dolari de pe rafturile computerelor, te privesc ca un instalator, este mai greu să justifică-ți salariul decât dacă gestionezi infrastructura în valoare de milioane de euro și arăți ca un administrator de centrală nucleară.

Da, toate acestea sunt stupide, dar foarte frecvente. Este treaba mea zilnică să reorganizez infrastructurile și să optimizez costurile.

O mică poveste de finalizat: după 3 ani de serviciu, a apărut o problemă la un serviciu de mesagerie (Kafka). Unele mesaje au fost stocate de mai multe ori și face ca următorul software din lanț să eșueze (ar trebui să se ocupe de asta). După investigație, am constatat în documentație că a fost un comportament normal al sistemului de mesagerie sub sarcină. Garantează mesajele să sosească cel puțin o dată, dar pot exista mesaje duble. Am spus „sistemul este supraîncărcat” echipa IT a râs de mine „nici măcar nu ajungem la 10\% pe cele 3 noduri x 48 nuclee, 1 RAM ram cluster, ești prost” … Am păstrat poziția mea și am cerut un acces pe serviciu pentru a găsi problema. Știind acțiunile mele anterioare și temându-mă că expun o greșeală, au verificat din nou totul. Se pare că în fișierul de configurare de 10 rânduri al lui Kafka era scris „number\_of\_thread = 4”. Da, au rulat un serviciu pe un cluster de 150.000 USD și utilizează doar 4 nuclee pe fiecare nod, de aceea nu are niciodată peste 10\% utilizare a procesorului. Niciuna dintre cele 20 de persoane implicate nu a văzut asta. A funcționat așa timp de 3 ani, chiar și un laptop de 1000 $ ar fi făcut treaba. Ei fac același tip de lucruri în toate aplicațiile pe care le-am văzut în această companie. Cu toate acestea, au peste 150.000 de angajați și conduc 3 centre de date imense. Multe companii fac același lucru, vă pot spune o mulțime de povești de acest gen …

Răspundeți

Dacă computerul dvs. avea 1 TB de memorie RAM, ce ați face cu ea?

Vă mulțumim pentru A2A. Sincer … vindeți-l.

Serios, banii pe care i-aș obține de la 1 TB de RAM merită mai mult decât pierderea de a avea atât de multă memorie volatilă.

Iată chestia. Dacă ceva nu merge bine cu computerul dvs., nu există nici o modalitate de a putea arunca 1 TB de RAM pe stocarea permanentă în timpul necesar unui sistem pentru a se prăbuși.

RAM este o tehnologie „Goldilocks”.Orice lucru atât de mare care necesită atât de multă memorie RAM nu ar putea fi salvat niciodată în timp. Chiar și tehnologiile de memorie persistentă (PM), ca Z-NAND sau 3DXPoint, pur și simplu nu pot ține pasul cu viteza masivă de date necesară.

[Editați – aproape un an mai târziu]

Bine, deci acest răspuns a primit câteva comentarii și se pare că trebuie să existe câteva clarificări suplimentare. Voi colecta câteva dintre răspunsurile mele la comentarii pentru a face acest lucru mai fluid.

Computerele sunt concepute pentru a salva date, nu le pierdeți. RAM-ul este volatil și, prin urmare, pune aceste date într-un mare risc.

Unele date sunt date „de ajutor”. Spuneți, de exemplu, procesele care rulează în sistemul dvs. care au o durată de valabilitate foarte scurtă (cum ar fi procesele care actualizează metadatele din sistemul dvs. de fișiere). Locuiesc în memorie RAM, deoarece utilitatea lor este extrem de scurtă. De asemenea, nu necesită un lot de memorie RAM.

Un alt exemplu de date „helper” este tipul de date utilizate pentru redarea audio și video de înaltă calitate, faceți fotografii, încărcați hărți și texturi în jocuri video etc. Aceste date utilizează o mulțime de memorie RAM (nu la fel de mult ca 1 TB, dar totuși este mai mult decât documentul dvs. mediu Microsoft Word), dar pierderea acestor date nu este la fel de riscantă.

(Jucați vreodată un joc video și vedeți notificarea de a nu opri aparatul când vedeți simbolul „Salvați jocul”? Da, atunci aparatul dvs. vă scrie datele de pe RAM pe disc. Scrierea datelor de pe RAM pe disc este, de asemenea, una dintre cele mai riscante părți ale mișcării datelor. Este modul în care fișierele salvate se corup cel mai des .)

A avea 1 TB de memorie RAM – pentru costul pe care l-am scris în timp ce am scris acest răspuns – este util doar pentru câteva sarcini de lucru foarte selecte. În general vorbind, aceste sarcini de lucru sunt sarcini serioase de reducere a numărului, care altfel ar necesita cantități uriașe de I / O.

Încărcări de lucru în memorie span> necesită cantități masive de RAM. 1 TB nu este suficient, de fapt. Ei dețin baze de date întregi în memorie RAM pentru a face calcule rapide. Totuși, acest tip de date nu sunt date „de ajutor” și nici date care pot fi ușor reconstituite sau reîncărcate (așa cum ați face cu simpla redare a proiectului dvs. video).

Majoritatea persoanelor – inclusiv eu – nu rulează baze de date în memorie sau trebuie să păstreze seturi întregi de date în memorie pentru procesare.

Deci, dacă aveți o aplicație care salvează date des (transfer I / O pe disc), atunci nu aveți nevoie de o dimensiune RAM mare. Spuneți, Microsoft Word în acest exemplu, vă va salva datele înapoi pe disc în mod regulat, astfel încât marja de eroare să fie mică (dacă memoria RAM eșuează între salvări, cantitatea de date / muncă efectuată de la ultimul transfer I / O este pierdut și este redus la minimum). Acest lucru nu se va schimba cu cât aveți mai multă memorie RAM.

Majoritatea aplicațiilor și încărcărilor de lucru nu spun sistemului de operare „Dă-mi toată memoria RAM pe care o ai”. Deci, ceea ce aveți este un număr mare de aplicații care creează sarcini de lucru cu 1 TB RAM. Sigur, este rapid și ar fi frumos să poți face asta, dar merită acest cost? Mie? Nu.

Majoritatea datelor la care lucrează consumatorul mediu nu necesită o capacitate atât de mare de a fi păstrată în memoria volatilă.

Acum, cu 1 TB RAM, unii oameni au Discuri RAM sugerate. Din păcate, acesta este precis cazul de utilizare la care mă refer că RAM de 1 TB este cel mai puțin potrivit în termeni practici.

În cazul în care nu sunteți familiarizați cu ce este un disc RAM, este un caz de utilizare special în care sistemul de operare tratează o anumită cantitate de memorie ca un hard foarte, foarte rapid disc. Problema este că tot care este stocat pe acel disc RAM este – ați ghicit – volatil. Folosirea unui disc RAM ca spațiu de lucru principal pentru computerul dvs. este adesea prea tentantă pentru mulți oameni și sunt șocați să constate că există o mulțime de date de date pe care le-au considerat sigure. și sigur nu a fost niciodată.

Oricine folosește discuri RAM pentru stocarea de date critică a misiunii cere probleme. De fiecare dată când lucrați pe un disc RAM și „salvați” fișierul, nu se salvează definitiv . Trebuie să scrieți toate aceste date înapoi pe un dispozitiv principal de stocare permanentă. Presupunând 1 TB de date, acest lucru este mult mai lung decât își dau seama oamenii.

(Notă: discurile RAM pot fi automatizate pentru a fi salvate pe un dispozitiv de stocare permanent, la fel ca documentul dvs. Microsoft Word, dar 1 TB încă necesită o , foarte mult timp pentru a vă muta pe disc în caz de urgență.)

VM-urile sunt utile pentru o mențiune specială, aici, și îi sunt recunoscător lui Thomas Zoltan că a adus-o în discuție. Mașinile virtuale funcționează foarte, foarte bine cu o mulțime de memorie RAM, iar sistemul de operare gazdă trebuie să îl poată furniza – mai ales dacă intenționați să găzduiți mai multe VM pe aceeași mașină.

(NB: inițial am înțeles greșit punctul inițial al lui Thomas, a fost că VM-urile ar utiliza memoria RAM, nu vor fi stocate pe un disc RAM . Discuta ambele cazuri de utilizare și le-am confundat pe cele două. Cred că acum înțeleg ce a încercat să spună.)

Desigur, folosesc astfel de mașini virtuale în laboratorul meu de testare timpul. Mașinile de testare au 128 GB RAM pentru a putea face față spin-up-ului și spin-down-ului rapid al VM-urilor, iar TBH ar putea folosi cu siguranță un spațiu mai mic de respirație, mai ales că software-ul VMware nu este la fel de slab și rău ca înainte. be.

Majoritatea oamenilor, deși (inclusiv eu), nu folosesc medii VSAN sau vSphere în casa lor. Îl am acasă lab , dar nu există nimic pe acele mașini care ar putea fi considerate chiar de la distanță misiune critică.

Și în cele din urmă, eu credeți că aici se află concepția greșită în unele dintre comentariile la acest răspuns. Câțiva oameni au crezut că spun că nu există un caz de utilizare pentru atâta memorie deloc . Mi se pare nedumeritor, deoarece ceea ce am spus a fost:

[T] banii pe care i-aș obține de la 1 TB de RAM sunt mai mult decât merită pierderea având atât de multă memorie volatilă.

Și acest lucru este adevărat. Având o memorie RAM de 1 TB adevărată și accesibilă ( niciunul din computerele mele nu poate folosi chiar atât de multă memorie RAM! Ca și în cazul în care nu au capacitatea de a use it) este o propunere foarte scumpă, iar banii pe care i-aș obține pentru aceasta merită mai mult decât să-l ai acum .

Peste 4 sau 5 ani? Ei bine, cine știe. Probabil ne vom uita înapoi la acest răspuns (la fel ca la toate răspunsurile legate de computer care se ocupă de viteze și fluxuri) și ne vom gândi: „Ce ciudat! Vă amintiți când 1 TB a fost inaccesibil ? ” 🙂

Apropo …

Motivul pentru care conceptul a intrat în discuție este că am avut un client care a făcut o cantitate mare de procesare în memorie (de fapt, 1 TB) , care trebuia să poată lăsa toate calculele stocate pe disc în 8 secunde. Problema a fost (și încă este) că, în timp ce volumul de lucru calcula rezultatele la o rată fenomenală, nu a existat nicio modalitate de a salva datele în stocarea permanentă în timpul în care sistemul se va opri din cauza unei situații de urgență (alarmă de incendiu, reluare, avertismente privind pragul sistemului etc.).

Deci, se pune întrebarea, cât de mult RAM „merită?” Care este valoarea unui „puțin” mai rapid pe $ / £ / E? Ei bine, asta trebuie să decidă fiecare persoană. Pentru mine, acea linie de valoare nu a fost încă depășită.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *