Virtualizarea memoriei - Memory virtualization
În informatică , virtualizarea memoriei decuplează resursele de memorie cu acces aleator volatil (RAM) de la sistemele individuale din centrul de date și apoi agregă resursele respective într-un pool de memorie virtualizată disponibil oricărui computer din cluster. Pool-ul de memorie este accesat de sistemul de operare sau de aplicațiile care rulează deasupra sistemului de operare. Rezerva de memorie distribuită poate fi apoi utilizată ca o memorie cache de mare viteză, un strat de mesagerie sau o resursă mare de memorie partajată pentru un procesor sau o aplicație GPU.
Descriere
Virtualizarea memoriei permite serverelor din rețea și, prin urmare, distribuite, să partajeze un grup de memorie pentru a depăși limitările fizice ale memoriei, un blocaj obișnuit în performanța software-ului. Cu această capacitate integrată în rețea, aplicațiile pot profita de o cantitate foarte mare de memorie pentru a îmbunătăți performanța generală, utilizarea sistemului, crește eficiența utilizării memoriei și permite noi cazuri de utilizare. Software-ul de pe nodurile pool-ului de memorie (servere) permite nodurilor să se conecteze la pool-ul de memorie pentru a contribui la memorie și pentru a stoca și prelua date. Software-ul de gestionare și tehnologiile de supraangajare a memoriei gestionează memoria partajată, inserarea datelor, politicile de evacuare și aprovizionare, alocarea datelor către nodurile care contribuie și gestionează solicitările de la nodurile clientului. Pool-ul de memorie poate fi accesat la nivelul aplicației sau la nivelul sistemului de operare. La nivel de aplicație, pool-ul este accesat printr-un API sau ca sistem de fișiere în rețea pentru a crea o memorie cache de memorie partajată de mare viteză. La nivelul sistemului de operare, un cache de pagină poate utiliza pool-ul ca o resursă de memorie foarte mare, care este mult mai rapidă decât stocarea locală sau în rețea.
Implementările de virtualizare a memoriei se disting de sistemele de memorie partajate . Sistemele de memorie partajată nu permit extragerea resurselor de memorie, necesitând astfel implementarea cu o singură instanță a sistemului de operare (adică nu într-un mediu de aplicație clusterizat).
Virtualizarea memoriei este, de asemenea, diferită de stocarea bazată pe memoria flash, cum ar fi unitățile SSD (SSD) - SSD-urile și alte tehnologii similare înlocuiesc unitățile hard disk (în rețea sau altele), în timp ce virtualizarea memoriei înlocuiește sau completează memoria RAM tradițională.
Beneficii
Eliminați limitele de memorie fizică
Rulați mai multe aplicații simultan, ADĂUGAȚI Ceva aici noobs
Produse
- Rețele RNA Platformă de virtualizare a memoriei - Un pool de memorie cu latență redusă, implementat ca cache partajată și o soluție de mesagerie cu latență redusă .
- ScaleMP - O platformă pentru a combina resurse de la mai multe computere în scopul creării unei singure instanțe de calcul.
- Wombat Data Fabric - O structură de mesagerie bazată pe memorie pentru livrarea datelor de piață în serviciile financiare.
- Oracle Coherence este un produs de grilă de date în memorie bazat pe Java de la Oracle
- AppFabric Caching Service este o platformă de cache distribuită pentru cache -urile din memorie răspândite pe mai multe sisteme, dezvoltată de Microsoft .
- IBM Websphere extremeScale este o memorie cache distribuită bazată pe Java, la fel ca Oracle Coherence
- GigaSpaces XAP este o platformă software de calcul în memorie bazată pe Java, cum ar fi Oracle Coherence și VMware Gemfire
Implementări
Integrare la nivel de aplicație
În acest caz, aplicațiile care rulează pe computere conectate se conectează la pool-ul de memorie direct printr-un API sau sistemul de fișiere.
Integrare la nivel de sistem de operare
În acest caz, sistemul de operare se conectează la pool-ul de memorie și pune memoria pooled la dispoziția aplicațiilor.
fundal
Tehnologia de virtualizare a memoriei rezultă din arhitecturile de gestionare a memoriei și din tehnicile de memorie virtuală . În ambele domenii, calea inovației a trecut de la relații strâns cuplate între resurse logice și fizice la relații mai flexibile, abstracte, în care resursele fizice sunt alocate după cum este necesar.
Sistemele de memorie virtuală se abstractizează între RAM fizică și adrese virtuale, atribuind adrese de memorie virtuală atât RAM-ului fizic, cât și stocării pe disc, extinzând memoria adresabilă, dar cu prețul vitezei. Arhitecturile NUMA și SMP optimizează alocarea memoriei în cadrul sistemelor multiprocesor. În timp ce aceste tehnologii gestionează dinamic memoria în cadrul computerelor individuale, virtualizarea memoriei gestionează memoria agregată a mai multor computere din rețea ca un singur pool de memorie.
În paralel cu inovațiile de gestionare a memoriei , au apărut o serie de tehnici de virtualizare pentru a utiliza cât mai bine resursele hardware disponibile. Virtualizarea aplicației a fost demonstrată mai întâi în sistemele mainframe. Următorul val a fost virtualizarea stocării , ca servere conectate la sisteme de stocare, cum ar fi NAS sau SAN, pe lângă sau în locul unităților de hard disk de la bord. Virtualizarea serverului sau Virtualizarea completă partiționează un singur server fizic în mai multe mașini virtuale , consolidând mai multe instanțe ale sistemelor de operare pe aceeași mașină în scopul eficienței și flexibilității. Atât în stocarea cât și în virtualizarea serverului, aplicațiile nu știu că resursele pe care le folosesc sunt mai degrabă virtuale decât fizice, astfel încât eficiența și flexibilitatea sunt obținute fără modificări ale aplicației. În același mod, virtualizarea memoriei alocă memoria unui întreg cluster de servere în rețea între computerele din acel cluster.
Vezi si
- Memorie virtuală - Virtualizarea tradițională a memoriei pe un singur computer, de obicei folosind buffer-ul de traducere (TLB) pentru a traduce între adrese de memorie virtuală și fizică
- Baza de date în memorie - Oferă performanțe mai rapide și mai previzibile decât bazele de date bazate pe disc
- Virtualizare I / O - Creează rețele virtuale și puncte finale de stocare care permit rețelei și datelor de stocare să călătorească pe aceleași țesături (XSigo I / O Director)
- Virtualizare stocare - Rezumă stocarea logică din stocarea fizică (NAS, SAN, sisteme de fișiere (NFS, cluster FS), gestionarea volumului, RAID)
- Disc RAM - Dispozitiv de stocare virtual într-un singur computer, limitat la capacitatea RAM locală.
- InfiniBand
- 10 Gigabit Ethernet
- Memorie partajată distribuită
- Acces direct la memorie la distanță (RDMA)
- Localitatea de referință
- Imagine cu un singur sistem
- Memorie cache distribuită
Referințe
- Oleg Goldshmidt, Virtualizare: sisteme de operare avansate
- "Rețelele RNA de pornire virtualizează memoria pe mai multe servere" . InformationWeek . 13 februarie 2009 . Adus la 24 martie 2009 .
- „Cinci tendințe de virtualizare de urmărit” . ComputerWorld . 3 februarie 2009. Arhivat din original la 16 martie 2009 . Adus la 24 martie 2009 .
- „Rețelele ARN și virtualizarea memoriei” . ZDNet . 2 februarie 2009 . Adus la 24 martie 2009 .
- Kusnetzky, Dan (28 ianuarie 2007). "Sortarea diferitelor straturi de virtualizare" . ZDNet . Adus la 24 martie 2009 .
